@plenustech/design-system 0.1.1 → 0.2.0

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 (49) hide show
  1. package/README.md +19 -3
  2. package/dist/design-system.css +1 -1
  3. package/dist/plenus-design-system.cjs +1 -1
  4. package/dist/plenus-design-system.cjs.map +1 -1
  5. package/dist/plenus-design-system.es.js +3880 -3436
  6. package/dist/plenus-design-system.es.js.map +1 -1
  7. package/dist/reset.css +9 -8
  8. package/dist/types/components/charts/ChartArea/ChartArea.d.ts +1 -1
  9. package/dist/types/components/charts/ChartBar/ChartBar.d.ts +1 -0
  10. package/dist/types/components/charts/ChartLine/ChartLine.d.ts +1 -1
  11. package/dist/types/components/charts/ChartRadial/ChartRadial.d.ts +1 -0
  12. package/dist/types/components/charts/ChartScatter/ChartScatter.d.ts +4 -4
  13. package/dist/types/components/charts/core/centerText.d.ts +4 -3
  14. package/dist/types/components/charts/core/index.d.ts +1 -1
  15. package/dist/types/components/charts/core/measureText.d.ts +8 -0
  16. package/dist/types/components/charts/core/slices.d.ts +0 -8
  17. package/dist/types/components/charts/palette/index.d.ts +1 -1
  18. package/dist/types/components/charts/palette/seriesColor.d.ts +5 -0
  19. package/dist/types/components/charts/scales/index.d.ts +2 -2
  20. package/dist/types/components/charts/scales/scales.d.ts +8 -12
  21. package/dist/types/components/data-display/Card/Card.d.ts +1 -1
  22. package/dist/types/components/data-display/List/useListing.d.ts +1 -0
  23. package/dist/types/components/data-display/Table/Table.d.ts +4 -1
  24. package/dist/types/components/feedback/Progress/Progress.d.ts +2 -2
  25. package/dist/types/components/forms/Checkbox/Checkbox.d.ts +1 -1
  26. package/dist/types/components/forms/ComboBox/ComboBox.d.ts +4 -6
  27. package/dist/types/components/forms/DatePicker/DatePicker.d.ts +15 -9
  28. package/dist/types/components/forms/DatePicker/iso.d.ts +7 -0
  29. package/dist/types/components/forms/DateTimePicker/DateTimePicker.d.ts +16 -12
  30. package/dist/types/components/forms/Field/FormValue.d.ts +13 -0
  31. package/dist/types/components/forms/InputNumber/InputNumber.d.ts +1 -1
  32. package/dist/types/components/forms/RadioGroup/RadioGroup.d.ts +2 -1
  33. package/dist/types/components/forms/Select/Select.d.ts +4 -4
  34. package/dist/types/components/forms/Switch/Switch.d.ts +1 -1
  35. package/dist/types/components/forms/TimePicker/TimePicker.d.ts +14 -8
  36. package/dist/types/components/forms/TimePicker/TimeSlots.d.ts +4 -9
  37. package/dist/types/components/navigation/Pagination/Pagination.d.ts +4 -0
  38. package/dist/types/components/overlays/Dialog/Dialog.d.ts +3 -2
  39. package/dist/types/components/overlays/Menu/Menu.d.ts +7 -1
  40. package/dist/types/components/overlays/Popover/Popover.d.ts +3 -4
  41. package/dist/types/hooks/useDecimalInput.d.ts +19 -0
  42. package/dist/types/hooks/useMergedRefs.d.ts +6 -0
  43. package/dist/types/hooks/useSelection/useSelection.d.ts +1 -0
  44. package/dist/types/utils/formatters/formatarEntradaDecimal.d.ts +5 -0
  45. package/dist/types/utils/formatters/formatarEntradaHora.d.ts +7 -0
  46. package/dist/types/utils/formatters/index.d.ts +2 -1
  47. package/dist/types/utils/formatters/mascararPartes.d.ts +5 -0
  48. package/package.json +3 -2
  49. package/dist/types/utils/mergeRefs.d.ts +0 -7
@@ -0,0 +1,19 @@
1
+ import { type ChangeEvent } from 'react';
2
+ interface DecimalInputOptions {
3
+ decimalScale: number;
4
+ defaultValue: string | number;
5
+ onValueChange?: (value: string) => void;
6
+ value?: string | number;
7
+ }
8
+ /**
9
+ * Estado dos campos decimais: o valor, controlado ou nao, e o texto que a
10
+ * pessoa esta digitando, que pode ainda guardar um ponto sem papel decidido.
11
+ */
12
+ export declare function useDecimalInput({ decimalScale, defaultValue, onValueChange, value }: DecimalInputOptions): {
13
+ ref: import("react").RefObject<HTMLInputElement | null>;
14
+ value: string;
15
+ text: string;
16
+ handleChange: (event: ChangeEvent<HTMLInputElement>) => void;
17
+ endEditing: () => void;
18
+ };
19
+ export {};
@@ -0,0 +1,6 @@
1
+ import { type Ref } from 'react';
2
+ /**
3
+ * Junta o ref interno ao que veio de fora numa funcao estavel, que devolve a limpeza do React 19.
4
+ * Nova a cada render, ela desligava e religava o elemento em todo render.
5
+ */
6
+ export declare function useMergedRefs<T>(...refs: readonly (Ref<T> | undefined)[]): (node: T | null) => () => void;
@@ -17,6 +17,7 @@ export interface UseSelectionResult extends SelectionState {
17
17
  focusLast: (extend?: boolean) => void;
18
18
  focusNext: (extend?: boolean) => void;
19
19
  focusPrevious: (extend?: boolean) => void;
20
+ reset: () => void;
20
21
  search: (character: string) => void;
21
22
  select: (key: string) => void;
22
23
  selectRange: (key: string) => void;
@@ -1 +1,6 @@
1
1
  export declare function formatarEntradaDecimal(valor: string | number, casasDecimais?: number): string;
2
+ /**
3
+ * O texto do campo enquanto se digita: o ponto que ainda pode virar milhar na proxima tecla fica como foi digitado, e
4
+ * o valor o le como decimal ate la. Decidido na hora, `1.234` virava `1,23`.
5
+ */
6
+ export declare function formatarEdicaoDecimal(texto: string, casasDecimais?: number): string;
@@ -0,0 +1,7 @@
1
+ import { CalendarDateTime, Time } from '@internationalized/date';
2
+ /** Aplica a mascara hora:minuto conforme o usuario digita. */
3
+ export declare function formatarEntradaHora(valor: string): string;
4
+ export declare function lerEntradaHora(valor: string): Time | undefined;
5
+ /** Aplica a mascara dia/mes/ano hora:minuto conforme o usuario digita. */
6
+ export declare function formatarEntradaDataHora(valor: string): string;
7
+ export declare function lerEntradaDataHora(valor: string): CalendarDateTime | undefined;
@@ -1,7 +1,8 @@
1
- export { formatarEntradaDecimal } from './formatarEntradaDecimal.js';
1
+ export { formatarEdicaoDecimal, formatarEntradaDecimal } from './formatarEntradaDecimal.js';
2
2
  export { formatarEntradaMonetaria } from './formatarEntradaMonetaria.js';
3
3
  export { formatarData, formatarHora } from './formatarData.js';
4
4
  export type { OpcoesDeData, OpcoesDeHora } from './formatarData.js';
5
5
  export { formatarMoeda, formatarNumero, formatarPercentual } from './formatarNumero.js';
6
6
  export type { OpcoesDeMoeda, OpcoesDeNumero, OpcoesDePercentual } from './formatarNumero.js';
7
7
  export { formatarEntradaData, lerEntradaData } from './formatarEntradaData.js';
8
+ export { formatarEntradaDataHora, formatarEntradaHora, lerEntradaDataHora, lerEntradaHora } from './formatarEntradaHora.js';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Mascara de partes com limite de digitos, como dia/mes/ano. O separador digitado fecha a parte antes
3
+ * de encher, e ninguem empurra digito para a vizinha; sem ele, o excesso passa para a parte seguinte.
4
+ */
5
+ export declare function mascararPartes(valor: string, limites: readonly number[], separadores: readonly string[]): string;
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@plenustech/design-system",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "Design System centralizado para os produtos web da Plenustech.",
5
+ "license": "UNLICENSED",
5
6
  "publishConfig": {
6
7
  "access": "public"
7
8
  },
@@ -42,7 +43,7 @@
42
43
  "check:pacote": "node scripts/check-pacote.mjs",
43
44
  "check:contraste": "node scripts/check-contraste.mjs",
44
45
  "prepare": "npm run build:pacote",
45
- "build:showcase": "vite build --config showcase/vite.config.ts",
46
+ "build:showcase": "npm run build:pacote && vite build --config showcase/vite.config.ts",
46
47
  "test": "vitest run",
47
48
  "test:watch": "vitest",
48
49
  "test:coverage": "vitest run --coverage",
@@ -1,7 +0,0 @@
1
- import type { Ref } from 'react';
2
- /**
3
- * Junta o ref interno do componente ao que veio de fora. Sem isto, um dos dois
4
- * se perde: o interno, porque `{...props}` o sobrescreve, ou o de fora, porque
5
- * o componente aplica o seu depois.
6
- */
7
- export declare function mergeRefs<T>(...refs: readonly (Ref<T> | undefined)[]): (node: T | null) => void;