@canlooks/can-ui 0.0.44 → 0.0.46

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 (114) hide show
  1. package/dist/cjs/components/button/button.js +2 -2
  2. package/dist/cjs/components/button/button.style.js +2 -0
  3. package/dist/cjs/components/calendar/calendar.d.ts +32 -0
  4. package/dist/cjs/components/calendar/calendar.js +51 -0
  5. package/dist/cjs/components/calendar/calendar.style.d.ts +15 -0
  6. package/dist/cjs/components/{dateTimePicker → calendar}/calendar.style.js +131 -91
  7. package/dist/cjs/components/calendar/index.d.ts +1 -0
  8. package/dist/cjs/components/calendar/index.js +4 -0
  9. package/dist/cjs/components/calendar/panelDates.d.ts +2 -0
  10. package/dist/cjs/components/{dateTimePicker/calendarDates.js → calendar/panelDates.js} +11 -19
  11. package/dist/cjs/components/calendar/panelMonth.d.ts +2 -0
  12. package/dist/cjs/components/calendar/panelMonth.js +29 -0
  13. package/dist/cjs/components/calendar/panelYear.d.ts +2 -0
  14. package/dist/cjs/components/calendar/panelYear.js +36 -0
  15. package/dist/cjs/components/card/card.style.js +2 -2
  16. package/dist/cjs/components/checkboxBase/checkboxBase.js +2 -2
  17. package/dist/cjs/components/colorPicker/colorPicker.js +2 -2
  18. package/dist/cjs/components/colorPicker/colorPicker.style.js +1 -1
  19. package/dist/cjs/components/dateTimePicker/dateTimePicker.d.ts +1 -1
  20. package/dist/cjs/components/dateTimePicker/dateTimePicker.js +10 -13
  21. package/dist/cjs/components/dateTimePicker/dateTimePicker.style.d.ts +4 -4
  22. package/dist/cjs/components/dateTimePicker/dateTimePicker.style.js +1 -1
  23. package/dist/cjs/components/dateTimePicker/index.d.ts +1 -1
  24. package/dist/cjs/components/dateTimePicker/index.js +1 -1
  25. package/dist/cjs/components/dateTimeRangePicker/dateTimeRangePicker.d.ts +1 -0
  26. package/dist/cjs/components/form/form.d.ts +1 -1
  27. package/dist/cjs/components/icon/icon.d.ts +6 -0
  28. package/dist/cjs/components/icon/icon.js +9 -0
  29. package/dist/cjs/components/icon/index.d.ts +1 -0
  30. package/dist/cjs/components/icon/index.js +4 -0
  31. package/dist/cjs/components/pinchable/pinchable.style.js +1 -1
  32. package/dist/cjs/components/placeholder/placeholder.js +3 -3
  33. package/dist/cjs/components/popper/popper.js +1 -1
  34. package/dist/cjs/components/segmented/segmented.d.ts +3 -1
  35. package/dist/cjs/components/segmented/segmented.js +2 -2
  36. package/dist/cjs/components/segmented/segmented.style.d.ts +4 -1
  37. package/dist/cjs/components/segmented/segmented.style.js +94 -90
  38. package/dist/cjs/components/slider/slider.d.ts +0 -1
  39. package/dist/cjs/components/tooltip/tooltip.style.js +1 -0
  40. package/dist/cjs/components/waterfall/waterfall.style.js +1 -1
  41. package/dist/cjs/components/waterfall/waterfallItem.js +1 -1
  42. package/dist/cjs/extensions/documentViewer/documentViewer.js +1 -1
  43. package/dist/cjs/index.d.ts +2 -1
  44. package/dist/cjs/index.js +2 -3
  45. package/dist/cjs/types.d.ts +1 -1
  46. package/dist/cjs/utils/style.d.ts +2 -2
  47. package/dist/cjs/utils/style.js +8 -4
  48. package/dist/esm/components/button/button.js +3 -3
  49. package/dist/esm/components/button/button.style.js +2 -0
  50. package/dist/esm/components/calendar/calendar.d.ts +32 -0
  51. package/dist/esm/components/calendar/calendar.js +46 -0
  52. package/dist/esm/components/calendar/calendar.style.d.ts +15 -0
  53. package/dist/esm/components/{dateTimePicker → calendar}/calendar.style.js +131 -91
  54. package/dist/esm/components/calendar/index.d.ts +1 -0
  55. package/dist/esm/components/calendar/index.js +1 -0
  56. package/dist/esm/components/calendar/panelDates.d.ts +2 -0
  57. package/dist/esm/components/{dateTimePicker/calendarDates.js → calendar/panelDates.js} +11 -19
  58. package/dist/esm/components/calendar/panelMonth.d.ts +2 -0
  59. package/dist/esm/components/calendar/panelMonth.js +26 -0
  60. package/dist/esm/components/calendar/panelYear.d.ts +2 -0
  61. package/dist/esm/components/calendar/panelYear.js +33 -0
  62. package/dist/esm/components/card/card.style.js +2 -2
  63. package/dist/esm/components/checkboxBase/checkboxBase.js +3 -3
  64. package/dist/esm/components/colorPicker/colorPicker.js +3 -3
  65. package/dist/esm/components/colorPicker/colorPicker.style.js +1 -1
  66. package/dist/esm/components/dateTimePicker/dateTimePicker.d.ts +1 -1
  67. package/dist/esm/components/dateTimePicker/dateTimePicker.js +11 -14
  68. package/dist/esm/components/dateTimePicker/dateTimePicker.style.d.ts +4 -4
  69. package/dist/esm/components/dateTimePicker/dateTimePicker.style.js +1 -1
  70. package/dist/esm/components/dateTimePicker/index.d.ts +1 -1
  71. package/dist/esm/components/dateTimePicker/index.js +1 -1
  72. package/dist/esm/components/dateTimeRangePicker/dateTimeRangePicker.d.ts +1 -0
  73. package/dist/esm/components/form/form.d.ts +1 -1
  74. package/dist/esm/components/icon/icon.d.ts +6 -0
  75. package/dist/esm/components/icon/icon.js +6 -0
  76. package/dist/esm/components/icon/index.d.ts +1 -0
  77. package/dist/esm/components/icon/index.js +1 -0
  78. package/dist/esm/components/pinchable/pinchable.style.js +2 -2
  79. package/dist/esm/components/placeholder/placeholder.js +3 -3
  80. package/dist/esm/components/popper/popper.js +1 -1
  81. package/dist/esm/components/segmented/segmented.d.ts +3 -1
  82. package/dist/esm/components/segmented/segmented.js +3 -3
  83. package/dist/esm/components/segmented/segmented.style.d.ts +4 -1
  84. package/dist/esm/components/segmented/segmented.style.js +93 -90
  85. package/dist/esm/components/slider/slider.d.ts +0 -1
  86. package/dist/esm/components/tooltip/tooltip.style.js +1 -0
  87. package/dist/esm/components/waterfall/waterfall.style.js +2 -2
  88. package/dist/esm/components/waterfall/waterfallItem.js +1 -1
  89. package/dist/esm/extensions/documentViewer/documentViewer.js +1 -1
  90. package/dist/esm/index.d.ts +2 -1
  91. package/dist/esm/index.js +2 -1
  92. package/dist/esm/types.d.ts +1 -1
  93. package/dist/esm/utils/style.d.ts +2 -2
  94. package/dist/esm/utils/style.js +7 -3
  95. package/documentation/dist/assets/{index-DD484MoK.js → index-gntHdyKP.js} +1766 -1723
  96. package/documentation/dist/components/segmented.md +14 -13
  97. package/documentation/dist/index.html +1 -1
  98. package/package.json +1 -1
  99. package/dist/cjs/components/dateTimePicker/calendar.d.ts +0 -18
  100. package/dist/cjs/components/dateTimePicker/calendar.js +0 -29
  101. package/dist/cjs/components/dateTimePicker/calendar.style.d.ts +0 -15
  102. package/dist/cjs/components/dateTimePicker/calendarDates.d.ts +0 -2
  103. package/dist/cjs/components/dateTimePicker/calendarMonths.d.ts +0 -2
  104. package/dist/cjs/components/dateTimePicker/calendarMonths.js +0 -22
  105. package/dist/cjs/components/dateTimePicker/calendarYears.d.ts +0 -2
  106. package/dist/cjs/components/dateTimePicker/calendarYears.js +0 -29
  107. package/dist/esm/components/dateTimePicker/calendar.d.ts +0 -18
  108. package/dist/esm/components/dateTimePicker/calendar.js +0 -25
  109. package/dist/esm/components/dateTimePicker/calendar.style.d.ts +0 -15
  110. package/dist/esm/components/dateTimePicker/calendarDates.d.ts +0 -2
  111. package/dist/esm/components/dateTimePicker/calendarMonths.d.ts +0 -2
  112. package/dist/esm/components/dateTimePicker/calendarMonths.js +0 -19
  113. package/dist/esm/components/dateTimePicker/calendarYears.d.ts +0 -2
  114. package/dist/esm/components/dateTimePicker/calendarYears.js +0 -26
@@ -11,7 +11,7 @@ const utils_1 = require("../../utils");
11
11
  const dateTimePicker_style_1 = require("./dateTimePicker.style");
12
12
  const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
13
13
  const customParseFormat_1 = tslib_1.__importDefault(require("dayjs/plugin/customParseFormat"));
14
- const calendar_1 = require("./calendar");
14
+ const calendar_1 = require("../calendar");
15
15
  const timer_1 = require("./timer");
16
16
  const __1 = require("../..");
17
17
  const faCalendar_1 = require("@fortawesome/free-regular-svg-icons/faCalendar");
@@ -81,11 +81,11 @@ exports.DateTimePicker = (0, react_1.memo)(({ inputProps, popperProps, min, max,
81
81
  }
82
82
  selectFn();
83
83
  };
84
- const focusHandler = (e) => {
84
+ const focusHandler = () => {
85
85
  focused.current = true;
86
86
  selectFn();
87
87
  };
88
- const blurHandler = (e) => {
88
+ const blurHandler = () => {
89
89
  resetContinue();
90
90
  focused.current = false;
91
91
  _setInnerOpen(false);
@@ -207,21 +207,18 @@ exports.DateTimePicker = (0, react_1.memo)(({ inputProps, popperProps, min, max,
207
207
  input.setSelectionRange(nextRange.start, nextRange.end);
208
208
  };
209
209
  const contextValue = (0, react_1.useMemo)(() => ({
210
- min, max, disabledDates,
211
- disabledHours, disabledMinutes, disabledSeconds
210
+ min, max, disabledHours, disabledMinutes, disabledSeconds
212
211
  }), [
213
- min, max, disabledDates,
214
- disabledHours, disabledMinutes, disabledSeconds
212
+ min, max, disabledHours, disabledMinutes, disabledSeconds
215
213
  ]);
216
214
  const showCalendar = /[YMD]/.test(format);
217
215
  const showTimer = /[Hms]/.test(format);
218
216
  const _dateVal = dateValue.current || (0, dayjs_1.default)();
219
- return ((0, jsx_runtime_1.jsx)(popper_1.Popper, { css: dateTimePicker_style_1.datePickerPopperStyle, open: innerOpen.current, placement: "bottomLeft", trigger: ['click', 'enter'], disabled: props.disabled || props.readOnly, content: (0, jsx_runtime_1.jsxs)(DateTimePickerContext, { value: contextValue, children: [showCalendar &&
220
- (0, jsx_runtime_1.jsx)(calendar_1.Calendar, { type: format.includes('D') ? 'dates'
221
- : format.includes('M') ? 'months'
222
- : format.includes('Y') ? 'years'
223
- : 'dates', defaultNull: !dateValue.current, value: _dateVal, onChange: setDateValue }), showTimer &&
224
- (0, jsx_runtime_1.jsx)(timer_1.Timer, { showHours: format.includes('H'), showMinutes: format.includes('m'), showSeconds: format.includes('s'), value: _dateVal, onChange: setDateValue })] }), ...popperProps, onOpenChange: setInnerOpen, onPointerDown: e => {
217
+ return ((0, jsx_runtime_1.jsx)(popper_1.Popper, { css: dateTimePicker_style_1.datePickerPopperStyle, open: innerOpen.current, placement: "bottomLeft", trigger: ['click', 'enter'], disabled: props.disabled || props.readOnly, content: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [showCalendar &&
218
+ (0, jsx_runtime_1.jsx)(calendar_1.Calendar, { viewLevel: format.includes('D') ? 'date'
219
+ : format.includes('M') ? 'month'
220
+ : 'year', _defaultNull: !dateValue.current, value: _dateVal, onChange: setDateValue, min: min, max: max, disabledDates: disabledDates }), showTimer &&
221
+ (0, jsx_runtime_1.jsx)(DateTimePickerContext, { value: contextValue, children: (0, jsx_runtime_1.jsx)(timer_1.Timer, { showHours: format.includes('H'), showMinutes: format.includes('m'), showSeconds: format.includes('s'), value: _dateVal, onChange: setDateValue }) })] }), ...popperProps, onOpenChange: setInnerOpen, onPointerDown: e => {
225
222
  popperProps?.onPointerDown?.(e);
226
223
  e.preventDefault();
227
224
  }, children: (0, jsx_runtime_1.jsx)(inputBase_1.InputBase, { ...props, css: dateTimePicker_style_1.style, className: (0, utils_1.clsx)(dateTimePicker_style_1.classes.root, props.className), "data-focused": innerOpen.current, value: dateValue.current, onClear: clearHandler, onSelect: selectHandler, onFocus: focusHandler, onBlur: blurHandler, onKeyDown: keydownHandler, children: ({ ref, value, onChange, ...rest }) => (0, jsx_runtime_1.jsxs)("div", { className: dateTimePicker_style_1.classes.container, children: [(0, jsx_runtime_1.jsx)("input", { ...rest, ...inputProps, ref: (0, utils_1.cloneRef)(ref, inputProps?.ref, innerInputRef), className: (0, utils_1.clsx)(dateTimePicker_style_1.classes.input, inputProps?.className) }), (0, jsx_runtime_1.jsx)("div", { className: dateTimePicker_style_1.classes.dateTimeIcon, children: showTimer && !showCalendar
@@ -2,16 +2,16 @@ export declare const classes: {
2
2
  input: string;
3
3
  container: string;
4
4
  calendar: string;
5
+ dateItem: string;
6
+ inputGroup: string;
7
+ inputUnit: string;
8
+ dateTimeIcon: string;
5
9
  calendarHead: string;
6
10
  calendarHeadSide: string;
7
11
  calendarHeadControl: string;
8
12
  calendarHeadCenter: string;
9
13
  calendarHeadButton: string;
10
14
  calendarBody: string;
11
- dateItem: string;
12
- inputGroup: string;
13
- inputUnit: string;
14
- dateTimeIcon: string;
15
15
  calendarDays: string;
16
16
  } & {
17
17
  root: string;
@@ -4,7 +4,7 @@ exports.datePickerPopperStyle = exports.style = exports.classes = void 0;
4
4
  const react_1 = require("@emotion/react");
5
5
  const utils_1 = require("../../utils");
6
6
  const input_style_1 = require("../input/input.style");
7
- const calendar_style_1 = require("./calendar.style");
7
+ const calendar_style_1 = require("../calendar/calendar.style");
8
8
  const timer_style_1 = require("./timer.style");
9
9
  const popper_style_1 = require("../popper/popper.style");
10
10
  exports.classes = (0, utils_1.defineInnerClasses)('date-time-picker', [
@@ -1,3 +1,3 @@
1
- export * from './calendar';
1
+ export * from '../calendar/calendar';
2
2
  export * from './dateTimePicker';
3
3
  export * from './timer';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./calendar"), exports);
4
+ tslib_1.__exportStar(require("../calendar/calendar"), exports);
5
5
  tslib_1.__exportStar(require("./dateTimePicker"), exports);
6
6
  tslib_1.__exportStar(require("./timer"), exports);
@@ -15,6 +15,7 @@ export interface DateTimeRangePickerProps extends DatePickerSharedProps, Omit<Di
15
15
  onOpenPickerChange?(openPicker?: 'start' | 'end' | 'closed'): void;
16
16
  autoClose?: boolean;
17
17
  separator?: ReactNode;
18
+ disabledDates?: (date: Dayjs) => any;
18
19
  variant?: 'outlined' | 'underlined' | 'plain';
19
20
  size?: Size;
20
21
  color?: ColorPropsValue;
@@ -49,7 +49,7 @@ export type FormRef<V extends FormValue = FormValue> = {
49
49
  isFieldTouched(field: FieldPath): boolean;
50
50
  };
51
51
  export declare const Form: {
52
- <V extends FormValue, C extends ElementType>(props: FormProps<V, C>): ReactElement;
52
+ <V extends FormValue, C extends ElementType = "form">(props: FormProps<V, C>): ReactElement;
53
53
  Item: typeof FormItem;
54
54
  Relatable: typeof FormRelatable;
55
55
  };
@@ -0,0 +1,6 @@
1
+ import { FontAwesomeIconProps } from '@fortawesome/react-fontawesome';
2
+ import { ColorPropsValue } from '../../types';
3
+ export interface IconProps extends Omit<FontAwesomeIconProps, 'color'> {
4
+ color?: ColorPropsValue;
5
+ }
6
+ export declare function Icon({ color, ...props }: IconProps): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Icon = Icon;
4
+ const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
5
+ const react_fontawesome_1 = require("@fortawesome/react-fontawesome");
6
+ const utils_1 = require("../../utils");
7
+ function Icon({ color, ...props }) {
8
+ return (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { ...props, color: (0, utils_1.useColor)(color) });
9
+ }
@@ -0,0 +1 @@
1
+ export * from './icon';
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./icon"), exports);
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.style = exports.classes = void 0;
4
4
  const utils_1 = require("../../utils");
5
5
  const react_1 = require("@emotion/react");
6
- exports.classes = (0, utils_1.defineClasses)('pinchable', [
6
+ exports.classes = (0, utils_1.defineInnerClasses)('pinchable', [
7
7
  'content'
8
8
  ]);
9
9
  exports.style = (0, utils_1.defineCss)(({ easing }) => (0, react_1.css) `
@@ -15,15 +15,15 @@ exports.imagePreset = {
15
15
  info: 'data:image/png;base64,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',
16
16
  searching: 'data:image/png;base64,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'
17
17
  };
18
- exports.Placeholder = (0, react_1.memo)(({ slots = {}, slotProps = {}, status = 'empty', image, title = status === 'warning' ? '警告'
18
+ exports.Placeholder = (0, react_1.memo)(({ slots, slotProps, status = 'empty', image, title = status === 'warning' ? '警告'
19
19
  : status === 'error' ? '出错啦'
20
20
  : status === 'success' ? '成功'
21
21
  : void 0, description = status === 'empty' ? '暂无数据'
22
22
  : status === 'searching' ? '搜索中...'
23
23
  : void 0, extra, ...props }) => {
24
24
  const { mode } = (0, theme_1.useTheme)();
25
- const { title: Title = 'div', description: Description = 'div', extra: Extra = 'div' } = slots;
26
- const { title: titleProps, description: descriptionProps, extra: extraProps } = slotProps;
25
+ const { title: Title = 'div', description: Description = 'div', extra: Extra = 'div' } = slots || {};
26
+ const { title: titleProps, description: descriptionProps, extra: extraProps } = slotProps || {};
27
27
  return ((0, jsx_runtime_1.jsxs)("div", { ...props, css: placeholder_style_1.style, className: (0, utils_1.clsx)(placeholder_style_1.classes.root, props.className), children: [image ??
28
28
  (0, jsx_runtime_1.jsx)("img", { className: placeholder_style_1.classes.image, src: status === 'empty'
29
29
  ? (mode === 'light' ? exports.imagePreset.emptyLight : exports.imagePreset.emptyDark)
@@ -484,7 +484,7 @@ function Popper({ ref, popperRef, anchorElement, container = document.body, cont
484
484
  onChildrenOpenChange,
485
485
  beforeOpenCallbacks: beforeOpenCallbacks.current
486
486
  }), [innerOpen.current, autoClose]);
487
- const childRef = (0, react_1.useCallback)((0, utils_1.cloneRef)(children?.props.ref, anchorRef, ref), [children?.props.ref]);
487
+ const childRef = (0, react_1.useCallback)((0, utils_1.cloneRef)(children?.props.ref, anchorRef, ref), [children?.props.ref, ref]);
488
488
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, react_1.isValidElement)(children)
489
489
  ? (0, react_1.cloneElement)(children, { ref: childRef })
490
490
  : children, renderedOnce.current && (0, react_dom_1.createPortal)((0, jsx_runtime_1.jsx)(clickAway_1.ClickAway, { disabled: !clickable && !enterable && !contextMenuable,
@@ -1,5 +1,5 @@
1
1
  import { ReactElement } from 'react';
2
- import { DivProps, Id, Obj, Size } from '../../types';
2
+ import { ColorPropsValue, DivProps, Id, Obj, Size } from '../../types';
3
3
  import { SegmentedOption, SegmentedOptionProps } from './SegmentedOption';
4
4
  export type ISegmentedOption = SegmentedOptionProps & Obj;
5
5
  export interface SegmentedProps<O extends ISegmentedOption, V extends Id = Id> extends Omit<DivProps, 'defaultValue' | 'onChange'> {
@@ -9,6 +9,8 @@ export interface SegmentedProps<O extends ISegmentedOption, V extends Id = Id> e
9
9
  labelKey?: keyof O;
10
10
  primaryKey?: keyof O;
11
11
  fullWidth?: boolean;
12
+ /** 指示器的颜色,默认为`background.content` */
13
+ indicatorColor?: ColorPropsValue;
12
14
  defaultValue?: V;
13
15
  value?: V;
14
16
  onChange?(value: V): void;
@@ -7,7 +7,7 @@ const segmented_style_1 = require("./segmented.style");
7
7
  const utils_1 = require("../../utils");
8
8
  const SegmentedOption_1 = require("./SegmentedOption");
9
9
  const theme_1 = require("../theme");
10
- exports.Segmented = (0, react_1.memo)(({ options, orientation = 'horizontal', size, labelKey = 'label', primaryKey = 'value', fullWidth, defaultValue, value, onChange, readOnly, disabled, ...props }) => {
10
+ exports.Segmented = (0, react_1.memo)(({ options, orientation = 'horizontal', size, labelKey = 'label', primaryKey = 'value', fullWidth, indicatorColor = 'background.content', defaultValue, value, onChange, readOnly, disabled, ...props }) => {
11
11
  const theme = (0, theme_1.useTheme)();
12
12
  size ??= theme.size;
13
13
  const [animating, setAnimating] = (0, react_1.useState)(false);
@@ -77,6 +77,6 @@ exports.Segmented = (0, react_1.memo)(({ options, orientation = 'horizontal', si
77
77
  return c;
78
78
  });
79
79
  };
80
- return ((0, jsx_runtime_1.jsxs)("div", { ...props, css: segmented_style_1.style, className: (0, utils_1.clsx)(segmented_style_1.classes.root, props.className), "data-full-width": fullWidth, "data-animating": animating, "data-orientation": orientation, "data-size": size, "data-read-only": readOnly, "data-disabled": disabled, children: [(0, jsx_runtime_1.jsx)("div", { className: segmented_style_1.classes.indicator, onTransitionEnd: () => setAnimating(false), style: indicatorRect.current }), renderOptions()] }));
80
+ return ((0, jsx_runtime_1.jsxs)("div", { ...props, css: (0, segmented_style_1.useStyle)({ indicatorColor }), className: (0, utils_1.clsx)(segmented_style_1.classes.root, props.className), "data-full-width": fullWidth, "data-animating": animating, "data-orientation": orientation, "data-size": size, "data-read-only": readOnly, "data-disabled": disabled, children: [(0, jsx_runtime_1.jsx)("div", { className: segmented_style_1.classes.indicator, onTransitionEnd: () => setAnimating(false), style: indicatorRect.current }), renderOptions()] }));
81
81
  });
82
82
  exports.Segmented.Option = SegmentedOption_1.SegmentedOption;
@@ -1,3 +1,4 @@
1
+ import { ColorPropsValue } from '../../types';
1
2
  export declare const classes: {
2
3
  label: string;
3
4
  option: string;
@@ -7,4 +8,6 @@ export declare const classes: {
7
8
  } & {
8
9
  root: string;
9
10
  };
10
- export declare const style: () => import("@emotion/react").SerializedStyles;
11
+ export declare function useStyle({ indicatorColor }: {
12
+ indicatorColor: ColorPropsValue;
13
+ }): import("@emotion/react").SerializedStyles;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.style = exports.classes = void 0;
3
+ exports.classes = void 0;
4
+ exports.useStyle = useStyle;
4
5
  const tslib_1 = require("tslib");
5
6
  const react_1 = require("@emotion/react");
6
7
  const utils_1 = require("../../utils");
@@ -12,115 +13,118 @@ exports.classes = (0, utils_1.defineInnerClasses)('segmented', [
12
13
  'suffix',
13
14
  'indicator'
14
15
  ]);
15
- exports.style = (0, utils_1.defineCss)(({ mode, background, borderRadius, easing, text }) => {
16
- const bgColor = (0, color_1.default)(background.body);
17
- const hoverBg = bgColor.darken(mode === 'light' ? .04 : .12).hex();
18
- const activeBg = bgColor.darken(mode === 'light' ? .08 : .24).hex();
19
- return (0, react_1.css) `
20
- display: inline-flex;
21
- background-color: ${background.body};
22
- border-radius: ${borderRadius}px;
23
- padding: 2px;
24
- position: relative;
25
-
26
- .${exports.classes.option} {
27
- display: flex;
28
- align-items: center;
29
- justify-content: center;
30
- gap: 6px;
31
- padding: 4px 12px;
16
+ function useStyle({ indicatorColor }) {
17
+ const indicatorColorValue = (0, utils_1.useColor)(indicatorColor);
18
+ return (0, utils_1.useCss)(({ mode, background, borderRadius, easing, text }) => {
19
+ const bgColor = (0, color_1.default)(background.body);
20
+ const hoverBg = bgColor.darken(mode === 'light' ? .04 : .12).hex();
21
+ const activeBg = bgColor.darken(mode === 'light' ? .08 : .24).hex();
22
+ return (0, react_1.css) `
23
+ display: inline-flex;
24
+ background-color: ${background.body};
32
25
  border-radius: ${borderRadius}px;
33
- white-space: nowrap;
34
- text-overflow: ellipsis;
35
- overflow: hidden;
36
- z-index: 1;
37
- transition: background-color .3s ${easing.easeOut};
38
- -webkit-tap-highlight-color: transparent;
39
-
40
- &[data-active=true] {
41
- transition: background-color 0s;
42
- }
26
+ padding: 2px;
27
+ position: relative;
43
28
 
44
- &[data-orientation=vertical] {
45
- flex-direction: column;
46
- }
29
+ .${exports.classes.option} {
30
+ display: flex;
31
+ align-items: center;
32
+ justify-content: center;
33
+ gap: 6px;
34
+ padding: 4px 12px;
35
+ border-radius: ${borderRadius}px;
36
+ white-space: nowrap;
37
+ text-overflow: ellipsis;
38
+ overflow: hidden;
39
+ z-index: 1;
40
+ transition: background-color .3s ${easing.easeOut};
41
+ -webkit-tap-highlight-color: transparent;
47
42
 
48
- &[data-disabled=true] {
49
- cursor: not-allowed;
50
- color: ${text.disabled};
51
- }
52
- }
43
+ &[data-active=true] {
44
+ transition: background-color 0s;
45
+ }
53
46
 
54
- &[data-size=small] {
55
- .${exports.classes.option} {
56
- padding: 3px 12px;
57
- }
58
- }
47
+ &[data-orientation=vertical] {
48
+ flex-direction: column;
49
+ }
59
50
 
60
- &[data-size=large] {
61
- .${exports.classes.option} {
62
- padding: 11px 12px;
51
+ &[data-disabled=true] {
52
+ cursor: not-allowed;
53
+ color: ${text.disabled};
54
+ }
63
55
  }
64
- }
65
56
 
66
- &[data-full-width=true] {
67
- display: flex;
57
+ &[data-size=small] {
58
+ .${exports.classes.option} {
59
+ padding: 3px 12px;
60
+ }
61
+ }
68
62
 
69
- .${exports.classes.option} {
70
- flex: 1;
63
+ &[data-size=large] {
64
+ .${exports.classes.option} {
65
+ padding: 11px 12px;
66
+ }
71
67
  }
72
- }
73
68
 
74
- &[data-orientation=vertical] {
75
- flex-direction: column;
76
- }
69
+ &[data-full-width=true] {
70
+ display: flex;
77
71
 
78
- .${exports.classes.indicator} {
79
- border-radius: ${borderRadius}px;
80
- background-color: ${background.content};
81
- box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
82
- position: absolute;
83
- transition: all .3s ${easing.bounce};
84
- }
72
+ .${exports.classes.option} {
73
+ flex: 1;
74
+ }
75
+ }
85
76
 
86
- &[data-animating=true] {
87
- .${exports.classes.option} {
88
- transition: background-color 0s;
77
+ &[data-orientation=vertical] {
78
+ flex-direction: column;
89
79
  }
90
- }
91
80
 
92
- &:not([data-animating=true]) {
93
- .${exports.classes.option}[data-active=true] {
94
- background-color: ${background.content};
81
+ .${exports.classes.indicator} {
82
+ border-radius: ${borderRadius}px;
83
+ background-color: ${indicatorColorValue};
95
84
  box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
85
+ position: absolute;
86
+ transition: all .3s ${easing.bounce};
96
87
  }
97
- }
98
88
 
99
- &:not(:has([data-active=true])) {
100
- .${exports.classes.indicator} {
101
- display: none;
89
+ &[data-animating=true] {
90
+ .${exports.classes.option} {
91
+ transition: background-color 0s;
92
+ }
102
93
  }
103
- }
104
-
105
- &:not([data-read-only=true]):not([data-disabled=true]) {
106
- .${exports.classes.option}:not([data-disabled=true]) {
107
- cursor: pointer;
108
-
109
- &:not([data-active=true]):hover {
110
- background-color: ${hoverBg};
94
+
95
+ &:not([data-animating=true]) {
96
+ .${exports.classes.option}[data-active=true] {
97
+ background-color: ${indicatorColorValue};
98
+ box-shadow: 0 1px 4px rgba(0, 0, 0, .1);
111
99
  }
112
-
113
- &:not([data-active=true]):active {
114
- transition: background-color 0s;
115
- background-color: ${activeBg};
100
+ }
101
+
102
+ &:not(:has([data-active=true])) {
103
+ .${exports.classes.indicator} {
104
+ display: none;
116
105
  }
117
106
  }
118
- }
119
107
 
120
- &[data-disabled=true] {
121
- .${exports.classes.option} {
122
- cursor: not-allowed;
108
+ &:not([data-read-only=true]):not([data-disabled=true]) {
109
+ .${exports.classes.option}:not([data-disabled=true]) {
110
+ cursor: pointer;
111
+
112
+ &:not([data-active=true]):hover {
113
+ background-color: ${hoverBg};
114
+ }
115
+
116
+ &:not([data-active=true]):active {
117
+ transition: background-color 0s;
118
+ background-color: ${activeBg};
119
+ }
120
+ }
121
+ }
122
+
123
+ &[data-disabled=true] {
124
+ .${exports.classes.option} {
125
+ cursor: not-allowed;
126
+ }
123
127
  }
124
- }
125
- `;
126
- });
128
+ `;
129
+ }, [indicatorColorValue]);
130
+ }
@@ -39,7 +39,6 @@ interface SliderBaseProps extends Omit<DivProps, 'defaultValue' | 'onChange' | '
39
39
  marks?: MarkItem[];
40
40
  /** mark中的标签与滑动轨道的距离,默认为`6` */
41
41
  markLabelOffset?: number;
42
- markSize?: number;
43
42
  disableTrack?: boolean;
44
43
  gestureOptions?: GestureOptions;
45
44
  }
@@ -15,6 +15,7 @@ function useStyle({ color }) {
15
15
  let colorValue = (0, utils_1.useColor)(color);
16
16
  colorValue = (0, color_1.default)(colorValue).alpha(.7).string();
17
17
  return (0, utils_1.useCss)(({ spacing, borderRadius, boxShadow }) => (0, react_1.css) `
18
+ pointer-events: none;
18
19
  z-index: ${theme_1.zIndex.tooltip};
19
20
 
20
21
  .${exports.classes.title} {
@@ -4,7 +4,7 @@ exports.classes = void 0;
4
4
  exports.useStyle = useStyle;
5
5
  const utils_1 = require("../../utils");
6
6
  const react_1 = require("@emotion/react");
7
- exports.classes = (0, utils_1.defineClasses)('waterfall', [
7
+ exports.classes = (0, utils_1.defineInnerClasses)('waterfall', [
8
8
  'item'
9
9
  ]);
10
10
  function useStyle({ columnCount, columnGap, rowGap }) {
@@ -24,7 +24,7 @@ const WaterfallItem = ({ ref, onLoad, child }) => {
24
24
  }
25
25
  })).then(() => onLoad());
26
26
  });
27
- const clonedRef = (0, react_1.useCallback)((0, utils_1.cloneRef)(child.props.ref, innerRef, ref), [child.props.ref]);
27
+ const clonedRef = (0, react_1.useCallback)((0, utils_1.cloneRef)(child.props.ref, innerRef, ref), [child.props.ref, ref]);
28
28
  return (0, react_1.cloneElement)(child, {
29
29
  ref: clonedRef,
30
30
  className: (0, utils_1.clsx)(waterfall_style_1.classes.item, child.props.className),
@@ -31,7 +31,7 @@ exports.DocumentViewer = (0, react_1.memo)(({ src, filename, onError, type, exte
31
31
  return ext && mime_1.default.getType(ext);
32
32
  }
33
33
  return null;
34
- }, [src, type, extension]);
34
+ }, [src, type, extension, filename]);
35
35
  const downloadHandler = () => {
36
36
  if (src) {
37
37
  const a = document.createElement('a');
@@ -1,5 +1,4 @@
1
1
  export * from './utils';
2
- export { FontAwesomeIcon as Icon } from '@fortawesome/react-fontawesome';
3
2
  export * from './components/accordion';
4
3
  export * from './components/actionSheet';
5
4
  export * from './components/alert';
@@ -15,6 +14,7 @@ export * from './components/breadcrumb';
15
14
  export * from './components/bubble';
16
15
  export * from './components/bubbleConfirm';
17
16
  export * from './components/button';
17
+ export * from './components/calendar';
18
18
  export * from './components/card';
19
19
  export * from './components/cascade';
20
20
  export * from './components/checkbox';
@@ -40,6 +40,7 @@ export * from './components/formDialog';
40
40
  export * from './components/gallery';
41
41
  export * from './components/grid';
42
42
  export * from './components/highlight';
43
+ export * from './components/icon';
43
44
  export * from './components/image';
44
45
  export * from './components/input';
45
46
  export * from './components/inputBase';
package/dist/cjs/index.js CHANGED
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Icon = void 0;
4
3
  const tslib_1 = require("tslib");
5
4
  tslib_1.__exportStar(require("./utils"), exports);
6
- var react_fontawesome_1 = require("@fortawesome/react-fontawesome");
7
- Object.defineProperty(exports, "Icon", { enumerable: true, get: function () { return react_fontawesome_1.FontAwesomeIcon; } });
8
5
  tslib_1.__exportStar(require("./components/accordion"), exports);
9
6
  tslib_1.__exportStar(require("./components/actionSheet"), exports);
10
7
  tslib_1.__exportStar(require("./components/alert"), exports);
@@ -20,6 +17,7 @@ tslib_1.__exportStar(require("./components/breadcrumb"), exports);
20
17
  tslib_1.__exportStar(require("./components/bubble"), exports);
21
18
  tslib_1.__exportStar(require("./components/bubbleConfirm"), exports);
22
19
  tslib_1.__exportStar(require("./components/button"), exports);
20
+ tslib_1.__exportStar(require("./components/calendar"), exports);
23
21
  tslib_1.__exportStar(require("./components/card"), exports);
24
22
  tslib_1.__exportStar(require("./components/cascade"), exports);
25
23
  tslib_1.__exportStar(require("./components/checkbox"), exports);
@@ -45,6 +43,7 @@ tslib_1.__exportStar(require("./components/formDialog"), exports);
45
43
  tslib_1.__exportStar(require("./components/gallery"), exports);
46
44
  tslib_1.__exportStar(require("./components/grid"), exports);
47
45
  tslib_1.__exportStar(require("./components/highlight"), exports);
46
+ tslib_1.__exportStar(require("./components/icon"), exports);
48
47
  tslib_1.__exportStar(require("./components/image"), exports);
49
48
  tslib_1.__exportStar(require("./components/input"), exports);
50
49
  tslib_1.__exportStar(require("./components/inputBase"), exports);
@@ -46,7 +46,7 @@ export type SlotsAndProps<Default extends Record<string, any>> = {
46
46
  [P in keyof Default]?: ElementType;
47
47
  };
48
48
  slotProps?: {
49
- [P in keyof Default]?: Default[P] & Obj;
49
+ [P in keyof Default]?: Default[P] | Obj;
50
50
  };
51
51
  };
52
52
  /**
@@ -51,12 +51,12 @@ export declare function colorTransfer(colorPropsValue: ColorPropsValue, theme: T
51
51
  * 将useCss()与colorTransfer()方法结合封装
52
52
  * @param colorPropsValue
53
53
  */
54
- export declare function useColor(colorPropsValue: ColorPropsValue): string;
54
+ export declare function useColor(colorPropsValue: ColorPropsValue | undefined): string | undefined;
55
55
  /**
56
56
  * 点击的波纹效果
57
57
  * @param colorPropsValue
58
58
  */
59
- export declare function useTouchRipple(colorPropsValue: ColorPropsValue): (element: Animatable) => void;
59
+ export declare function useTouchSpread(colorPropsValue: ColorPropsValue): (element: Animatable) => void;
60
60
  /**
61
61
  * 生成响应式样式,与{@link responsiveStyles}的区别在于,本方法会遍历{@link Theme}中的所有`breakpoints`,触发回调函数
62
62
  * @param breakpoints 传入{@link Theme}中的断点,或自定义断点
@@ -7,7 +7,7 @@ exports.defineCss = defineCss;
7
7
  exports.useCss = useCss;
8
8
  exports.colorTransfer = colorTransfer;
9
9
  exports.useColor = useColor;
10
- exports.useTouchRipple = useTouchRipple;
10
+ exports.useTouchSpread = useTouchSpread;
11
11
  exports.responsiveVariables = responsiveVariables;
12
12
  exports.responsiveStyles = responsiveStyles;
13
13
  exports.toResponsiveValue = toResponsiveValue;
@@ -71,7 +71,7 @@ function useCss(callback, deps) {
71
71
  * @param theme
72
72
  */
73
73
  function colorTransfer(colorPropsValue, theme) {
74
- const { colors, text } = theme;
74
+ const { colors, text, background } = theme;
75
75
  if (colorPropsValue in colors) {
76
76
  return colors[colorPropsValue].main;
77
77
  }
@@ -84,6 +84,10 @@ function colorTransfer(colorPropsValue, theme) {
84
84
  return text[member];
85
85
  }
86
86
  }
87
+ if (colorPropsValue.startsWith('background')) {
88
+ const [, member] = colorPropsValue.split('.');
89
+ return background[member];
90
+ }
87
91
  return colorPropsValue;
88
92
  }
89
93
  /**
@@ -92,14 +96,14 @@ function colorTransfer(colorPropsValue, theme) {
92
96
  */
93
97
  function useColor(colorPropsValue) {
94
98
  return useCss(theme => {
95
- return colorTransfer(colorPropsValue, theme);
99
+ return colorPropsValue && colorTransfer(colorPropsValue, theme);
96
100
  }, [colorPropsValue]);
97
101
  }
98
102
  /**
99
103
  * 点击的波纹效果
100
104
  * @param colorPropsValue
101
105
  */
102
- function useTouchRipple(colorPropsValue) {
106
+ function useTouchSpread(colorPropsValue) {
103
107
  const theme = (0, theme_1.useTheme)();
104
108
  const outlineColor = (0, react_1.useMemo)(() => {
105
109
  return (0, color_1.default)(colorTransfer(colorPropsValue, theme)).alpha(.6).string();