@bluemarble/bm-components 1.16.1 → 1.17.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.
package/dist/index.d.mts CHANGED
@@ -1,9 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { ReactNode, FC, Provider } from 'react';
3
3
  import * as _mui_material from '@mui/material';
4
- import { TableCellProps, TableCell, TextFieldProps, StandardTextFieldProps, SelectProps as SelectProps$1, FormControlProps, InputLabelProps, AutocompleteRenderInputParams, AutocompleteProps as AutocompleteProps$1, CheckboxProps as CheckboxProps$1, FormControlLabelProps, SwitchProps as SwitchProps$1, RadioGroupProps, ButtonProps, CircularProgressProps, Theme, SxProps, TableSortLabelProps, BoxProps, PaperProps, TableProps, TableHeadProps, TableBodyProps, ModalProps as ModalProps$1, DialogProps, AlertColor } from '@mui/material';
4
+ import { TableCellProps, TableCell, TextFieldProps, StandardTextFieldProps, SelectProps as SelectProps$1, FormControlProps, InputLabelProps, AutocompleteProps as AutocompleteProps$1, AutocompleteRenderInputParams, CheckboxProps as CheckboxProps$1, FormControlLabelProps, SwitchProps as SwitchProps$1, RadioGroupProps, ButtonProps, CircularProgressProps, Theme, SxProps, TableSortLabelProps, BoxProps, PaperProps, TableProps, TableHeadProps, TableBodyProps, ModalProps, DialogProps, AlertColor } from '@mui/material';
5
5
  import * as _mui_material_OverridableComponent from '@mui/material/OverridableComponent';
6
6
  import IMask$1 from 'imask';
7
+ import { IconType } from 'react-icons';
7
8
  import { NextApiRequest, NextApiResponse, GetServerSidePropsContext } from 'next';
8
9
  import { ZodTypeDef, ZodSchema } from 'zod';
9
10
  import { AxiosInstance } from 'axios';
@@ -303,12 +304,13 @@ interface BaseGridAutoRowsProps<T> {
303
304
  }
304
305
  declare function BaseGridAutoRows<T>({ data, columns, rowKey }: BaseGridAutoRowsProps<T>): React__default.JSX.Element;
305
306
 
306
- type ModalProps = {
307
+ type TModalProps = {
307
308
  open: boolean;
308
309
  onClose: () => void;
309
310
  children: React__default.ReactNode;
310
- } & Omit<ModalProps$1, 'children'>;
311
- declare const Modal: ({ open, onClose, ...rest }: ModalProps) => React__default.JSX.Element;
311
+ BoxProps?: BoxProps;
312
+ } & Omit<ModalProps, 'children'>;
313
+ declare const Modal: ({ open, onClose, BoxProps, ...rest }: TModalProps) => React__default.JSX.Element;
312
314
 
313
315
  declare function GetInputLabel<T extends Array<Record<string, any>>, K extends T[number]['name']>(columns: T): (columnName: K) => {
314
316
  label: any;
@@ -329,6 +331,30 @@ interface DialogCustomProps extends DialogProps {
329
331
  }
330
332
  declare const Dialog: ({ open, title, loading, body, options, ...rest }: DialogCustomProps) => React__default.JSX.Element;
331
333
 
334
+ interface IDialogChildrenProps {
335
+ onConfirm: (fn: (...params: any[]) => Promise<void>) => (...params: any[]) => Promise<void>;
336
+ onCancel: () => void;
337
+ }
338
+ interface IDialogConfirmProps {
339
+ icon?: IconType;
340
+ title?: string;
341
+ body?: string;
342
+ children: (props: IDialogChildrenProps) => ReactNode;
343
+ confirmButtonText?: string;
344
+ cancelButtonText?: string;
345
+ }
346
+ type TUseDialogConfirm = ReturnType<typeof UseDialogConfirm>;
347
+ declare function UseDialogConfirm(): {
348
+ isLoading: boolean;
349
+ opened: boolean;
350
+ onConfirm: (fn: (...params: any) => Promise<any>) => (...params: any[]) => Promise<void>;
351
+ onCloseModal: () => void;
352
+ onCancel: (event?: any) => void;
353
+ onProceed: (event: any) => Promise<void>;
354
+ };
355
+
356
+ declare const DialogConfirm: (props: IDialogConfirmProps) => React__default.JSX.Element;
357
+
332
358
  declare class HttpError extends Error {
333
359
  status: number;
334
360
  constructor(status: number, message: any);
@@ -551,4 +577,4 @@ declare function CreateAuthProvider<T>({ api, children, sessionTokenName, Provid
551
577
  sessionTokenName: string;
552
578
  }): React__default.JSX.Element;
553
579
 
554
- export { AlertContext, AlertProvider, ApiHelper, type AuthContextProps, AuthHelper, Autocomplete, BaseGrid, BaseGridAutoRows, Checkbox, type ColumnTitleProps, type ColumnsProps, CreateAuthProvider, Dialog, DomainError, EditableTableCell, type FilterCompareType, type FilterProps, FormHelperContext, FormHelperProvider, GetInputLabel, Grid, HttpError, type IFilter, Input, InputMask, LargeButton, Modal, Radio, Select, type SortedByProps$1 as SortedByProps, Switch, TabPanel, type TabPanelProps, Td, Tr, createAuthContext, createFilter, filterData, getTabProps, useAlert, useAsyncGrid, useEvent, useFilter, useFormHelper, useGrid, useLoading };
580
+ export { AlertContext, AlertProvider, ApiHelper, type AuthContextProps, AuthHelper, Autocomplete, BaseGrid, BaseGridAutoRows, Checkbox, type ColumnTitleProps, type ColumnsProps, CreateAuthProvider, Dialog, DialogConfirm, DomainError, EditableTableCell, type FilterCompareType, type FilterProps, FormHelperContext, FormHelperProvider, GetInputLabel, Grid, HttpError, type IDialogConfirmProps, type IFilter, Input, InputMask, LargeButton, Modal, Radio, Select, type SortedByProps$1 as SortedByProps, Switch, type TUseDialogConfirm, TabPanel, type TabPanelProps, Td, Tr, UseDialogConfirm, createAuthContext, createFilter, filterData, getTabProps, useAlert, useAsyncGrid, useEvent, useFilter, useFormHelper, useGrid, useLoading };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { ReactNode, FC, Provider } from 'react';
3
3
  import * as _mui_material from '@mui/material';
4
- import { TableCellProps, TableCell, TextFieldProps, StandardTextFieldProps, SelectProps as SelectProps$1, FormControlProps, InputLabelProps, AutocompleteRenderInputParams, AutocompleteProps as AutocompleteProps$1, CheckboxProps as CheckboxProps$1, FormControlLabelProps, SwitchProps as SwitchProps$1, RadioGroupProps, ButtonProps, CircularProgressProps, Theme, SxProps, TableSortLabelProps, BoxProps, PaperProps, TableProps, TableHeadProps, TableBodyProps, ModalProps as ModalProps$1, DialogProps, AlertColor } from '@mui/material';
4
+ import { TableCellProps, TableCell, TextFieldProps, StandardTextFieldProps, SelectProps as SelectProps$1, FormControlProps, InputLabelProps, AutocompleteProps as AutocompleteProps$1, AutocompleteRenderInputParams, CheckboxProps as CheckboxProps$1, FormControlLabelProps, SwitchProps as SwitchProps$1, RadioGroupProps, ButtonProps, CircularProgressProps, Theme, SxProps, TableSortLabelProps, BoxProps, PaperProps, TableProps, TableHeadProps, TableBodyProps, ModalProps, DialogProps, AlertColor } from '@mui/material';
5
5
  import * as _mui_material_OverridableComponent from '@mui/material/OverridableComponent';
6
6
  import IMask$1 from 'imask';
7
+ import { IconType } from 'react-icons';
7
8
  import { NextApiRequest, NextApiResponse, GetServerSidePropsContext } from 'next';
8
9
  import { ZodTypeDef, ZodSchema } from 'zod';
9
10
  import { AxiosInstance } from 'axios';
@@ -303,12 +304,13 @@ interface BaseGridAutoRowsProps<T> {
303
304
  }
304
305
  declare function BaseGridAutoRows<T>({ data, columns, rowKey }: BaseGridAutoRowsProps<T>): React__default.JSX.Element;
305
306
 
306
- type ModalProps = {
307
+ type TModalProps = {
307
308
  open: boolean;
308
309
  onClose: () => void;
309
310
  children: React__default.ReactNode;
310
- } & Omit<ModalProps$1, 'children'>;
311
- declare const Modal: ({ open, onClose, ...rest }: ModalProps) => React__default.JSX.Element;
311
+ BoxProps?: BoxProps;
312
+ } & Omit<ModalProps, 'children'>;
313
+ declare const Modal: ({ open, onClose, BoxProps, ...rest }: TModalProps) => React__default.JSX.Element;
312
314
 
313
315
  declare function GetInputLabel<T extends Array<Record<string, any>>, K extends T[number]['name']>(columns: T): (columnName: K) => {
314
316
  label: any;
@@ -329,6 +331,30 @@ interface DialogCustomProps extends DialogProps {
329
331
  }
330
332
  declare const Dialog: ({ open, title, loading, body, options, ...rest }: DialogCustomProps) => React__default.JSX.Element;
331
333
 
334
+ interface IDialogChildrenProps {
335
+ onConfirm: (fn: (...params: any[]) => Promise<void>) => (...params: any[]) => Promise<void>;
336
+ onCancel: () => void;
337
+ }
338
+ interface IDialogConfirmProps {
339
+ icon?: IconType;
340
+ title?: string;
341
+ body?: string;
342
+ children: (props: IDialogChildrenProps) => ReactNode;
343
+ confirmButtonText?: string;
344
+ cancelButtonText?: string;
345
+ }
346
+ type TUseDialogConfirm = ReturnType<typeof UseDialogConfirm>;
347
+ declare function UseDialogConfirm(): {
348
+ isLoading: boolean;
349
+ opened: boolean;
350
+ onConfirm: (fn: (...params: any) => Promise<any>) => (...params: any[]) => Promise<void>;
351
+ onCloseModal: () => void;
352
+ onCancel: (event?: any) => void;
353
+ onProceed: (event: any) => Promise<void>;
354
+ };
355
+
356
+ declare const DialogConfirm: (props: IDialogConfirmProps) => React__default.JSX.Element;
357
+
332
358
  declare class HttpError extends Error {
333
359
  status: number;
334
360
  constructor(status: number, message: any);
@@ -551,4 +577,4 @@ declare function CreateAuthProvider<T>({ api, children, sessionTokenName, Provid
551
577
  sessionTokenName: string;
552
578
  }): React__default.JSX.Element;
553
579
 
554
- export { AlertContext, AlertProvider, ApiHelper, type AuthContextProps, AuthHelper, Autocomplete, BaseGrid, BaseGridAutoRows, Checkbox, type ColumnTitleProps, type ColumnsProps, CreateAuthProvider, Dialog, DomainError, EditableTableCell, type FilterCompareType, type FilterProps, FormHelperContext, FormHelperProvider, GetInputLabel, Grid, HttpError, type IFilter, Input, InputMask, LargeButton, Modal, Radio, Select, type SortedByProps$1 as SortedByProps, Switch, TabPanel, type TabPanelProps, Td, Tr, createAuthContext, createFilter, filterData, getTabProps, useAlert, useAsyncGrid, useEvent, useFilter, useFormHelper, useGrid, useLoading };
580
+ export { AlertContext, AlertProvider, ApiHelper, type AuthContextProps, AuthHelper, Autocomplete, BaseGrid, BaseGridAutoRows, Checkbox, type ColumnTitleProps, type ColumnsProps, CreateAuthProvider, Dialog, DialogConfirm, DomainError, EditableTableCell, type FilterCompareType, type FilterProps, FormHelperContext, FormHelperProvider, GetInputLabel, Grid, HttpError, type IDialogConfirmProps, type IFilter, Input, InputMask, LargeButton, Modal, Radio, Select, type SortedByProps$1 as SortedByProps, Switch, type TUseDialogConfirm, TabPanel, type TabPanelProps, Td, Tr, UseDialogConfirm, createAuthContext, createFilter, filterData, getTabProps, useAlert, useAsyncGrid, useEvent, useFilter, useFormHelper, useGrid, useLoading };
package/dist/index.js CHANGED
@@ -258,7 +258,7 @@ var require_react_is_development = __commonJS({
258
258
  var Fragment3 = REACT_FRAGMENT_TYPE;
259
259
  var Lazy = REACT_LAZY_TYPE;
260
260
  var Memo = REACT_MEMO_TYPE;
261
- var Portal = REACT_PORTAL_TYPE;
261
+ var Portal2 = REACT_PORTAL_TYPE;
262
262
  var Profiler = REACT_PROFILER_TYPE;
263
263
  var StrictMode = REACT_STRICT_MODE_TYPE;
264
264
  var Suspense = REACT_SUSPENSE_TYPE;
@@ -317,7 +317,7 @@ var require_react_is_development = __commonJS({
317
317
  exports.Fragment = Fragment3;
318
318
  exports.Lazy = Lazy;
319
319
  exports.Memo = Memo;
320
- exports.Portal = Portal;
320
+ exports.Portal = Portal2;
321
321
  exports.Profiler = Profiler;
322
322
  exports.StrictMode = StrictMode;
323
323
  exports.Suspense = Suspense;
@@ -2404,7 +2404,7 @@ function createBox(options = {}) {
2404
2404
  const BoxRoot = styled("div", {
2405
2405
  shouldForwardProp: (prop) => prop !== "theme" && prop !== "sx" && prop !== "as"
2406
2406
  })(styleFunctionSx_default);
2407
- const Box7 = /* @__PURE__ */ React3.forwardRef(function Box8(inProps, ref) {
2407
+ const Box8 = /* @__PURE__ */ React3.forwardRef(function Box9(inProps, ref) {
2408
2408
  const theme = useTheme_default(defaultTheme);
2409
2409
  const _extendSxProp = extendSxProp(inProps), {
2410
2410
  className,
@@ -2417,7 +2417,7 @@ function createBox(options = {}) {
2417
2417
  theme: themeId ? theme[themeId] || theme : theme
2418
2418
  }, other));
2419
2419
  });
2420
- return Box7;
2420
+ return Box8;
2421
2421
  }
2422
2422
 
2423
2423
  // node_modules/@mui/utils/generateUtilityClass/generateUtilityClass.js
@@ -3992,11 +3992,11 @@ function BaseGridAutoRows({
3992
3992
 
3993
3993
 
3994
3994
  var Modal = (_a) => {
3995
- var _b = _a, { open, onClose } = _b, rest = __objRest(_b, ["open", "onClose"]);
3995
+ var _b = _a, { open, onClose, BoxProps: BoxProps3 } = _b, rest = __objRest(_b, ["open", "onClose", "BoxProps"]);
3996
3996
  return /* @__PURE__ */ React2.default.createElement(_material.Modal, __spreadValues({ open, onClose }, rest), /* @__PURE__ */ React2.default.createElement(
3997
3997
  _material.Box,
3998
- {
3999
- sx: {
3998
+ __spreadProps(__spreadValues({}, BoxProps3), {
3999
+ sx: __spreadValues({
4000
4000
  outline: "none",
4001
4001
  backgroundColor: "background.paper",
4002
4002
  position: "absolute",
@@ -4004,9 +4004,9 @@ var Modal = (_a) => {
4004
4004
  left: "50%",
4005
4005
  transform: "translate(-50%, -50%)",
4006
4006
  borderRadius: 1
4007
- }
4008
- },
4009
- /* @__PURE__ */ React2.default.createElement(React2.default.Fragment, null, rest.children)
4007
+ }, BoxProps3 == null ? void 0 : BoxProps3.sx)
4008
+ }),
4009
+ rest.children
4010
4010
  ));
4011
4011
  };
4012
4012
 
@@ -4062,6 +4062,101 @@ var Dialog = (_a) => {
4062
4062
  }))));
4063
4063
  };
4064
4064
 
4065
+ // src/components/DialogConfirm/DialogConfirm.view.tsx
4066
+
4067
+
4068
+ var _colors = require('@mui/material/colors');
4069
+
4070
+
4071
+ // src/components/DialogConfirm/DialogConfirm.model.ts
4072
+
4073
+ function UseDialogConfirm() {
4074
+ const [opened, setOpened] = _react.useState.call(void 0, false);
4075
+ const [isLoading, setLoading] = _react.useState.call(void 0, false);
4076
+ const onConfirmFn = _react.useRef.call(void 0, );
4077
+ const paramsFn = _react.useRef.call(void 0, []);
4078
+ const onConfirm = (fn) => {
4079
+ onConfirmFn.current = fn;
4080
+ return (...params) => __async(this, null, function* () {
4081
+ paramsFn.current = params;
4082
+ setOpened(true);
4083
+ });
4084
+ };
4085
+ const onProceed = (event) => __async(this, null, function* () {
4086
+ event == null ? void 0 : event.preventDefault();
4087
+ event == null ? void 0 : event.stopPropagation();
4088
+ setLoading(true);
4089
+ try {
4090
+ if (!onConfirmFn.current)
4091
+ return;
4092
+ yield onConfirmFn.current(...paramsFn.current);
4093
+ } finally {
4094
+ setOpened(false);
4095
+ setLoading(false);
4096
+ }
4097
+ });
4098
+ const onCancel = (event) => {
4099
+ event == null ? void 0 : event.preventDefault();
4100
+ event == null ? void 0 : event.stopPropagation();
4101
+ setOpened(false);
4102
+ };
4103
+ const onCloseModal = () => {
4104
+ if (isLoading)
4105
+ return;
4106
+ setOpened(false);
4107
+ };
4108
+ return {
4109
+ isLoading,
4110
+ opened,
4111
+ onConfirm,
4112
+ onCloseModal,
4113
+ onCancel,
4114
+ onProceed
4115
+ };
4116
+ }
4117
+
4118
+ // src/components/DialogConfirm/DialogConfirm.view.tsx
4119
+ var DEFAULT_ICON = _md.MdOutlineWarningAmber;
4120
+ var DialogConfirm = (props) => {
4121
+ const model = UseDialogConfirm();
4122
+ const Icon = props.icon || DEFAULT_ICON;
4123
+ return /* @__PURE__ */ React2.default.createElement(React2.default.Fragment, null, props.children({
4124
+ onConfirm: model.onConfirm,
4125
+ onCancel: model.onCancel
4126
+ }), /* @__PURE__ */ React2.default.createElement(_material.Portal, null, /* @__PURE__ */ React2.default.createElement(Modal, { open: model.opened, onClose: model.onCloseModal }, /* @__PURE__ */ React2.default.createElement(_material.Box, { sx: { p: 2, maxWidth: 400, textAlign: "center" } }, /* @__PURE__ */ React2.default.createElement(
4127
+ _material.Stack,
4128
+ {
4129
+ mx: "auto",
4130
+ color: _colors.orange[800],
4131
+ bgcolor: _colors.orange[50],
4132
+ borderRadius: "50%",
4133
+ height: 8 * 5,
4134
+ width: 8 * 5,
4135
+ direction: "row",
4136
+ justifyContent: "center",
4137
+ alignItems: "center"
4138
+ },
4139
+ /* @__PURE__ */ React2.default.createElement(Icon, { size: 8 * 3 })
4140
+ ), /* @__PURE__ */ React2.default.createElement(_material.Typography, { fontWeight: "bold", variant: "h6", mt: 1 }, props.title || "Aten\xE7\xE3o"), /* @__PURE__ */ React2.default.createElement(_material.Typography, { my: 1 }, props.body || "Tem certeza que deseja realizar essa a\xE7\xE3o?"), /* @__PURE__ */ React2.default.createElement(_material.Stack, { gap: 1, mt: 3, color: _colors.grey[600] }, /* @__PURE__ */ React2.default.createElement(
4141
+ LargeButton,
4142
+ {
4143
+ color: "warning",
4144
+ loading: model.isLoading,
4145
+ onClick: model.onProceed
4146
+ },
4147
+ props.confirmButtonText || "Confirmar"
4148
+ ), /* @__PURE__ */ React2.default.createElement(
4149
+ LargeButton,
4150
+ {
4151
+ variant: "outlined",
4152
+ disabled: model.isLoading,
4153
+ onClick: model.onCancel,
4154
+ color: "inherit"
4155
+ },
4156
+ props.cancelButtonText || "Confirmar"
4157
+ ))))));
4158
+ };
4159
+
4065
4160
  // src/errors/HttpError.ts
4066
4161
  var HttpError = class extends Error {
4067
4162
  constructor(status, message) {
@@ -4359,55 +4454,7 @@ function useFormHelper() {
4359
4454
  // src/helpers/authHelper.ts
4360
4455
  var _cookie = require('cookie');
4361
4456
  var _nookies = require('nookies');
4362
-
4363
- // node_modules/uuid/dist/esm-node/rng.js
4364
- var _crypto = require('crypto'); var _crypto2 = _interopRequireDefault(_crypto);
4365
- var rnds8Pool = new Uint8Array(256);
4366
- var poolPtr = rnds8Pool.length;
4367
- function rng() {
4368
- if (poolPtr > rnds8Pool.length - 16) {
4369
- _crypto2.default.randomFillSync(rnds8Pool);
4370
- poolPtr = 0;
4371
- }
4372
- return rnds8Pool.slice(poolPtr, poolPtr += 16);
4373
- }
4374
-
4375
- // node_modules/uuid/dist/esm-node/stringify.js
4376
- var byteToHex = [];
4377
- for (let i = 0; i < 256; ++i) {
4378
- byteToHex.push((i + 256).toString(16).slice(1));
4379
- }
4380
- function unsafeStringify(arr, offset = 0) {
4381
- return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
4382
- }
4383
-
4384
- // node_modules/uuid/dist/esm-node/native.js
4385
-
4386
- var native_default = {
4387
- randomUUID: _crypto2.default.randomUUID
4388
- };
4389
-
4390
- // node_modules/uuid/dist/esm-node/v4.js
4391
- function v4(options, buf, offset) {
4392
- if (native_default.randomUUID && !buf && !options) {
4393
- return native_default.randomUUID();
4394
- }
4395
- options = options || {};
4396
- const rnds = options.random || (options.rng || rng)();
4397
- rnds[6] = rnds[6] & 15 | 64;
4398
- rnds[8] = rnds[8] & 63 | 128;
4399
- if (buf) {
4400
- offset = offset || 0;
4401
- for (let i = 0; i < 16; ++i) {
4402
- buf[offset + i] = rnds[i];
4403
- }
4404
- return buf;
4405
- }
4406
- return unsafeStringify(rnds);
4407
- }
4408
- var v4_default = v4;
4409
-
4410
- // src/helpers/authHelper.ts
4457
+ var _uuid = require('uuid');
4411
4458
  var _jsonwebtoken = require('jsonwebtoken'); var _jsonwebtoken2 = _interopRequireDefault(_jsonwebtoken);
4412
4459
  function decodeSessionToken({
4413
4460
  req,
@@ -4452,7 +4499,7 @@ var AuthHelper = class {
4452
4499
  expiresIn: this.tokenExpTimeInSeconds || 60 * 15
4453
4500
  // 15 minutos
4454
4501
  });
4455
- const uniqueToken = v4_default();
4502
+ const uniqueToken = _uuid.v4.call(void 0, );
4456
4503
  yield this.onCreateRefreshToken(userId, uniqueToken);
4457
4504
  return {
4458
4505
  token,
@@ -4876,8 +4923,15 @@ function useGrid({
4876
4923
  },
4877
4924
  [currentPage]
4878
4925
  );
4926
+ const orderedData = _react.useMemo.call(void 0, () => {
4927
+ if (sortedBy.length === 0)
4928
+ return defaultData;
4929
+ const newData = defaultData.slice(0);
4930
+ const sortedData = sortData(newData);
4931
+ return sortedData;
4932
+ }, [defaultData, sortData, sortedBy]);
4879
4933
  const filteredData = _react.useMemo.call(void 0, () => {
4880
- let newData = defaultData.slice(0);
4934
+ let newData = orderedData.slice(0);
4881
4935
  if (search && search.value !== "") {
4882
4936
  const searchBy = createSearch(search);
4883
4937
  newData = newData.filter(searchBy);
@@ -4886,16 +4940,12 @@ function useGrid({
4886
4940
  return newData;
4887
4941
  const newFilter = createFilter(filters);
4888
4942
  return newData.filter(newFilter.apply);
4889
- }, [defaultData, search, filters]);
4890
- const orderedData = _react.useMemo.call(void 0, () => {
4891
- const sortedData = sortData(filteredData);
4892
- return sortedData;
4893
- }, [filteredData, sortData]);
4943
+ }, [orderedData, search, filters]);
4894
4944
  const paginatedData = _react.useMemo.call(void 0, () => {
4895
4945
  const startPage = currentPage * rowsPerPage;
4896
4946
  const endPage = startPage + rowsPerPage;
4897
- return orderedData.slice(startPage, endPage);
4898
- }, [currentPage, rowsPerPage, orderedData]);
4947
+ return filteredData.slice(startPage, endPage);
4948
+ }, [currentPage, rowsPerPage, filteredData]);
4899
4949
  const totalNumberOfPages = Math.ceil(filteredData.length / rowsPerPage) - 1;
4900
4950
  _react.useEffect.call(void 0, () => {
4901
4951
  if (externalDefaultData)
@@ -5254,7 +5304,9 @@ function CreateAuthProvider({
5254
5304
 
5255
5305
 
5256
5306
 
5257
- exports.AlertContext = AlertContext; exports.AlertProvider = AlertProvider; exports.ApiHelper = ApiHelper; exports.AuthHelper = AuthHelper; exports.Autocomplete = Autocomplete2; exports.BaseGrid = BaseGrid; exports.BaseGridAutoRows = BaseGridAutoRows; exports.Checkbox = Checkbox; exports.CreateAuthProvider = CreateAuthProvider; exports.Dialog = Dialog; exports.DomainError = DomainError; exports.EditableTableCell = EditableTableCell; exports.FormHelperContext = FormHelperContext; exports.FormHelperProvider = FormHelperProvider; exports.GetInputLabel = GetInputLabel; exports.Grid = Grid_default; exports.HttpError = HttpError; exports.Input = Input; exports.InputMask = InputMask2; exports.LargeButton = LargeButton; exports.Modal = Modal; exports.Radio = Radio; exports.Select = Select; exports.Switch = Switch; exports.TabPanel = TabPanel; exports.Td = Td; exports.Tr = Tr; exports.createAuthContext = createAuthContext; exports.createFilter = createFilter; exports.filterData = filterData; exports.getTabProps = getTabProps; exports.useAlert = useAlert; exports.useAsyncGrid = useAsyncGrid; exports.useEvent = useEvent; exports.useFilter = useFilter; exports.useFormHelper = useFormHelper; exports.useGrid = useGrid; exports.useLoading = useLoading;
5307
+
5308
+
5309
+ exports.AlertContext = AlertContext; exports.AlertProvider = AlertProvider; exports.ApiHelper = ApiHelper; exports.AuthHelper = AuthHelper; exports.Autocomplete = Autocomplete2; exports.BaseGrid = BaseGrid; exports.BaseGridAutoRows = BaseGridAutoRows; exports.Checkbox = Checkbox; exports.CreateAuthProvider = CreateAuthProvider; exports.Dialog = Dialog; exports.DialogConfirm = DialogConfirm; exports.DomainError = DomainError; exports.EditableTableCell = EditableTableCell; exports.FormHelperContext = FormHelperContext; exports.FormHelperProvider = FormHelperProvider; exports.GetInputLabel = GetInputLabel; exports.Grid = Grid_default; exports.HttpError = HttpError; exports.Input = Input; exports.InputMask = InputMask2; exports.LargeButton = LargeButton; exports.Modal = Modal; exports.Radio = Radio; exports.Select = Select; exports.Switch = Switch; exports.TabPanel = TabPanel; exports.Td = Td; exports.Tr = Tr; exports.UseDialogConfirm = UseDialogConfirm; exports.createAuthContext = createAuthContext; exports.createFilter = createFilter; exports.filterData = filterData; exports.getTabProps = getTabProps; exports.useAlert = useAlert; exports.useAsyncGrid = useAsyncGrid; exports.useEvent = useEvent; exports.useFilter = useFilter; exports.useFormHelper = useFormHelper; exports.useGrid = useGrid; exports.useLoading = useLoading;
5258
5310
  /*! Bundled license information:
5259
5311
 
5260
5312
  react-is/cjs/react-is.production.min.js: