@mamrp/components 1.0.7 → 1.0.10
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 -124
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +174 -118
- 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,
|
|
@@ -2991,88 +2992,12 @@ function HorizontalStepper({
|
|
|
2991
2992
|
)))));
|
|
2992
2993
|
}
|
|
2993
2994
|
|
|
2994
|
-
// src/switch-button/index.tsx
|
|
2995
|
-
var import_material19 = require("@mui/material");
|
|
2996
|
-
var import_system7 = require("@mui/system");
|
|
2997
|
-
var import_react19 = __toESM(require("react"));
|
|
2998
|
-
var CustomSwitch = (0, import_system7.styled)(import_material19.Switch)(({ theme }) => ({
|
|
2999
|
-
"& .MuiSwitch-switchBase.Mui-checked": {
|
|
3000
|
-
color: theme.palette.primary.main
|
|
3001
|
-
},
|
|
3002
|
-
"& .MuiSwitch-switchBase": {
|
|
3003
|
-
color: "#757575"
|
|
3004
|
-
},
|
|
3005
|
-
"& .MuiSwitch-track": {
|
|
3006
|
-
backgroundColor: "#E0E0E0"
|
|
3007
|
-
},
|
|
3008
|
-
"& .MuiSwitch-track.Mui-checked": {
|
|
3009
|
-
backgroundColor: theme.palette.primary.light
|
|
3010
|
-
}
|
|
3011
|
-
}));
|
|
3012
|
-
var BoxContainer = (0, import_system7.styled)(import_material19.Box)(({ theme }) => ({
|
|
3013
|
-
display: "flex",
|
|
3014
|
-
alignItems: "center",
|
|
3015
|
-
padding: "5px",
|
|
3016
|
-
backgroundColor: "#fafafa",
|
|
3017
|
-
borderRadius: "10px",
|
|
3018
|
-
transition: "all 0.3s ease",
|
|
3019
|
-
"&:hover": {
|
|
3020
|
-
backgroundColor: theme.palette.action.hover
|
|
3021
|
-
},
|
|
3022
|
-
// Conditionally apply smaller padding for mobile devices
|
|
3023
|
-
"@media (max-width:700px)": {
|
|
3024
|
-
padding: "0px"
|
|
3025
|
-
// Smaller padding for mobile
|
|
3026
|
-
}
|
|
3027
|
-
}));
|
|
3028
|
-
var LabelContainer = (0, import_system7.styled)("div")({
|
|
3029
|
-
display: "flex",
|
|
3030
|
-
alignItems: "center",
|
|
3031
|
-
justifyContent: "center",
|
|
3032
|
-
fontSize: "16px",
|
|
3033
|
-
fontWeight: "100",
|
|
3034
|
-
color: "#333",
|
|
3035
|
-
marginLeft: "8px",
|
|
3036
|
-
transition: "all 0.2s ease",
|
|
3037
|
-
// Conditionally apply smaller font size and margin for mobile devices
|
|
3038
|
-
"@media (max-width:700px)": {
|
|
3039
|
-
fontSize: "14px",
|
|
3040
|
-
// Smaller font size for mobile
|
|
3041
|
-
marginLeft: "2px",
|
|
3042
|
-
// Smaller margin for mobile
|
|
3043
|
-
marginRight: "0px"
|
|
3044
|
-
// Smaller
|
|
3045
|
-
}
|
|
3046
|
-
});
|
|
3047
|
-
var SwitchWithIcons = ({
|
|
3048
|
-
checked,
|
|
3049
|
-
handleChange,
|
|
3050
|
-
iconChecked,
|
|
3051
|
-
iconUnchecked
|
|
3052
|
-
}) => {
|
|
3053
|
-
return /* @__PURE__ */ import_react19.default.createElement(BoxContainer, null, /* @__PURE__ */ import_react19.default.createElement(
|
|
3054
|
-
import_material19.FormControlLabel,
|
|
3055
|
-
{
|
|
3056
|
-
control: /* @__PURE__ */ import_react19.default.createElement(
|
|
3057
|
-
CustomSwitch,
|
|
3058
|
-
{
|
|
3059
|
-
checked,
|
|
3060
|
-
onChange: handleChange,
|
|
3061
|
-
name: "switch"
|
|
3062
|
-
}
|
|
3063
|
-
),
|
|
3064
|
-
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"))
|
|
3065
|
-
}
|
|
3066
|
-
));
|
|
3067
|
-
};
|
|
3068
|
-
var switch_button_default = SwitchWithIcons;
|
|
3069
|
-
|
|
3070
2995
|
// src/table/index.tsx
|
|
3071
|
-
var
|
|
2996
|
+
var import_material19 = require("@mui/material");
|
|
3072
2997
|
var import_Skeleton = __toESM(require("@mui/material/Skeleton"));
|
|
3073
2998
|
var import_styles = require("@mui/material/styles");
|
|
3074
2999
|
var import_x_data_grid = require("@mui/x-data-grid");
|
|
3075
|
-
var
|
|
3000
|
+
var import_react19 = __toESM(require("react"));
|
|
3076
3001
|
var ScrollableContainer = (0, import_styles.styled)("div")({
|
|
3077
3002
|
width: "100%",
|
|
3078
3003
|
overflowX: "auto"
|
|
@@ -3098,7 +3023,7 @@ var Table = ({
|
|
|
3098
3023
|
fontSize,
|
|
3099
3024
|
...rest
|
|
3100
3025
|
}) => {
|
|
3101
|
-
const [sortModel, setSortModel] =
|
|
3026
|
+
const [sortModel, setSortModel] = import_react19.default.useState([]);
|
|
3102
3027
|
const handleSetQueryOptions = (options) => {
|
|
3103
3028
|
if (!Array.isArray(options)) return;
|
|
3104
3029
|
const formattedOptions = options.reduce((acc, item) => {
|
|
@@ -3108,7 +3033,7 @@ var Table = ({
|
|
|
3108
3033
|
}, {});
|
|
3109
3034
|
setsortQuery && setsortQuery(formattedOptions);
|
|
3110
3035
|
};
|
|
3111
|
-
(0,
|
|
3036
|
+
(0, import_react19.useEffect)(() => {
|
|
3112
3037
|
if (sortQuery && Object.keys(sortQuery).length > 0) {
|
|
3113
3038
|
const queryKey = Object.keys(sortQuery)[0];
|
|
3114
3039
|
if (sortFieldMapping) {
|
|
@@ -3126,7 +3051,7 @@ var Table = ({
|
|
|
3126
3051
|
setSortModel([]);
|
|
3127
3052
|
}
|
|
3128
3053
|
}, [sortQuery]);
|
|
3129
|
-
const handleSortModelChange =
|
|
3054
|
+
const handleSortModelChange = import_react19.default.useCallback(
|
|
3130
3055
|
(sortModel2) => {
|
|
3131
3056
|
handleSetQueryOptions(
|
|
3132
3057
|
sortModel2.map((item) => ({
|
|
@@ -3166,7 +3091,7 @@ var Table = ({
|
|
|
3166
3091
|
// Connect paginationModel to DataGrid
|
|
3167
3092
|
}
|
|
3168
3093
|
};
|
|
3169
|
-
return /* @__PURE__ */
|
|
3094
|
+
return /* @__PURE__ */ import_react19.default.createElement(ScrollableContainer, null, /* @__PURE__ */ import_react19.default.createElement(
|
|
3170
3095
|
import_x_data_grid.DataGrid,
|
|
3171
3096
|
{
|
|
3172
3097
|
rows,
|
|
@@ -3211,14 +3136,14 @@ var Table = ({
|
|
|
3211
3136
|
noRowsLabel: "\u0647\u06CC\u0686 \u062F\u0627\u062F\u0647\u200C\u0627\u06CC \u06CC\u0627\u0641\u062A \u0646\u0634\u062F!",
|
|
3212
3137
|
noResultsOverlayLabel: "\u0647\u06CC\u0686 \u062F\u0627\u062F\u0647\u200C\u0627\u06CC \u06CC\u0627\u0641\u062A \u0646\u0634\u062F!",
|
|
3213
3138
|
MuiTablePagination: {
|
|
3214
|
-
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(
|
|
3215
3140
|
import_Skeleton.default,
|
|
3216
3141
|
{
|
|
3217
3142
|
variant: "text",
|
|
3218
3143
|
width: 30,
|
|
3219
3144
|
style: { display: "inline-block" }
|
|
3220
3145
|
}
|
|
3221
|
-
), " ", /* @__PURE__ */
|
|
3146
|
+
), " ", /* @__PURE__ */ import_react19.default.createElement(
|
|
3222
3147
|
import_Skeleton.default,
|
|
3223
3148
|
{
|
|
3224
3149
|
variant: "text",
|
|
@@ -3227,7 +3152,7 @@ var Table = ({
|
|
|
3227
3152
|
}
|
|
3228
3153
|
)) : `${from} - ${!isNaN(to) ? to : "..."} \u0627\u0632 ${count !== void 0 ? count : "..."}`
|
|
3229
3154
|
},
|
|
3230
|
-
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)
|
|
3231
3156
|
},
|
|
3232
3157
|
...rest
|
|
3233
3158
|
}
|
|
@@ -3237,12 +3162,12 @@ var table_default = Table;
|
|
|
3237
3162
|
|
|
3238
3163
|
// src/text-field/number-type/index.tsx
|
|
3239
3164
|
var import_TextField2 = __toESM(require("@mui/material/TextField"));
|
|
3240
|
-
var
|
|
3165
|
+
var import_react20 = require("react");
|
|
3241
3166
|
var import_react_hook_form11 = require("react-hook-form");
|
|
3242
3167
|
var import_react_number_format = require("react-number-format");
|
|
3243
3168
|
var import_CircularProgress2 = __toESM(require("@mui/material/CircularProgress"));
|
|
3244
3169
|
var import_InputAdornment = __toESM(require("@mui/material/InputAdornment"));
|
|
3245
|
-
var
|
|
3170
|
+
var import_react21 = __toESM(require("react"));
|
|
3246
3171
|
var FormInputNumber = ({
|
|
3247
3172
|
name,
|
|
3248
3173
|
control,
|
|
@@ -3260,13 +3185,13 @@ var FormInputNumber = ({
|
|
|
3260
3185
|
decimalScale = 2,
|
|
3261
3186
|
...rest
|
|
3262
3187
|
}) => {
|
|
3263
|
-
return /* @__PURE__ */
|
|
3188
|
+
return /* @__PURE__ */ import_react21.default.createElement(
|
|
3264
3189
|
import_react_hook_form11.Controller,
|
|
3265
3190
|
{
|
|
3266
3191
|
rules,
|
|
3267
3192
|
name,
|
|
3268
3193
|
control,
|
|
3269
|
-
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */
|
|
3194
|
+
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */ import_react21.default.createElement(
|
|
3270
3195
|
import_TextField2.default,
|
|
3271
3196
|
{
|
|
3272
3197
|
disabled: isLoading,
|
|
@@ -3306,7 +3231,7 @@ var FormInputNumber = ({
|
|
|
3306
3231
|
maxLength,
|
|
3307
3232
|
decimalScale
|
|
3308
3233
|
},
|
|
3309
|
-
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,
|
|
3310
3235
|
startAdornment
|
|
3311
3236
|
},
|
|
3312
3237
|
...rest
|
|
@@ -3315,7 +3240,7 @@ var FormInputNumber = ({
|
|
|
3315
3240
|
}
|
|
3316
3241
|
);
|
|
3317
3242
|
};
|
|
3318
|
-
var NumericFormatCustom = (0,
|
|
3243
|
+
var NumericFormatCustom = (0, import_react20.forwardRef)(
|
|
3319
3244
|
function NumericFormatCustom2(props, ref) {
|
|
3320
3245
|
const {
|
|
3321
3246
|
onChange,
|
|
@@ -3326,7 +3251,7 @@ var NumericFormatCustom = (0, import_react21.forwardRef)(
|
|
|
3326
3251
|
decimalScale,
|
|
3327
3252
|
...other
|
|
3328
3253
|
} = props;
|
|
3329
|
-
return /* @__PURE__ */
|
|
3254
|
+
return /* @__PURE__ */ import_react21.default.createElement(
|
|
3330
3255
|
import_react_number_format.NumericFormat,
|
|
3331
3256
|
{
|
|
3332
3257
|
...other,
|
|
@@ -3357,7 +3282,7 @@ var number_type_default = FormInputNumber;
|
|
|
3357
3282
|
var import_CircularProgress3 = __toESM(require("@mui/material/CircularProgress"));
|
|
3358
3283
|
var import_InputAdornment2 = __toESM(require("@mui/material/InputAdornment"));
|
|
3359
3284
|
var import_TextField3 = __toESM(require("@mui/material/TextField"));
|
|
3360
|
-
var
|
|
3285
|
+
var import_react22 = __toESM(require("react"));
|
|
3361
3286
|
var import_react_hook_form12 = require("react-hook-form");
|
|
3362
3287
|
var FormInputText = ({
|
|
3363
3288
|
name,
|
|
@@ -3374,13 +3299,13 @@ var FormInputText = ({
|
|
|
3374
3299
|
rows,
|
|
3375
3300
|
...rest
|
|
3376
3301
|
}) => {
|
|
3377
|
-
return /* @__PURE__ */
|
|
3302
|
+
return /* @__PURE__ */ import_react22.default.createElement(
|
|
3378
3303
|
import_react_hook_form12.Controller,
|
|
3379
3304
|
{
|
|
3380
3305
|
name,
|
|
3381
3306
|
control,
|
|
3382
3307
|
rules,
|
|
3383
|
-
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */
|
|
3308
|
+
render: ({ field: { onChange, value, ref }, fieldState: { error } }) => /* @__PURE__ */ import_react22.default.createElement(
|
|
3384
3309
|
import_TextField3.default,
|
|
3385
3310
|
{
|
|
3386
3311
|
disabled: disabled || isLoading,
|
|
@@ -3400,7 +3325,7 @@ var FormInputText = ({
|
|
|
3400
3325
|
readOnly
|
|
3401
3326
|
},
|
|
3402
3327
|
InputProps: {
|
|
3403
|
-
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
|
|
3404
3329
|
},
|
|
3405
3330
|
InputLabelProps: { shrink: true },
|
|
3406
3331
|
inputRef: ref,
|
|
@@ -3413,9 +3338,9 @@ var FormInputText = ({
|
|
|
3413
3338
|
var text_type_default = FormInputText;
|
|
3414
3339
|
|
|
3415
3340
|
// src/upload-image/index.tsx
|
|
3416
|
-
var
|
|
3341
|
+
var import_react23 = __toESM(require("react"));
|
|
3417
3342
|
var import_react_hook_form13 = require("react-hook-form");
|
|
3418
|
-
var
|
|
3343
|
+
var import_material20 = require("@mui/material");
|
|
3419
3344
|
var import_gr = require("react-icons/gr");
|
|
3420
3345
|
var import_md5 = require("react-icons/md");
|
|
3421
3346
|
var import_image3 = __toESM(require("next/image"));
|
|
@@ -3488,12 +3413,12 @@ var UploadImage = ({
|
|
|
3488
3413
|
}
|
|
3489
3414
|
}
|
|
3490
3415
|
};
|
|
3491
|
-
return /* @__PURE__ */
|
|
3416
|
+
return /* @__PURE__ */ import_react23.default.createElement(
|
|
3492
3417
|
import_react_hook_form13.Controller,
|
|
3493
3418
|
{
|
|
3494
3419
|
name,
|
|
3495
3420
|
control,
|
|
3496
|
-
render: ({ field }) => /* @__PURE__ */
|
|
3421
|
+
render: ({ field }) => /* @__PURE__ */ import_react23.default.createElement(import_react23.default.Fragment, null, /* @__PURE__ */ import_react23.default.createElement(
|
|
3497
3422
|
"label",
|
|
3498
3423
|
{
|
|
3499
3424
|
htmlFor: "file-upload",
|
|
@@ -3513,7 +3438,7 @@ var UploadImage = ({
|
|
|
3513
3438
|
overflow: "hidden"
|
|
3514
3439
|
}
|
|
3515
3440
|
},
|
|
3516
|
-
selectedImage ? /* @__PURE__ */
|
|
3441
|
+
selectedImage ? /* @__PURE__ */ import_react23.default.createElement(
|
|
3517
3442
|
import_image3.default,
|
|
3518
3443
|
{
|
|
3519
3444
|
src: selectedImage,
|
|
@@ -3521,14 +3446,14 @@ var UploadImage = ({
|
|
|
3521
3446
|
fill: true,
|
|
3522
3447
|
objectFit: imageFit
|
|
3523
3448
|
}
|
|
3524
|
-
) : /* @__PURE__ */
|
|
3525
|
-
|
|
3449
|
+
) : /* @__PURE__ */ import_react23.default.createElement(
|
|
3450
|
+
import_material20.Stack,
|
|
3526
3451
|
{
|
|
3527
3452
|
spacing: allowGallery ? 2 : 0,
|
|
3528
3453
|
sx: { pt: allowGallery ? 2 : 0 }
|
|
3529
3454
|
},
|
|
3530
|
-
/* @__PURE__ */
|
|
3531
|
-
|
|
3455
|
+
/* @__PURE__ */ import_react23.default.createElement(
|
|
3456
|
+
import_material20.Box,
|
|
3532
3457
|
{
|
|
3533
3458
|
sx: {
|
|
3534
3459
|
display: "flex",
|
|
@@ -3537,31 +3462,31 @@ var UploadImage = ({
|
|
|
3537
3462
|
gap: 1.5
|
|
3538
3463
|
}
|
|
3539
3464
|
},
|
|
3540
|
-
/* @__PURE__ */
|
|
3465
|
+
/* @__PURE__ */ import_react23.default.createElement(import_material20.Box, { sx: { paddingBottom: "0.5rem" } }, /* @__PURE__ */ import_react23.default.createElement(import_gr.GrUpload, null)),
|
|
3541
3466
|
placeholder
|
|
3542
3467
|
),
|
|
3543
|
-
allowGallery && /* @__PURE__ */
|
|
3544
|
-
|
|
3468
|
+
allowGallery && /* @__PURE__ */ import_react23.default.createElement(import_material20.Stack, { spacing: 1.5 }, /* @__PURE__ */ import_react23.default.createElement(
|
|
3469
|
+
import_material20.Button,
|
|
3545
3470
|
{
|
|
3546
3471
|
sx: { width: "9rem" },
|
|
3547
3472
|
variant: "outlined",
|
|
3548
3473
|
color: "info",
|
|
3549
|
-
startIcon: /* @__PURE__ */
|
|
3474
|
+
startIcon: /* @__PURE__ */ import_react23.default.createElement(import_md5.MdOutlineCameraAlt, { size: 16 }),
|
|
3550
3475
|
onClick: () => document.getElementById("camera-upload")?.click()
|
|
3551
3476
|
},
|
|
3552
3477
|
"\u0628\u0627\u0631\u06AF\u0630\u0627\u0631\u06CC \u0627\u0632 \u062F\u0648\u0631\u0628\u06CC\u0646"
|
|
3553
|
-
), /* @__PURE__ */
|
|
3554
|
-
|
|
3478
|
+
), /* @__PURE__ */ import_react23.default.createElement(
|
|
3479
|
+
import_material20.Button,
|
|
3555
3480
|
{
|
|
3556
3481
|
sx: { width: "9rem" },
|
|
3557
3482
|
variant: "outlined",
|
|
3558
3483
|
color: "info",
|
|
3559
|
-
startIcon: /* @__PURE__ */
|
|
3484
|
+
startIcon: /* @__PURE__ */ import_react23.default.createElement(import_gr.GrGallery, { size: 16 }),
|
|
3560
3485
|
onClick: () => document.getElementById("gallery-upload")?.click()
|
|
3561
3486
|
},
|
|
3562
3487
|
"\u0628\u0627\u0631\u06AF\u0630\u0627\u0631\u06CC \u0627\u0632 \u06AF\u0627\u0644\u0631\u06CC"
|
|
3563
3488
|
)),
|
|
3564
|
-
!allowGallery && /* @__PURE__ */
|
|
3489
|
+
!allowGallery && /* @__PURE__ */ import_react23.default.createElement(
|
|
3565
3490
|
"input",
|
|
3566
3491
|
{
|
|
3567
3492
|
id: "file-upload",
|
|
@@ -3576,7 +3501,7 @@ var UploadImage = ({
|
|
|
3576
3501
|
}
|
|
3577
3502
|
)
|
|
3578
3503
|
)
|
|
3579
|
-
), /* @__PURE__ */
|
|
3504
|
+
), /* @__PURE__ */ import_react23.default.createElement(
|
|
3580
3505
|
"input",
|
|
3581
3506
|
{
|
|
3582
3507
|
id: "gallery-upload",
|
|
@@ -3588,7 +3513,7 @@ var UploadImage = ({
|
|
|
3588
3513
|
},
|
|
3589
3514
|
style: { display: "none" }
|
|
3590
3515
|
}
|
|
3591
|
-
), /* @__PURE__ */
|
|
3516
|
+
), /* @__PURE__ */ import_react23.default.createElement(
|
|
3592
3517
|
"input",
|
|
3593
3518
|
{
|
|
3594
3519
|
id: "camera-upload",
|
|
@@ -3601,13 +3526,13 @@ var UploadImage = ({
|
|
|
3601
3526
|
},
|
|
3602
3527
|
style: { display: "none" }
|
|
3603
3528
|
}
|
|
3604
|
-
), selectedImage && /* @__PURE__ */
|
|
3605
|
-
|
|
3529
|
+
), selectedImage && /* @__PURE__ */ import_react23.default.createElement(
|
|
3530
|
+
import_material20.Box,
|
|
3606
3531
|
{
|
|
3607
3532
|
sx: { display: "flex", justifyContent: "center", marginTop: 2 }
|
|
3608
3533
|
},
|
|
3609
|
-
/* @__PURE__ */
|
|
3610
|
-
|
|
3534
|
+
/* @__PURE__ */ import_react23.default.createElement(
|
|
3535
|
+
import_material20.Button,
|
|
3611
3536
|
{
|
|
3612
3537
|
onClick: () => {
|
|
3613
3538
|
setSelectedImage(null);
|
|
@@ -3626,7 +3551,7 @@ var UploadImage = ({
|
|
|
3626
3551
|
},
|
|
3627
3552
|
"\u062D\u0630\u0641 \u062A\u0635\u0648\u06CC\u0631"
|
|
3628
3553
|
)
|
|
3629
|
-
), 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 || "")))
|
|
3630
3555
|
}
|
|
3631
3556
|
);
|
|
3632
3557
|
};
|
|
@@ -3638,8 +3563,8 @@ var import_io2 = require("react-icons/io");
|
|
|
3638
3563
|
var import_Accordion = __toESM(require("@mui/material/Accordion"));
|
|
3639
3564
|
var import_AccordionSummary = __toESM(require("@mui/material/AccordionSummary"));
|
|
3640
3565
|
var import_AccordionDetails = __toESM(require("@mui/material/AccordionDetails"));
|
|
3641
|
-
var
|
|
3642
|
-
var
|
|
3566
|
+
var import_material21 = require("@mui/material");
|
|
3567
|
+
var import_react24 = require("react");
|
|
3643
3568
|
function Page({
|
|
3644
3569
|
data
|
|
3645
3570
|
}) {
|
|
@@ -3669,7 +3594,7 @@ function Page({
|
|
|
3669
3594
|
padding: theme.spacing(2),
|
|
3670
3595
|
borderTop: "1px solid rgba(0, 0, 0, .125)"
|
|
3671
3596
|
}));
|
|
3672
|
-
const [expanded, setExpanded] = (0,
|
|
3597
|
+
const [expanded, setExpanded] = (0, import_react24.useState)("");
|
|
3673
3598
|
const handleChange = (panel) => (event, newExpanded) => {
|
|
3674
3599
|
setExpanded(newExpanded ? panel : false);
|
|
3675
3600
|
};
|
|
@@ -3693,17 +3618,149 @@ function Page({
|
|
|
3693
3618
|
}
|
|
3694
3619
|
}
|
|
3695
3620
|
},
|
|
3696
|
-
/* @__PURE__ */ React.createElement(
|
|
3621
|
+
/* @__PURE__ */ React.createElement(import_material21.Typography, { component: "span" }, item.title)
|
|
3697
3622
|
),
|
|
3698
3623
|
/* @__PURE__ */ React.createElement(AccordionDetails, null, item.body)
|
|
3699
3624
|
);
|
|
3700
3625
|
}));
|
|
3701
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;
|
|
3702
3758
|
// Annotate the CommonJS export names for ESM import in node:
|
|
3703
3759
|
0 && (module.exports = {
|
|
3704
3760
|
Accordion,
|
|
3705
3761
|
AdvancedSearchButton,
|
|
3706
3762
|
ConfirmationDialog,
|
|
3763
|
+
ConnectToBasculeButton,
|
|
3707
3764
|
CustomCheckbox,
|
|
3708
3765
|
CustomTimePicker,
|
|
3709
3766
|
DateFilter,
|