@bluemarble/bm-components 1.16.0 → 1.16.2
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 +26 -1
- package/dist/index.d.ts +26 -1
- package/dist/index.js +114 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +149 -49
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -4,6 +4,7 @@ import * as _mui_material from '@mui/material';
|
|
|
4
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';
|
|
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';
|
|
@@ -329,6 +330,30 @@ interface DialogCustomProps extends DialogProps {
|
|
|
329
330
|
}
|
|
330
331
|
declare const Dialog: ({ open, title, loading, body, options, ...rest }: DialogCustomProps) => React__default.JSX.Element;
|
|
331
332
|
|
|
333
|
+
interface IDialogChildrenProps {
|
|
334
|
+
onConfirm: (fn: (...params: any[]) => Promise<void>) => (...params: any[]) => Promise<void>;
|
|
335
|
+
onCancel: () => void;
|
|
336
|
+
}
|
|
337
|
+
interface IDialogConfirmProps {
|
|
338
|
+
icon?: IconType;
|
|
339
|
+
title?: string;
|
|
340
|
+
body?: string;
|
|
341
|
+
children: (props: IDialogChildrenProps) => ReactNode;
|
|
342
|
+
confirmButtonText?: string;
|
|
343
|
+
cancelButtonText?: string;
|
|
344
|
+
}
|
|
345
|
+
type TUseDialogConfirm = ReturnType<typeof UseDialogConfirm>;
|
|
346
|
+
declare function UseDialogConfirm(): {
|
|
347
|
+
isLoading: boolean;
|
|
348
|
+
opened: boolean;
|
|
349
|
+
onConfirm: (fn: (...params: any) => Promise<any>) => (...params: any[]) => Promise<void>;
|
|
350
|
+
onCloseModal: () => void;
|
|
351
|
+
onCancel: (event?: any) => void;
|
|
352
|
+
onProceed: (event: any) => Promise<void>;
|
|
353
|
+
};
|
|
354
|
+
|
|
355
|
+
declare const DialogConfirm: (props: IDialogConfirmProps) => React__default.JSX.Element;
|
|
356
|
+
|
|
332
357
|
declare class HttpError extends Error {
|
|
333
358
|
status: number;
|
|
334
359
|
constructor(status: number, message: any);
|
|
@@ -551,4 +576,4 @@ declare function CreateAuthProvider<T>({ api, children, sessionTokenName, Provid
|
|
|
551
576
|
sessionTokenName: string;
|
|
552
577
|
}): React__default.JSX.Element;
|
|
553
578
|
|
|
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 };
|
|
579
|
+
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
|
@@ -4,6 +4,7 @@ import * as _mui_material from '@mui/material';
|
|
|
4
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';
|
|
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';
|
|
@@ -329,6 +330,30 @@ interface DialogCustomProps extends DialogProps {
|
|
|
329
330
|
}
|
|
330
331
|
declare const Dialog: ({ open, title, loading, body, options, ...rest }: DialogCustomProps) => React__default.JSX.Element;
|
|
331
332
|
|
|
333
|
+
interface IDialogChildrenProps {
|
|
334
|
+
onConfirm: (fn: (...params: any[]) => Promise<void>) => (...params: any[]) => Promise<void>;
|
|
335
|
+
onCancel: () => void;
|
|
336
|
+
}
|
|
337
|
+
interface IDialogConfirmProps {
|
|
338
|
+
icon?: IconType;
|
|
339
|
+
title?: string;
|
|
340
|
+
body?: string;
|
|
341
|
+
children: (props: IDialogChildrenProps) => ReactNode;
|
|
342
|
+
confirmButtonText?: string;
|
|
343
|
+
cancelButtonText?: string;
|
|
344
|
+
}
|
|
345
|
+
type TUseDialogConfirm = ReturnType<typeof UseDialogConfirm>;
|
|
346
|
+
declare function UseDialogConfirm(): {
|
|
347
|
+
isLoading: boolean;
|
|
348
|
+
opened: boolean;
|
|
349
|
+
onConfirm: (fn: (...params: any) => Promise<any>) => (...params: any[]) => Promise<void>;
|
|
350
|
+
onCloseModal: () => void;
|
|
351
|
+
onCancel: (event?: any) => void;
|
|
352
|
+
onProceed: (event: any) => Promise<void>;
|
|
353
|
+
};
|
|
354
|
+
|
|
355
|
+
declare const DialogConfirm: (props: IDialogConfirmProps) => React__default.JSX.Element;
|
|
356
|
+
|
|
332
357
|
declare class HttpError extends Error {
|
|
333
358
|
status: number;
|
|
334
359
|
constructor(status: number, message: any);
|
|
@@ -551,4 +576,4 @@ declare function CreateAuthProvider<T>({ api, children, sessionTokenName, Provid
|
|
|
551
576
|
sessionTokenName: string;
|
|
552
577
|
}): React__default.JSX.Element;
|
|
553
578
|
|
|
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 };
|
|
579
|
+
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
|
|
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 =
|
|
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
|
|
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
|
|
2420
|
+
return Box8;
|
|
2421
2421
|
}
|
|
2422
2422
|
|
|
2423
2423
|
// node_modules/@mui/utils/generateUtilityClass/generateUtilityClass.js
|
|
@@ -3202,7 +3202,7 @@ var BaseInputMask = (_a) => {
|
|
|
3202
3202
|
const { ref, value, setValue, maskRef, unmaskedValue } = _reactimask.useIMask.call(void 0,
|
|
3203
3203
|
mask,
|
|
3204
3204
|
{
|
|
3205
|
-
|
|
3205
|
+
onAccept: (...params) => {
|
|
3206
3206
|
if (onChangeValue)
|
|
3207
3207
|
onChangeValue(params[0], unmaskedValue);
|
|
3208
3208
|
}
|
|
@@ -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) {
|
|
@@ -4876,8 +4971,15 @@ function useGrid({
|
|
|
4876
4971
|
},
|
|
4877
4972
|
[currentPage]
|
|
4878
4973
|
);
|
|
4974
|
+
const orderedData = _react.useMemo.call(void 0, () => {
|
|
4975
|
+
if (sortedBy.length === 0)
|
|
4976
|
+
return defaultData;
|
|
4977
|
+
const newData = defaultData.slice(0);
|
|
4978
|
+
const sortedData = sortData(newData);
|
|
4979
|
+
return sortedData;
|
|
4980
|
+
}, [defaultData, sortData, sortedBy]);
|
|
4879
4981
|
const filteredData = _react.useMemo.call(void 0, () => {
|
|
4880
|
-
let newData =
|
|
4982
|
+
let newData = orderedData.slice(0);
|
|
4881
4983
|
if (search && search.value !== "") {
|
|
4882
4984
|
const searchBy = createSearch(search);
|
|
4883
4985
|
newData = newData.filter(searchBy);
|
|
@@ -4886,16 +4988,12 @@ function useGrid({
|
|
|
4886
4988
|
return newData;
|
|
4887
4989
|
const newFilter = createFilter(filters);
|
|
4888
4990
|
return newData.filter(newFilter.apply);
|
|
4889
|
-
}, [
|
|
4890
|
-
const orderedData = _react.useMemo.call(void 0, () => {
|
|
4891
|
-
const sortedData = sortData(filteredData);
|
|
4892
|
-
return sortedData;
|
|
4893
|
-
}, [filteredData, sortData]);
|
|
4991
|
+
}, [orderedData, search, filters]);
|
|
4894
4992
|
const paginatedData = _react.useMemo.call(void 0, () => {
|
|
4895
4993
|
const startPage = currentPage * rowsPerPage;
|
|
4896
4994
|
const endPage = startPage + rowsPerPage;
|
|
4897
|
-
return
|
|
4898
|
-
}, [currentPage, rowsPerPage,
|
|
4995
|
+
return filteredData.slice(startPage, endPage);
|
|
4996
|
+
}, [currentPage, rowsPerPage, filteredData]);
|
|
4899
4997
|
const totalNumberOfPages = Math.ceil(filteredData.length / rowsPerPage) - 1;
|
|
4900
4998
|
_react.useEffect.call(void 0, () => {
|
|
4901
4999
|
if (externalDefaultData)
|
|
@@ -5254,7 +5352,9 @@ function CreateAuthProvider({
|
|
|
5254
5352
|
|
|
5255
5353
|
|
|
5256
5354
|
|
|
5257
|
-
|
|
5355
|
+
|
|
5356
|
+
|
|
5357
|
+
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
5358
|
/*! Bundled license information:
|
|
5259
5359
|
|
|
5260
5360
|
react-is/cjs/react-is.production.min.js:
|