@quillsql/react 1.1.2 → 1.1.4

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 (38) hide show
  1. package/example/src/App.tsx +3 -3
  2. package/lib/BarList.js +17 -11
  3. package/lib/BarList.js.map +1 -1
  4. package/lib/Chart.d.ts +4 -2
  5. package/lib/Chart.js +67 -24
  6. package/lib/Chart.js.map +1 -1
  7. package/lib/Dashboard.js +10 -7
  8. package/lib/Dashboard.js.map +1 -1
  9. package/lib/DateRangePicker/Calendar.d.ts +2 -1
  10. package/lib/DateRangePicker/Calendar.js +29 -9
  11. package/lib/DateRangePicker/Calendar.js.map +1 -1
  12. package/lib/DateRangePicker/DateRangePicker.d.ts +1 -0
  13. package/lib/DateRangePicker/DateRangePicker.js +4 -4
  14. package/lib/DateRangePicker/DateRangePicker.js.map +1 -1
  15. package/lib/DateRangePicker/DateRangePickerButton.d.ts +2 -1
  16. package/lib/DateRangePicker/DateRangePickerButton.js +22 -4
  17. package/lib/DateRangePicker/DateRangePickerButton.js.map +1 -1
  18. package/lib/PieChart.d.ts +5 -3
  19. package/lib/PieChart.js +31 -12
  20. package/lib/PieChart.js.map +1 -1
  21. package/lib/components/Dropdown/Dropdown.d.ts +1 -0
  22. package/lib/components/Dropdown/Dropdown.js +8 -3
  23. package/lib/components/Dropdown/Dropdown.js.map +1 -1
  24. package/lib/components/Dropdown/DropdownItem.d.ts +1 -0
  25. package/lib/components/Dropdown/DropdownItem.js +19 -3
  26. package/lib/components/Dropdown/DropdownItem.js.map +1 -1
  27. package/lib/styles.css +10192 -5444
  28. package/package.json +1 -1
  29. package/src/BarList.tsx +21 -6
  30. package/src/Chart.tsx +84 -20
  31. package/src/Dashboard.tsx +10 -6
  32. package/src/DateRangePicker/Calendar.tsx +33 -0
  33. package/src/DateRangePicker/DateRangePicker.tsx +10 -1
  34. package/src/DateRangePicker/DateRangePickerButton.tsx +24 -0
  35. package/src/PieChart.tsx +36 -6
  36. package/src/components/Dropdown/Dropdown.tsx +9 -0
  37. package/src/components/Dropdown/DropdownItem.tsx +19 -2
  38. package/tailwind.config.js +3 -0
package/src/PieChart.tsx CHANGED
@@ -382,12 +382,18 @@ export const parseLabelInput = (
382
382
 
383
383
  export const ChartTooltipFrame = ({
384
384
  children,
385
+ theme,
385
386
  }: {
386
387
  children: React.ReactNode;
387
388
  }) => (
388
389
  <div
390
+ style={{
391
+ borderStyle: 'solid',
392
+ borderColor: theme?.borderColor || '#E5E7EB',
393
+ borderWidth: 1,
394
+ }}
389
395
  // style={{ transform: 'translateX(-120px)' }}
390
- className="qq-bg-white qq-text-sm qq-rounded-md qq-border qq-shadow-lg"
396
+ className="qq-bg-white qq-text-sm qq-rounded-md qq-shadow-lg"
391
397
  // className={twMerge(
392
398
  // 'bg-white',
393
399
  // 'font-normal',
@@ -405,17 +411,24 @@ export interface ChartTooltipRowProps {
405
411
  value: string;
406
412
  name: string;
407
413
  color: Color;
414
+ theme: any;
408
415
  }
409
416
 
410
417
  export const ChartTooltipRow = ({
411
418
  value,
412
419
  name,
413
420
  color,
421
+ theme,
414
422
  }: ChartTooltipRowProps) => (
415
423
  <div className="qq-flex qq-items-center qq-justify-between qq-space-x-8">
416
424
  <div className="qq-flex qq-items-center qq-space-x-2">
417
425
  <span
418
- style={{ background: color, borderWidth: 2, borderColor: 'white' }}
426
+ style={{
427
+ background: color,
428
+ borderWidth: 2,
429
+ borderStyle: 'solid',
430
+ borderColor: 'white',
431
+ }}
419
432
  className={twMerge(
420
433
  // 'shrink-0',
421
434
  // 'bg-black',
@@ -436,16 +449,28 @@ export const ChartTooltipRow = ({
436
449
  // 'font-medium tabular-nums text-right whitespace-nowrap',
437
450
  // 'text-[#212121] !important'
438
451
  // )}
439
- className="qq-font-medium qq-tabular-nums qq-text-right qq-whitespace-nowrap qq-text-black"
452
+ style={{
453
+ marginTop: 0,
454
+ marginBottom: 0,
455
+ fontFamily: theme?.fontFamily,
456
+ color: theme?.primaryTextColor,
457
+ }}
458
+ className="qq-font-medium qq-tabular-nums qq-text-right qq-whitespace-nowrap"
440
459
  >
441
460
  {value}
442
461
  </p>
443
462
  </div>
444
463
  <p
464
+ style={{
465
+ marginTop: 0,
466
+ marginBottom: 0,
467
+ fontFamily: theme?.fontFamily,
468
+ color: theme?.secondaryTextColor,
469
+ }}
445
470
  className={twMerge(
446
- 'qq-text-right qq-whitespace-nowrap',
471
+ 'qq-text-right qq-whitespace-nowrap'
447
472
  // getColorClassNames(DEFAULT_COLOR, colorPalette.text).textColor,
448
- 'qq-text-gray-500'
473
+ // 'qq-text-gray-500'
449
474
  // fontWeight.sm
450
475
  )}
451
476
  >
@@ -458,17 +483,19 @@ export interface DonutChartTooltipProps {
458
483
  active: boolean | undefined;
459
484
  payload: any;
460
485
  valueFormatter: ValueFormatter;
486
+ theme: any;
461
487
  }
462
488
 
463
489
  export const DonutChartTooltip = ({
464
490
  active,
465
491
  payload,
466
492
  valueFormatter,
493
+ theme,
467
494
  }: DonutChartTooltipProps) => {
468
495
  if (active && payload[0]) {
469
496
  const payloadRow = payload[0];
470
497
  return (
471
- <ChartTooltipFrame>
498
+ <ChartTooltipFrame theme={theme}>
472
499
  <div
473
500
  // style={{ transform: 'translateX(-120px)' }}
474
501
  className={twMerge('qq-px-4', 'qq-py-2')}
@@ -477,6 +504,7 @@ export const DonutChartTooltip = ({
477
504
  value={valueFormatter(payloadRow.value)}
478
505
  name={payloadRow.name}
479
506
  color={payloadRow.payload.color}
507
+ theme={theme}
480
508
  />
481
509
  </div>
482
510
  </ChartTooltipFrame>
@@ -708,6 +736,7 @@ const PieChartWrapper = React.forwardRef<HTMLDivElement, DonutChartProps>(
708
736
  showTooltip = true,
709
737
  className,
710
738
  containerStyle,
739
+ theme,
711
740
  ...other
712
741
  } = props;
713
742
  const isDonut = variant == 'donut';
@@ -784,6 +813,7 @@ const PieChartWrapper = React.forwardRef<HTMLDivElement, DonutChartProps>(
784
813
  active={active}
785
814
  payload={payload}
786
815
  valueFormatter={valueFormatter}
816
+ theme={theme}
787
817
  />
788
818
  )}
789
819
  />
@@ -40,6 +40,7 @@ export interface DropdownProps extends React.HTMLAttributes<HTMLDivElement> {
40
40
  disabled?: boolean;
41
41
  icon?: React.JSXElementConstructor<any>;
42
42
  children: React.ReactElement[] | React.ReactElement;
43
+ theme: any;
43
44
  }
44
45
 
45
46
  const Dropdown = React.forwardRef<HTMLDivElement, DropdownProps>(
@@ -53,6 +54,7 @@ const Dropdown = React.forwardRef<HTMLDivElement, DropdownProps>(
53
54
  icon,
54
55
  children,
55
56
  className,
57
+ theme,
56
58
  ...other
57
59
  } = props;
58
60
  const [selectedValue, setSelectedValue] = useInternalState(
@@ -98,6 +100,12 @@ const Dropdown = React.forwardRef<HTMLDivElement, DropdownProps>(
98
100
  {...other}
99
101
  >
100
102
  <button
103
+ style={{
104
+ // borderColor: theme.borderColor || '#E5E7EB',
105
+ // borderStyle: 'solid',
106
+ border: 'none',
107
+ background: 'white',
108
+ }}
101
109
  type="button"
102
110
  className={twMerge(
103
111
  makeDropdownClassName('button'),
@@ -131,6 +139,7 @@ const Dropdown = React.forwardRef<HTMLDivElement, DropdownProps>(
131
139
  />
132
140
  ) : null}
133
141
  <p
142
+ style={{ margin: 0 }}
134
143
  className={twMerge(
135
144
  makeDropdownClassName('text'),
136
145
  'qq-whitespace-nowrap qq-truncate',
@@ -18,11 +18,12 @@ export interface DropdownItemProps
18
18
  value: string;
19
19
  text?: string;
20
20
  icon?: React.ElementType;
21
+ theme: any;
21
22
  }
22
23
 
23
24
  const DropdownItem = React.forwardRef<HTMLButtonElement, DropdownItemProps>(
24
25
  (props, ref) => {
25
- const { value, text, icon, className, ...other } = props;
26
+ const { value, text, icon, className, theme, ...other } = props;
26
27
  const { selectedValue, handleValueChange } =
27
28
  useContext(SelectedValueContext);
28
29
  const { hoveredValue } = useContext(HoveredValueContext);
@@ -42,6 +43,17 @@ const DropdownItem = React.forwardRef<HTMLButtonElement, DropdownItemProps>(
42
43
  return (
43
44
  <button
44
45
  ref={ref}
46
+ style={{
47
+ // borderColor: theme.borderColor || '#E5E7EB',
48
+ borderStyle: 'solid',
49
+ borderBottomWidth: 1,
50
+ borderBottomColor: theme?.borderColor || '#E5E7EB',
51
+ background: theme?.backgroundColor || 'white',
52
+ borderTop: 'none',
53
+ borderRight: 'none',
54
+ borderLeft: 'none',
55
+ cursor: 'pointer',
56
+ }}
45
57
  type="button"
46
58
  onClick={() => handleValueChange?.(value)}
47
59
  className={twMerge(
@@ -50,7 +62,7 @@ const DropdownItem = React.forwardRef<HTMLButtonElement, DropdownItemProps>(
50
62
  spacing.twoXl.paddingX,
51
63
  spacing.md.paddingY,
52
64
  fontSize.sm,
53
- bgColor,
65
+ // bgColor,
54
66
  textColor,
55
67
  className
56
68
  )}
@@ -71,6 +83,11 @@ const DropdownItem = React.forwardRef<HTMLButtonElement, DropdownItemProps>(
71
83
  />
72
84
  ) : null}
73
85
  <p
86
+ style={{
87
+ margin: 0,
88
+ fontFamily: theme?.fontFamily,
89
+ color: theme?.primaryTextColor,
90
+ }}
74
91
  className={twMerge(
75
92
  makeDropdownItemClassName('text'),
76
93
  'qq-text-sm qq-whitespace-nowrap qq-truncate'
@@ -1,6 +1,9 @@
1
1
  /** @type {import('tailwindcss').Config} */
2
2
  module.exports = {
3
3
  prefix: 'qq-',
4
+ corePlugins: {
5
+ preflight: false,
6
+ },
4
7
  darkMode: false,
5
8
  content: [
6
9
  './src/**/*.{js,ts,jsx,tsx}',