@mamrp/components 1.0.6 → 1.0.9
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 +18 -9
- package/dist/index.d.ts +18 -9
- package/dist/index.js +181 -125
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +174 -119
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -192,14 +192,6 @@ interface HorizontalStepperProps {
|
|
|
192
192
|
}
|
|
193
193
|
declare function HorizontalStepper({ steps, currentStep, setCurrentStep, }: HorizontalStepperProps): React.JSX.Element;
|
|
194
194
|
|
|
195
|
-
type SwitchWithIconsProps = {
|
|
196
|
-
checked: boolean;
|
|
197
|
-
handleChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
198
|
-
iconChecked: React__default.ReactNode;
|
|
199
|
-
iconUnchecked: React__default.ReactNode;
|
|
200
|
-
};
|
|
201
|
-
declare const SwitchWithIcons: React__default.FC<SwitchWithIconsProps>;
|
|
202
|
-
|
|
203
195
|
interface StateType {
|
|
204
196
|
page: number;
|
|
205
197
|
pageSize: number;
|
|
@@ -282,4 +274,21 @@ declare function Page({ data, }: {
|
|
|
282
274
|
}];
|
|
283
275
|
}): React.JSX.Element;
|
|
284
276
|
|
|
285
|
-
|
|
277
|
+
type SwitchButtonProps = {
|
|
278
|
+
checked: boolean;
|
|
279
|
+
handleChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
280
|
+
iconChecked?: React__default.ReactNode;
|
|
281
|
+
iconUnchecked?: React__default.ReactNode;
|
|
282
|
+
};
|
|
283
|
+
declare const SwitchButton: React__default.FC<SwitchButtonProps>;
|
|
284
|
+
|
|
285
|
+
type ConnectToBasculeButtonProps = {
|
|
286
|
+
baudRate: number;
|
|
287
|
+
dataBits?: number;
|
|
288
|
+
stopBits?: number;
|
|
289
|
+
parity?: "none" | "even" | "odd";
|
|
290
|
+
flowControl?: "none" | "hardware";
|
|
291
|
+
};
|
|
292
|
+
declare const ConnectToBasculeButton: React__default.FC<ConnectToBasculeButtonProps>;
|
|
293
|
+
|
|
294
|
+
export { Page as Accordion, AdvancedSearchButton, ConfirmationDialog$1 as ConfirmationDialog, ConnectToBasculeButton, CustomCheckbox, CustomTimePicker, DateFilter, DateFilterRange, JalaliDatePicker$2 as DatePicker, JalaliDatePicker$1 as DateTimePicker, JalaliDateTimeRangePicker as DateTimeRangePicker, FormInputNumber, FormInputText, HorizontalStepper, LicensePlate, JalaliDatePicker as MobileDateTimePicker, ConfirmationDialog as Modal, NestedSelect as NestedSelectort, NoResult, PaginationList, RadioButton, SearchLicensePlate, MultipleSelectChip as Selector, SkeletonCard, SonarSpinner, SwitchButton, Table, UploadImage };
|
package/dist/index.d.ts
CHANGED
|
@@ -192,14 +192,6 @@ interface HorizontalStepperProps {
|
|
|
192
192
|
}
|
|
193
193
|
declare function HorizontalStepper({ steps, currentStep, setCurrentStep, }: HorizontalStepperProps): React.JSX.Element;
|
|
194
194
|
|
|
195
|
-
type SwitchWithIconsProps = {
|
|
196
|
-
checked: boolean;
|
|
197
|
-
handleChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
198
|
-
iconChecked: React__default.ReactNode;
|
|
199
|
-
iconUnchecked: React__default.ReactNode;
|
|
200
|
-
};
|
|
201
|
-
declare const SwitchWithIcons: React__default.FC<SwitchWithIconsProps>;
|
|
202
|
-
|
|
203
195
|
interface StateType {
|
|
204
196
|
page: number;
|
|
205
197
|
pageSize: number;
|
|
@@ -282,4 +274,21 @@ declare function Page({ data, }: {
|
|
|
282
274
|
}];
|
|
283
275
|
}): React.JSX.Element;
|
|
284
276
|
|
|
285
|
-
|
|
277
|
+
type SwitchButtonProps = {
|
|
278
|
+
checked: boolean;
|
|
279
|
+
handleChange: (event: React__default.ChangeEvent<HTMLInputElement>) => void;
|
|
280
|
+
iconChecked?: React__default.ReactNode;
|
|
281
|
+
iconUnchecked?: React__default.ReactNode;
|
|
282
|
+
};
|
|
283
|
+
declare const SwitchButton: React__default.FC<SwitchButtonProps>;
|
|
284
|
+
|
|
285
|
+
type ConnectToBasculeButtonProps = {
|
|
286
|
+
baudRate: number;
|
|
287
|
+
dataBits?: number;
|
|
288
|
+
stopBits?: number;
|
|
289
|
+
parity?: "none" | "even" | "odd";
|
|
290
|
+
flowControl?: "none" | "hardware";
|
|
291
|
+
};
|
|
292
|
+
declare const ConnectToBasculeButton: React__default.FC<ConnectToBasculeButtonProps>;
|
|
293
|
+
|
|
294
|
+
export { Page as Accordion, AdvancedSearchButton, ConfirmationDialog$1 as ConfirmationDialog, ConnectToBasculeButton, CustomCheckbox, CustomTimePicker, DateFilter, DateFilterRange, JalaliDatePicker$2 as DatePicker, JalaliDatePicker$1 as DateTimePicker, JalaliDateTimeRangePicker as DateTimeRangePicker, FormInputNumber, FormInputText, HorizontalStepper, LicensePlate, JalaliDatePicker as MobileDateTimePicker, ConfirmationDialog as Modal, NestedSelect as NestedSelectort, NoResult, PaginationList, RadioButton, SearchLicensePlate, MultipleSelectChip as Selector, SkeletonCard, SonarSpinner, SwitchButton, Table, UploadImage };
|
package/dist/index.js
CHANGED
|
@@ -33,6 +33,7 @@ __export(src_exports, {
|
|
|
33
33
|
Accordion: () => Page,
|
|
34
34
|
AdvancedSearchButton: () => AdvancedSearchButton,
|
|
35
35
|
ConfirmationDialog: () => ConfirmationDialog,
|
|
36
|
+
ConnectToBasculeButton: () => bascule_connection_button_default,
|
|
36
37
|
CustomCheckbox: () => CustomCheckbox,
|
|
37
38
|
CustomTimePicker: () => CustomTimePicker,
|
|
38
39
|
DateFilter: () => DateFilter,
|
|
@@ -632,7 +633,6 @@ function MultipleSelectChip({
|
|
|
632
633
|
{
|
|
633
634
|
disableClearable: clear,
|
|
634
635
|
disabled: disabled || isLoading,
|
|
635
|
-
disablePortal: true,
|
|
636
636
|
size,
|
|
637
637
|
disableCloseOnSelect: multipleitems,
|
|
638
638
|
options: combinedOptions,
|
|
@@ -2992,88 +2992,12 @@ function HorizontalStepper({
|
|
|
2992
2992
|
)))));
|
|
2993
2993
|
}
|
|
2994
2994
|
|
|
2995
|
-
// src/switch-button/index.tsx
|
|
2996
|
-
var import_material19 = require("@mui/material");
|
|
2997
|
-
var import_system7 = require("@mui/system");
|
|
2998
|
-
var import_react19 = __toESM(require("react"));
|
|
2999
|
-
var CustomSwitch = (0, import_system7.styled)(import_material19.Switch)(({ theme }) => ({
|
|
3000
|
-
"& .MuiSwitch-switchBase.Mui-checked": {
|
|
3001
|
-
color: theme.palette.primary.main
|
|
3002
|
-
},
|
|
3003
|
-
"& .MuiSwitch-switchBase": {
|
|
3004
|
-
color: "#757575"
|
|
3005
|
-
},
|
|
3006
|
-
"& .MuiSwitch-track": {
|
|
3007
|
-
backgroundColor: "#E0E0E0"
|
|
3008
|
-
},
|
|
3009
|
-
"& .MuiSwitch-track.Mui-checked": {
|
|
3010
|
-
backgroundColor: theme.palette.primary.light
|
|
3011
|
-
}
|
|
3012
|
-
}));
|
|
3013
|
-
var BoxContainer = (0, import_system7.styled)(import_material19.Box)(({ theme }) => ({
|
|
3014
|
-
display: "flex",
|
|
3015
|
-
alignItems: "center",
|
|
3016
|
-
padding: "5px",
|
|
3017
|
-
backgroundColor: "#fafafa",
|
|
3018
|
-
borderRadius: "10px",
|
|
3019
|
-
transition: "all 0.3s ease",
|
|
3020
|
-
"&:hover": {
|
|
3021
|
-
backgroundColor: theme.palette.action.hover
|
|
3022
|
-
},
|
|
3023
|
-
// Conditionally apply smaller padding for mobile devices
|
|
3024
|
-
"@media (max-width:700px)": {
|
|
3025
|
-
padding: "0px"
|
|
3026
|
-
// Smaller padding for mobile
|
|
3027
|
-
}
|
|
3028
|
-
}));
|
|
3029
|
-
var LabelContainer = (0, import_system7.styled)("div")({
|
|
3030
|
-
display: "flex",
|
|
3031
|
-
alignItems: "center",
|
|
3032
|
-
justifyContent: "center",
|
|
3033
|
-
fontSize: "16px",
|
|
3034
|
-
fontWeight: "100",
|
|
3035
|
-
color: "#333",
|
|
3036
|
-
marginLeft: "8px",
|
|
3037
|
-
transition: "all 0.2s ease",
|
|
3038
|
-
// Conditionally apply smaller font size and margin for mobile devices
|
|
3039
|
-
"@media (max-width:700px)": {
|
|
3040
|
-
fontSize: "14px",
|
|
3041
|
-
// Smaller font size for mobile
|
|
3042
|
-
marginLeft: "2px",
|
|
3043
|
-
// Smaller margin for mobile
|
|
3044
|
-
marginRight: "0px"
|
|
3045
|
-
// Smaller
|
|
3046
|
-
}
|
|
3047
|
-
});
|
|
3048
|
-
var SwitchWithIcons = ({
|
|
3049
|
-
checked,
|
|
3050
|
-
handleChange,
|
|
3051
|
-
iconChecked,
|
|
3052
|
-
iconUnchecked
|
|
3053
|
-
}) => {
|
|
3054
|
-
return /* @__PURE__ */ import_react19.default.createElement(BoxContainer, null, /* @__PURE__ */ import_react19.default.createElement(
|
|
3055
|
-
import_material19.FormControlLabel,
|
|
3056
|
-
{
|
|
3057
|
-
control: /* @__PURE__ */ import_react19.default.createElement(
|
|
3058
|
-
CustomSwitch,
|
|
3059
|
-
{
|
|
3060
|
-
checked,
|
|
3061
|
-
onChange: handleChange,
|
|
3062
|
-
name: "switch"
|
|
3063
|
-
}
|
|
3064
|
-
),
|
|
3065
|
-
label: /* @__PURE__ */ import_react19.default.createElement(LabelContainer, null, checked ? iconChecked ? iconChecked : /* @__PURE__ */ import_react19.default.createElement("div", { style: { fontSize: 22, color: "#4CAF50" } }, "\u2714") : iconUnchecked ? iconUnchecked : /* @__PURE__ */ import_react19.default.createElement("div", { style: { fontSize: 20, color: "#757575" } }, "\u2718"))
|
|
3066
|
-
}
|
|
3067
|
-
));
|
|
3068
|
-
};
|
|
3069
|
-
var switch_button_default = SwitchWithIcons;
|
|
3070
|
-
|
|
3071
2995
|
// src/table/index.tsx
|
|
3072
|
-
var
|
|
2996
|
+
var import_material19 = require("@mui/material");
|
|
3073
2997
|
var import_Skeleton = __toESM(require("@mui/material/Skeleton"));
|
|
3074
2998
|
var import_styles = require("@mui/material/styles");
|
|
3075
2999
|
var import_x_data_grid = require("@mui/x-data-grid");
|
|
3076
|
-
var
|
|
3000
|
+
var import_react19 = __toESM(require("react"));
|
|
3077
3001
|
var ScrollableContainer = (0, import_styles.styled)("div")({
|
|
3078
3002
|
width: "100%",
|
|
3079
3003
|
overflowX: "auto"
|
|
@@ -3099,7 +3023,7 @@ var Table = ({
|
|
|
3099
3023
|
fontSize,
|
|
3100
3024
|
...rest
|
|
3101
3025
|
}) => {
|
|
3102
|
-
const [sortModel, setSortModel] =
|
|
3026
|
+
const [sortModel, setSortModel] = import_react19.default.useState([]);
|
|
3103
3027
|
const handleSetQueryOptions = (options) => {
|
|
3104
3028
|
if (!Array.isArray(options)) return;
|
|
3105
3029
|
const formattedOptions = options.reduce((acc, item) => {
|
|
@@ -3109,7 +3033,7 @@ var Table = ({
|
|
|
3109
3033
|
}, {});
|
|
3110
3034
|
setsortQuery && setsortQuery(formattedOptions);
|
|
3111
3035
|
};
|
|
3112
|
-
(0,
|
|
3036
|
+
(0, import_react19.useEffect)(() => {
|
|
3113
3037
|
if (sortQuery && Object.keys(sortQuery).length > 0) {
|
|
3114
3038
|
const queryKey = Object.keys(sortQuery)[0];
|
|
3115
3039
|
if (sortFieldMapping) {
|
|
@@ -3127,7 +3051,7 @@ var Table = ({
|
|
|
3127
3051
|
setSortModel([]);
|
|
3128
3052
|
}
|
|
3129
3053
|
}, [sortQuery]);
|
|
3130
|
-
const handleSortModelChange =
|
|
3054
|
+
const handleSortModelChange = import_react19.default.useCallback(
|
|
3131
3055
|
(sortModel2) => {
|
|
3132
3056
|
handleSetQueryOptions(
|
|
3133
3057
|
sortModel2.map((item) => ({
|
|
@@ -3167,7 +3091,7 @@ var Table = ({
|
|
|
3167
3091
|
// Connect paginationModel to DataGrid
|
|
3168
3092
|
}
|
|
3169
3093
|
};
|
|
3170
|
-
return /* @__PURE__ */
|
|
3094
|
+
return /* @__PURE__ */ import_react19.default.createElement(ScrollableContainer, null, /* @__PURE__ */ import_react19.default.createElement(
|
|
3171
3095
|
import_x_data_grid.DataGrid,
|
|
3172
3096
|
{
|
|
3173
3097
|
rows,
|
|
@@ -3212,14 +3136,14 @@ var Table = ({
|
|
|
3212
3136
|
noRowsLabel: "\u0647\u06CC\u0686 \u062F\u0627\u062F\u0647\u200C\u0627\u06CC \u06CC\u0627\u0641\u062A \u0646\u0634\u062F!",
|
|
3213
3137
|
noResultsOverlayLabel: "\u0647\u06CC\u0686 \u062F\u0627\u062F\u0647\u200C\u0627\u06CC \u06CC\u0627\u0641\u062A \u0646\u0634\u062F!",
|
|
3214
3138
|
MuiTablePagination: {
|
|
3215
|
-
labelDisplayedRows: ({ from, to, count }) => loading ? /* @__PURE__ */
|
|
3139
|
+
labelDisplayedRows: ({ from, to, count }) => loading ? /* @__PURE__ */ import_react19.default.createElement(import_react19.default.Fragment, null, /* @__PURE__ */ import_react19.default.createElement(
|
|
3216
3140
|
import_Skeleton.default,
|
|
3217
3141
|
{
|
|
3218
3142
|
variant: "text",
|
|
3219
3143
|
width: 30,
|
|
3220
3144
|
style: { display: "inline-block" }
|
|
3221
3145
|
}
|
|
3222
|
-
), " ", /* @__PURE__ */
|
|
3146
|
+
), " ", /* @__PURE__ */ import_react19.default.createElement(
|
|
3223
3147
|
import_Skeleton.default,
|
|
3224
3148
|
{
|
|
3225
3149
|
variant: "text",
|
|
@@ -3228,7 +3152,7 @@ var Table = ({
|
|
|
3228
3152
|
}
|
|
3229
3153
|
)) : `${from} - ${!isNaN(to) ? to : "..."} \u0627\u0632 ${count !== void 0 ? count : "..."}`
|
|
3230
3154
|
},
|
|
3231
|
-
footerRowSelected: (count) => /* @__PURE__ */
|
|
3155
|
+
footerRowSelected: (count) => /* @__PURE__ */ import_react19.default.createElement(import_material19.Typography, null, "\u0633\u0637\u0631 \u0647\u0627\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647 : ", count)
|
|
3232
3156
|
},
|
|
3233
3157
|
...rest
|
|
3234
3158
|
}
|
|
@@ -3238,12 +3162,12 @@ var table_default = Table;
|
|
|
3238
3162
|
|
|
3239
3163
|
// src/text-field/number-type/index.tsx
|
|
3240
3164
|
var import_TextField2 = __toESM(require("@mui/material/TextField"));
|
|
3241
|
-
var
|
|
3165
|
+
var import_react20 = require("react");
|
|
3242
3166
|
var import_react_hook_form11 = require("react-hook-form");
|
|
3243
3167
|
var import_react_number_format = require("react-number-format");
|
|
3244
3168
|
var import_CircularProgress2 = __toESM(require("@mui/material/CircularProgress"));
|
|
3245
3169
|
var import_InputAdornment = __toESM(require("@mui/material/InputAdornment"));
|
|
3246
|
-
var
|
|
3170
|
+
var import_react21 = __toESM(require("react"));
|
|
3247
3171
|
var FormInputNumber = ({
|
|
3248
3172
|
name,
|
|
3249
3173
|
control,
|
|
@@ -3261,13 +3185,13 @@ var FormInputNumber = ({
|
|
|
3261
3185
|
decimalScale = 2,
|
|
3262
3186
|
...rest
|
|
3263
3187
|
}) => {
|
|
3264
|
-
return /* @__PURE__ */
|
|
3188
|
+
return /* @__PURE__ */ import_react21.default.createElement(
|
|
3265
3189
|
import_react_hook_form11.Controller,
|
|
3266
3190
|
{
|
|
3267
3191
|
rules,
|
|
3268
3192
|
name,
|
|
3269
3193
|
control,
|
|
3270
|
-
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */
|
|
3194
|
+
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */ import_react21.default.createElement(
|
|
3271
3195
|
import_TextField2.default,
|
|
3272
3196
|
{
|
|
3273
3197
|
disabled: isLoading,
|
|
@@ -3307,7 +3231,7 @@ var FormInputNumber = ({
|
|
|
3307
3231
|
maxLength,
|
|
3308
3232
|
decimalScale
|
|
3309
3233
|
},
|
|
3310
|
-
endAdornment: isLoading ? /* @__PURE__ */
|
|
3234
|
+
endAdornment: isLoading ? /* @__PURE__ */ import_react21.default.createElement(import_InputAdornment.default, { position: "end" }, /* @__PURE__ */ import_react21.default.createElement(import_CircularProgress2.default, { size: 20 })) : null,
|
|
3311
3235
|
startAdornment
|
|
3312
3236
|
},
|
|
3313
3237
|
...rest
|
|
@@ -3316,7 +3240,7 @@ var FormInputNumber = ({
|
|
|
3316
3240
|
}
|
|
3317
3241
|
);
|
|
3318
3242
|
};
|
|
3319
|
-
var NumericFormatCustom = (0,
|
|
3243
|
+
var NumericFormatCustom = (0, import_react20.forwardRef)(
|
|
3320
3244
|
function NumericFormatCustom2(props, ref) {
|
|
3321
3245
|
const {
|
|
3322
3246
|
onChange,
|
|
@@ -3327,7 +3251,7 @@ var NumericFormatCustom = (0, import_react21.forwardRef)(
|
|
|
3327
3251
|
decimalScale,
|
|
3328
3252
|
...other
|
|
3329
3253
|
} = props;
|
|
3330
|
-
return /* @__PURE__ */
|
|
3254
|
+
return /* @__PURE__ */ import_react21.default.createElement(
|
|
3331
3255
|
import_react_number_format.NumericFormat,
|
|
3332
3256
|
{
|
|
3333
3257
|
...other,
|
|
@@ -3358,7 +3282,7 @@ var number_type_default = FormInputNumber;
|
|
|
3358
3282
|
var import_CircularProgress3 = __toESM(require("@mui/material/CircularProgress"));
|
|
3359
3283
|
var import_InputAdornment2 = __toESM(require("@mui/material/InputAdornment"));
|
|
3360
3284
|
var import_TextField3 = __toESM(require("@mui/material/TextField"));
|
|
3361
|
-
var
|
|
3285
|
+
var import_react22 = __toESM(require("react"));
|
|
3362
3286
|
var import_react_hook_form12 = require("react-hook-form");
|
|
3363
3287
|
var FormInputText = ({
|
|
3364
3288
|
name,
|
|
@@ -3375,13 +3299,13 @@ var FormInputText = ({
|
|
|
3375
3299
|
rows,
|
|
3376
3300
|
...rest
|
|
3377
3301
|
}) => {
|
|
3378
|
-
return /* @__PURE__ */
|
|
3302
|
+
return /* @__PURE__ */ import_react22.default.createElement(
|
|
3379
3303
|
import_react_hook_form12.Controller,
|
|
3380
3304
|
{
|
|
3381
3305
|
name,
|
|
3382
3306
|
control,
|
|
3383
3307
|
rules,
|
|
3384
|
-
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */
|
|
3308
|
+
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */ import_react22.default.createElement(
|
|
3385
3309
|
import_TextField3.default,
|
|
3386
3310
|
{
|
|
3387
3311
|
disabled: disabled || isLoading,
|
|
@@ -3401,7 +3325,7 @@ var FormInputText = ({
|
|
|
3401
3325
|
readOnly
|
|
3402
3326
|
},
|
|
3403
3327
|
InputProps: {
|
|
3404
|
-
endAdornment: isLoading ? /* @__PURE__ */
|
|
3328
|
+
endAdornment: isLoading ? /* @__PURE__ */ import_react22.default.createElement(import_InputAdornment2.default, { position: "end" }, /* @__PURE__ */ import_react22.default.createElement(import_CircularProgress3.default, { size: 20 })) : null
|
|
3405
3329
|
},
|
|
3406
3330
|
InputLabelProps: { shrink: true },
|
|
3407
3331
|
inputRef: ref,
|
|
@@ -3414,9 +3338,9 @@ var FormInputText = ({
|
|
|
3414
3338
|
var text_type_default = FormInputText;
|
|
3415
3339
|
|
|
3416
3340
|
// src/upload-image/index.tsx
|
|
3417
|
-
var
|
|
3341
|
+
var import_react23 = __toESM(require("react"));
|
|
3418
3342
|
var import_react_hook_form13 = require("react-hook-form");
|
|
3419
|
-
var
|
|
3343
|
+
var import_material20 = require("@mui/material");
|
|
3420
3344
|
var import_gr = require("react-icons/gr");
|
|
3421
3345
|
var import_md5 = require("react-icons/md");
|
|
3422
3346
|
var import_image3 = __toESM(require("next/image"));
|
|
@@ -3489,12 +3413,12 @@ var UploadImage = ({
|
|
|
3489
3413
|
}
|
|
3490
3414
|
}
|
|
3491
3415
|
};
|
|
3492
|
-
return /* @__PURE__ */
|
|
3416
|
+
return /* @__PURE__ */ import_react23.default.createElement(
|
|
3493
3417
|
import_react_hook_form13.Controller,
|
|
3494
3418
|
{
|
|
3495
3419
|
name,
|
|
3496
3420
|
control,
|
|
3497
|
-
render: ({ field }) => /* @__PURE__ */
|
|
3421
|
+
render: ({ field }) => /* @__PURE__ */ import_react23.default.createElement(import_react23.default.Fragment, null, /* @__PURE__ */ import_react23.default.createElement(
|
|
3498
3422
|
"label",
|
|
3499
3423
|
{
|
|
3500
3424
|
htmlFor: "file-upload",
|
|
@@ -3514,7 +3438,7 @@ var UploadImage = ({
|
|
|
3514
3438
|
overflow: "hidden"
|
|
3515
3439
|
}
|
|
3516
3440
|
},
|
|
3517
|
-
selectedImage ? /* @__PURE__ */
|
|
3441
|
+
selectedImage ? /* @__PURE__ */ import_react23.default.createElement(
|
|
3518
3442
|
import_image3.default,
|
|
3519
3443
|
{
|
|
3520
3444
|
src: selectedImage,
|
|
@@ -3522,14 +3446,14 @@ var UploadImage = ({
|
|
|
3522
3446
|
fill: true,
|
|
3523
3447
|
objectFit: imageFit
|
|
3524
3448
|
}
|
|
3525
|
-
) : /* @__PURE__ */
|
|
3526
|
-
|
|
3449
|
+
) : /* @__PURE__ */ import_react23.default.createElement(
|
|
3450
|
+
import_material20.Stack,
|
|
3527
3451
|
{
|
|
3528
3452
|
spacing: allowGallery ? 2 : 0,
|
|
3529
3453
|
sx: { pt: allowGallery ? 2 : 0 }
|
|
3530
3454
|
},
|
|
3531
|
-
/* @__PURE__ */
|
|
3532
|
-
|
|
3455
|
+
/* @__PURE__ */ import_react23.default.createElement(
|
|
3456
|
+
import_material20.Box,
|
|
3533
3457
|
{
|
|
3534
3458
|
sx: {
|
|
3535
3459
|
display: "flex",
|
|
@@ -3538,31 +3462,31 @@ var UploadImage = ({
|
|
|
3538
3462
|
gap: 1.5
|
|
3539
3463
|
}
|
|
3540
3464
|
},
|
|
3541
|
-
/* @__PURE__ */
|
|
3465
|
+
/* @__PURE__ */ import_react23.default.createElement(import_material20.Box, { sx: { paddingBottom: "0.5rem" } }, /* @__PURE__ */ import_react23.default.createElement(import_gr.GrUpload, null)),
|
|
3542
3466
|
placeholder
|
|
3543
3467
|
),
|
|
3544
|
-
allowGallery && /* @__PURE__ */
|
|
3545
|
-
|
|
3468
|
+
allowGallery && /* @__PURE__ */ import_react23.default.createElement(import_material20.Stack, { spacing: 1.5 }, /* @__PURE__ */ import_react23.default.createElement(
|
|
3469
|
+
import_material20.Button,
|
|
3546
3470
|
{
|
|
3547
3471
|
sx: { width: "9rem" },
|
|
3548
3472
|
variant: "outlined",
|
|
3549
3473
|
color: "info",
|
|
3550
|
-
startIcon: /* @__PURE__ */
|
|
3474
|
+
startIcon: /* @__PURE__ */ import_react23.default.createElement(import_md5.MdOutlineCameraAlt, { size: 16 }),
|
|
3551
3475
|
onClick: () => document.getElementById("camera-upload")?.click()
|
|
3552
3476
|
},
|
|
3553
3477
|
"\u0628\u0627\u0631\u06AF\u0630\u0627\u0631\u06CC \u0627\u0632 \u062F\u0648\u0631\u0628\u06CC\u0646"
|
|
3554
|
-
), /* @__PURE__ */
|
|
3555
|
-
|
|
3478
|
+
), /* @__PURE__ */ import_react23.default.createElement(
|
|
3479
|
+
import_material20.Button,
|
|
3556
3480
|
{
|
|
3557
3481
|
sx: { width: "9rem" },
|
|
3558
3482
|
variant: "outlined",
|
|
3559
3483
|
color: "info",
|
|
3560
|
-
startIcon: /* @__PURE__ */
|
|
3484
|
+
startIcon: /* @__PURE__ */ import_react23.default.createElement(import_gr.GrGallery, { size: 16 }),
|
|
3561
3485
|
onClick: () => document.getElementById("gallery-upload")?.click()
|
|
3562
3486
|
},
|
|
3563
3487
|
"\u0628\u0627\u0631\u06AF\u0630\u0627\u0631\u06CC \u0627\u0632 \u06AF\u0627\u0644\u0631\u06CC"
|
|
3564
3488
|
)),
|
|
3565
|
-
!allowGallery && /* @__PURE__ */
|
|
3489
|
+
!allowGallery && /* @__PURE__ */ import_react23.default.createElement(
|
|
3566
3490
|
"input",
|
|
3567
3491
|
{
|
|
3568
3492
|
id: "file-upload",
|
|
@@ -3577,7 +3501,7 @@ var UploadImage = ({
|
|
|
3577
3501
|
}
|
|
3578
3502
|
)
|
|
3579
3503
|
)
|
|
3580
|
-
), /* @__PURE__ */
|
|
3504
|
+
), /* @__PURE__ */ import_react23.default.createElement(
|
|
3581
3505
|
"input",
|
|
3582
3506
|
{
|
|
3583
3507
|
id: "gallery-upload",
|
|
@@ -3589,7 +3513,7 @@ var UploadImage = ({
|
|
|
3589
3513
|
},
|
|
3590
3514
|
style: { display: "none" }
|
|
3591
3515
|
}
|
|
3592
|
-
), /* @__PURE__ */
|
|
3516
|
+
), /* @__PURE__ */ import_react23.default.createElement(
|
|
3593
3517
|
"input",
|
|
3594
3518
|
{
|
|
3595
3519
|
id: "camera-upload",
|
|
@@ -3602,13 +3526,13 @@ var UploadImage = ({
|
|
|
3602
3526
|
},
|
|
3603
3527
|
style: { display: "none" }
|
|
3604
3528
|
}
|
|
3605
|
-
), selectedImage && /* @__PURE__ */
|
|
3606
|
-
|
|
3529
|
+
), selectedImage && /* @__PURE__ */ import_react23.default.createElement(
|
|
3530
|
+
import_material20.Box,
|
|
3607
3531
|
{
|
|
3608
3532
|
sx: { display: "flex", justifyContent: "center", marginTop: 2 }
|
|
3609
3533
|
},
|
|
3610
|
-
/* @__PURE__ */
|
|
3611
|
-
|
|
3534
|
+
/* @__PURE__ */ import_react23.default.createElement(
|
|
3535
|
+
import_material20.Button,
|
|
3612
3536
|
{
|
|
3613
3537
|
onClick: () => {
|
|
3614
3538
|
setSelectedImage(null);
|
|
@@ -3627,7 +3551,7 @@ var UploadImage = ({
|
|
|
3627
3551
|
},
|
|
3628
3552
|
"\u062D\u0630\u0641 \u062A\u0635\u0648\u06CC\u0631"
|
|
3629
3553
|
)
|
|
3630
|
-
), errors[name] && /* @__PURE__ */
|
|
3554
|
+
), errors[name] && /* @__PURE__ */ import_react23.default.createElement(import_material20.Typography, { color: "error", variant: "body2", sx: { mt: 1.5, ml: 1 } }, String(errors[name]?.message || "")))
|
|
3631
3555
|
}
|
|
3632
3556
|
);
|
|
3633
3557
|
};
|
|
@@ -3639,8 +3563,8 @@ var import_io2 = require("react-icons/io");
|
|
|
3639
3563
|
var import_Accordion = __toESM(require("@mui/material/Accordion"));
|
|
3640
3564
|
var import_AccordionSummary = __toESM(require("@mui/material/AccordionSummary"));
|
|
3641
3565
|
var import_AccordionDetails = __toESM(require("@mui/material/AccordionDetails"));
|
|
3642
|
-
var
|
|
3643
|
-
var
|
|
3566
|
+
var import_material21 = require("@mui/material");
|
|
3567
|
+
var import_react24 = require("react");
|
|
3644
3568
|
function Page({
|
|
3645
3569
|
data
|
|
3646
3570
|
}) {
|
|
@@ -3670,7 +3594,7 @@ function Page({
|
|
|
3670
3594
|
padding: theme.spacing(2),
|
|
3671
3595
|
borderTop: "1px solid rgba(0, 0, 0, .125)"
|
|
3672
3596
|
}));
|
|
3673
|
-
const [expanded, setExpanded] = (0,
|
|
3597
|
+
const [expanded, setExpanded] = (0, import_react24.useState)("");
|
|
3674
3598
|
const handleChange = (panel) => (event, newExpanded) => {
|
|
3675
3599
|
setExpanded(newExpanded ? panel : false);
|
|
3676
3600
|
};
|
|
@@ -3694,17 +3618,149 @@ function Page({
|
|
|
3694
3618
|
}
|
|
3695
3619
|
}
|
|
3696
3620
|
},
|
|
3697
|
-
/* @__PURE__ */ React.createElement(
|
|
3621
|
+
/* @__PURE__ */ React.createElement(import_material21.Typography, { component: "span" }, item.title)
|
|
3698
3622
|
),
|
|
3699
3623
|
/* @__PURE__ */ React.createElement(AccordionDetails, null, item.body)
|
|
3700
3624
|
);
|
|
3701
3625
|
}));
|
|
3702
3626
|
}
|
|
3627
|
+
|
|
3628
|
+
// src/switch-button/index.tsx
|
|
3629
|
+
var import_material22 = require("@mui/material");
|
|
3630
|
+
var import_system7 = require("@mui/system");
|
|
3631
|
+
var import_react25 = __toESM(require("react"));
|
|
3632
|
+
var import_pi = require("react-icons/pi");
|
|
3633
|
+
var import_material23 = require("@mui/material");
|
|
3634
|
+
var SwitchButton = ({
|
|
3635
|
+
checked,
|
|
3636
|
+
handleChange,
|
|
3637
|
+
iconChecked,
|
|
3638
|
+
iconUnchecked
|
|
3639
|
+
}) => {
|
|
3640
|
+
const theme = (0, import_material23.useTheme)();
|
|
3641
|
+
const isDarkMode = theme.palette.mode === "dark";
|
|
3642
|
+
const CustomSwitch = (0, import_system7.styled)(import_material22.Switch)(({ theme: theme2 }) => ({
|
|
3643
|
+
"& .MuiSwitch-switchBase.Mui-checked": {
|
|
3644
|
+
color: theme2.palette.primary.main
|
|
3645
|
+
},
|
|
3646
|
+
"& .MuiSwitch-switchBase": {
|
|
3647
|
+
color: isDarkMode ? "rgba(220,220,220,1)" : "rgba(188,188,188,1)"
|
|
3648
|
+
},
|
|
3649
|
+
"& .MuiSwitch-track": {
|
|
3650
|
+
// backgroundColor: "rgba(160,160,160, 0.1)",
|
|
3651
|
+
backgroundColor: "#fff",
|
|
3652
|
+
border: isDarkMode ? "2px solid white" : "2px solid rgba(80,80,80, 1)"
|
|
3653
|
+
}
|
|
3654
|
+
}));
|
|
3655
|
+
const BoxContainer = (0, import_system7.styled)(import_material22.Box)(({ theme: theme2 }) => ({
|
|
3656
|
+
display: "flex",
|
|
3657
|
+
alignItems: "center",
|
|
3658
|
+
backgroundColor: "rgba(188,188,188, 0.1)",
|
|
3659
|
+
border: "2px solid rgba(200,200,200, 1)",
|
|
3660
|
+
borderRadius: 10,
|
|
3661
|
+
transition: "all 0.3s ease",
|
|
3662
|
+
paddingTop: theme2.spacing(0.1),
|
|
3663
|
+
paddingBottom: theme2.spacing(0.1),
|
|
3664
|
+
paddingLeft: theme2.spacing(1)
|
|
3665
|
+
}));
|
|
3666
|
+
const LabelContainer = (0, import_system7.styled)("div")({
|
|
3667
|
+
transition: "all 0.2s ease",
|
|
3668
|
+
color: isDarkMode ? "rgba(220,220,220, 1)" : "rgba(160,160,160, 1)"
|
|
3669
|
+
});
|
|
3670
|
+
return /* @__PURE__ */ import_react25.default.createElement(BoxContainer, null, /* @__PURE__ */ import_react25.default.createElement(
|
|
3671
|
+
import_material22.FormControlLabel,
|
|
3672
|
+
{
|
|
3673
|
+
control: /* @__PURE__ */ import_react25.default.createElement(
|
|
3674
|
+
CustomSwitch,
|
|
3675
|
+
{
|
|
3676
|
+
checked,
|
|
3677
|
+
onChange: handleChange,
|
|
3678
|
+
name: "switch"
|
|
3679
|
+
}
|
|
3680
|
+
),
|
|
3681
|
+
label: /* @__PURE__ */ import_react25.default.createElement(LabelContainer, null, checked ? iconChecked ? iconChecked : /* @__PURE__ */ import_react25.default.createElement(import_pi.PiTableDuotone, { size: 30 }) : iconUnchecked ? iconUnchecked : /* @__PURE__ */ import_react25.default.createElement(import_pi.PiCardsDuotone, { size: 30 }))
|
|
3682
|
+
}
|
|
3683
|
+
));
|
|
3684
|
+
};
|
|
3685
|
+
var switch_button_default = SwitchButton;
|
|
3686
|
+
|
|
3687
|
+
// src/bascule-connection-button/index.tsx
|
|
3688
|
+
var import_material24 = require("@mui/material");
|
|
3689
|
+
var import_react26 = __toESM(require("react"));
|
|
3690
|
+
var import_react_hot_toast = __toESM(require("react-hot-toast"));
|
|
3691
|
+
var import_pi2 = require("react-icons/pi");
|
|
3692
|
+
var ConnectToBasculeButton = ({
|
|
3693
|
+
baudRate,
|
|
3694
|
+
dataBits = 8,
|
|
3695
|
+
stopBits = 1,
|
|
3696
|
+
parity = "none",
|
|
3697
|
+
flowControl = "none"
|
|
3698
|
+
}) => {
|
|
3699
|
+
const [connected, setConnected] = (0, import_react26.useState)(false);
|
|
3700
|
+
const portRef = (0, import_react26.useRef)(null);
|
|
3701
|
+
const connectToBascule = async () => {
|
|
3702
|
+
if (!("serial" in navigator)) {
|
|
3703
|
+
import_react_hot_toast.default.error("Web Serial API \u062A\u0648\u0633\u0637 \u0627\u06CC\u0646 \u0645\u0631\u0648\u0631\u06AF\u0631 \u067E\u0634\u062A\u06CC\u0628\u0627\u0646\u06CC \u0646\u0645\u06CC\u200C\u0634\u0648\u062F.");
|
|
3704
|
+
return;
|
|
3705
|
+
}
|
|
3706
|
+
try {
|
|
3707
|
+
const serial = navigator.serial;
|
|
3708
|
+
const port = await serial.requestPort();
|
|
3709
|
+
await port.open({ baudRate, dataBits, stopBits, parity, flowControl });
|
|
3710
|
+
portRef.current = port;
|
|
3711
|
+
setConnected(true);
|
|
3712
|
+
import_react_hot_toast.default.success("\u0627\u062A\u0635\u0627\u0644 \u0628\u0647 \u0628\u0627\u0633\u06A9\u0648\u0644 \u0628\u0627 \u0645\u0648\u0641\u0642\u06CC\u062A \u0627\u0646\u062C\u0627\u0645 \u0634\u062F.");
|
|
3713
|
+
} catch (error) {
|
|
3714
|
+
console.error(error);
|
|
3715
|
+
import_react_hot_toast.default.error("\u062E\u0637\u0627 \u062F\u0631 \u0627\u062A\u0635\u0627\u0644 \u0628\u0647 \u0628\u0627\u0633\u06A9\u0648\u0644. \u0644\u0637\u0641\u0627\u064B \u062F\u0648\u0628\u0627\u0631\u0647 \u062A\u0644\u0627\u0634 \u06A9\u0646\u06CC\u062F.");
|
|
3716
|
+
}
|
|
3717
|
+
};
|
|
3718
|
+
return /* @__PURE__ */ import_react26.default.createElement(import_react26.default.Fragment, null, /* @__PURE__ */ import_react26.default.createElement("style", null, `
|
|
3719
|
+
@keyframes jumpAnimation {
|
|
3720
|
+
0% { transform: translateY(1px); }
|
|
3721
|
+
12.5% { transform: translateY(-2px); }
|
|
3722
|
+
25% { transform: translateY(1px); }
|
|
3723
|
+
37.5% { transform: translateY(-2px); }
|
|
3724
|
+
50% { transform: translateY(0); }
|
|
3725
|
+
100% { transform: translateY(0); }
|
|
3726
|
+
}
|
|
3727
|
+
`), /* @__PURE__ */ import_react26.default.createElement(
|
|
3728
|
+
import_material24.Button,
|
|
3729
|
+
{
|
|
3730
|
+
variant: "contained",
|
|
3731
|
+
onClick: connectToBascule,
|
|
3732
|
+
disabled: connected,
|
|
3733
|
+
sx: { minWidth: "11rem" }
|
|
3734
|
+
},
|
|
3735
|
+
/* @__PURE__ */ import_react26.default.createElement(
|
|
3736
|
+
import_material24.Box,
|
|
3737
|
+
{
|
|
3738
|
+
sx: {
|
|
3739
|
+
display: "flex",
|
|
3740
|
+
alignItems: "center",
|
|
3741
|
+
gap: 1,
|
|
3742
|
+
fontSize: 16
|
|
3743
|
+
}
|
|
3744
|
+
},
|
|
3745
|
+
connected ? /* @__PURE__ */ import_react26.default.createElement(import_react26.default.Fragment, null, "\u0645\u062A\u0635\u0644 \u0628\u0647 \u0628\u0627\u0633\u06A9\u0648\u0644", /* @__PURE__ */ import_react26.default.createElement(import_pi2.PiPlugsConnected, { size: 20 })) : /* @__PURE__ */ import_react26.default.createElement(import_react26.default.Fragment, null, "\u0627\u062A\u0635\u0627\u0644 \u0628\u0647 \u0628\u0627\u0633\u06A9\u0648\u0644", /* @__PURE__ */ import_react26.default.createElement(
|
|
3746
|
+
import_pi2.PiPlugs,
|
|
3747
|
+
{
|
|
3748
|
+
size: 20,
|
|
3749
|
+
style: {
|
|
3750
|
+
animation: "jumpAnimation 2s ease-in-out infinite"
|
|
3751
|
+
}
|
|
3752
|
+
}
|
|
3753
|
+
))
|
|
3754
|
+
)
|
|
3755
|
+
));
|
|
3756
|
+
};
|
|
3757
|
+
var bascule_connection_button_default = ConnectToBasculeButton;
|
|
3703
3758
|
// Annotate the CommonJS export names for ESM import in node:
|
|
3704
3759
|
0 && (module.exports = {
|
|
3705
3760
|
Accordion,
|
|
3706
3761
|
AdvancedSearchButton,
|
|
3707
3762
|
ConfirmationDialog,
|
|
3763
|
+
ConnectToBasculeButton,
|
|
3708
3764
|
CustomCheckbox,
|
|
3709
3765
|
CustomTimePicker,
|
|
3710
3766
|
DateFilter,
|