@dartcom/ui-kit 10.1.16 → 10.1.18
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/components/buttons/edit/edit.d.ts.map +1 -1
- package/dist/components/buttons/index.d.ts +1 -0
- package/dist/components/buttons/index.d.ts.map +1 -1
- package/dist/components/buttons/move/index.d.ts +2 -0
- package/dist/components/buttons/move/index.d.ts.map +1 -0
- package/dist/components/buttons/move/move.d.ts +5 -0
- package/dist/components/buttons/move/move.d.ts.map +1 -0
- package/dist/components/buttons/move/move.stories.d.ts +8 -0
- package/dist/components/buttons/move/move.stories.d.ts.map +1 -0
- package/dist/components/buttons/move/types.d.ts +5 -0
- package/dist/components/buttons/move/types.d.ts.map +1 -0
- package/dist/components/layers/leaflet/config/constants.d.ts +3 -1
- package/dist/components/layers/leaflet/config/constants.d.ts.map +1 -1
- package/dist/components/layers/leaflet/config/index.d.ts +1 -0
- package/dist/components/layers/leaflet/config/index.d.ts.map +1 -1
- package/dist/components/layers/leaflet/config/styles.d.ts +3 -0
- package/dist/components/layers/leaflet/config/styles.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/POI/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/admin-area/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/building/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/camera/config/constants.d.ts +8 -0
- package/dist/components/layers/leaflet/layers/camera/config/constants.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/config/index.d.ts +2 -0
- package/dist/components/layers/leaflet/layers/camera/config/index.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/index.d.ts +3 -1
- package/dist/components/layers/leaflet/layers/camera/index.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/camera/lib/index.d.ts +3 -0
- package/dist/components/layers/leaflet/layers/camera/lib/index.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/lib/types.d.ts +20 -0
- package/dist/components/layers/leaflet/layers/camera/lib/types.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/lib/utils.d.ts +3 -0
- package/dist/components/layers/leaflet/layers/camera/lib/utils.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/create.d.ts +5 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/create.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/create.stories.d.ts +7 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/create.stories.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/index.d.ts +3 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/index.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/schema.d.ts +4 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/schema.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/types.d.ts +6 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/create/types.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/index.d.ts +3 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/index.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/schema.d.ts +16 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/schema.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/index.d.ts +3 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/index.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/schema.d.ts +4 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/schema.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/types.d.ts +9 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/types.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/update.d.ts +5 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/update.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/update.stories.d.ts +7 -0
- package/dist/components/layers/leaflet/layers/camera/ui/forms/update/update.stories.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/ui/index.d.ts +2 -0
- package/dist/components/layers/leaflet/layers/camera/ui/index.d.ts.map +1 -0
- package/dist/components/layers/leaflet/layers/camera/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/city-POI/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/condition/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/facility-area/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/landuse-area/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/link/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/nature-field/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/nature-forest/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/ocean-area/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/one-way/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/pillar/config/constants.d.ts +4 -2
- package/dist/components/layers/leaflet/layers/pillar/config/constants.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/pillar/lib/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/railroad/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-sign/lib/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-sign/traffic-sign-dop/ui/forms/create/create.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-sign/traffic-sign-dop/ui/forms/update/update.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-sign/ui/forms/create/create.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-sign/ui/forms/update/types.d.ts +1 -0
- package/dist/components/layers/leaflet/layers/traffic-sign/ui/forms/update/types.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-sign/ui/forms/update/update.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-signal/lib/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-signal/ui/forms/create/create.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-signal/ui/forms/update/types.d.ts +1 -0
- package/dist/components/layers/leaflet/layers/traffic-signal/ui/forms/update/types.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/traffic-signal/ui/forms/update/update.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/water-area/utils.d.ts.map +1 -1
- package/dist/components/layers/leaflet/layers/water-link/utils.d.ts.map +1 -1
- package/dist/index.cjs +211 -94
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +4 -4
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -7,6 +7,7 @@ var DeleteIcon = require('@mui/icons-material/Delete');
|
|
|
7
7
|
var EditIcon = require('@mui/icons-material/Edit');
|
|
8
8
|
var IconButton = require('@mui/material/IconButton');
|
|
9
9
|
var CloudUploadIcon = require('@mui/icons-material/CloudUpload');
|
|
10
|
+
var MovingIcon = require('@mui/icons-material/Moving');
|
|
10
11
|
var Checkbox = require('@mui/material/Checkbox');
|
|
11
12
|
var FormControlLabel = require('@mui/material/FormControlLabel');
|
|
12
13
|
var styles$2 = require('@mui/material/styles');
|
|
@@ -100,7 +101,7 @@ const DeleteButton = ({ notification, onDelete, }) => {
|
|
|
100
101
|
|
|
101
102
|
const EditButton = (props) => {
|
|
102
103
|
const buttonId = React__namespace.useId();
|
|
103
|
-
return (jsxRuntime.jsx(
|
|
104
|
+
return (jsxRuntime.jsx(material.IconButton, { id: buttonId, ...props, children: jsxRuntime.jsx(EditIcon, { fontSize: "small", color: "primary" }) }));
|
|
104
105
|
};
|
|
105
106
|
|
|
106
107
|
const Button = (props) => {
|
|
@@ -140,6 +141,14 @@ const UploadButton = ({ children, accept, onFilesLoad, ...props }) => {
|
|
|
140
141
|
}, multiple: true })] }));
|
|
141
142
|
};
|
|
142
143
|
|
|
144
|
+
const MoveButton = ({ title, ...props }) => {
|
|
145
|
+
const buttonId = React__namespace.useId();
|
|
146
|
+
if (title) {
|
|
147
|
+
return (jsxRuntime.jsx(material.Tooltip, { title: title, children: jsxRuntime.jsx(material.IconButton, { id: buttonId, ...props, children: jsxRuntime.jsx(MovingIcon, { fontSize: "medium", color: "primary" }) }) }));
|
|
148
|
+
}
|
|
149
|
+
return (jsxRuntime.jsx(material.IconButton, { id: buttonId, ...props, children: jsxRuntime.jsx(MovingIcon, { fontSize: "medium", color: "primary" }) }));
|
|
150
|
+
};
|
|
151
|
+
|
|
143
152
|
var isCheckBoxInput = (element) => element.type === 'checkbox';
|
|
144
153
|
|
|
145
154
|
var isDateObject = (value) => value instanceof Date;
|
|
@@ -15499,6 +15508,7 @@ const trafficStatusOptions = Object.values(exports.TrafficStatus).map((status) =
|
|
|
15499
15508
|
const trafficTitles = {
|
|
15500
15509
|
traffic_signal_id: '',
|
|
15501
15510
|
traffic_sign_id: '',
|
|
15511
|
+
camera_id: '',
|
|
15502
15512
|
dit_id: '',
|
|
15503
15513
|
dop_id: '',
|
|
15504
15514
|
tsodd_id: '',
|
|
@@ -15507,6 +15517,7 @@ const trafficTitles = {
|
|
|
15507
15517
|
signal_model: 'Модель',
|
|
15508
15518
|
comment: 'Комментарий',
|
|
15509
15519
|
direction: 'Направление',
|
|
15520
|
+
status: 'Статус',
|
|
15510
15521
|
traffic_sign_number: 'Номер знака',
|
|
15511
15522
|
traffic_sign_title: 'Название знака',
|
|
15512
15523
|
traffic_sign_value: 'Значение',
|
|
@@ -15518,10 +15529,11 @@ const trafficTitles = {
|
|
|
15518
15529
|
rapair_performed_date: 'Дата последнего ремонта',
|
|
15519
15530
|
verification_date: 'Дата поверки',
|
|
15520
15531
|
warranty_expr_date: 'Дата окончания гарантии',
|
|
15521
|
-
status: 'Статус',
|
|
15522
15532
|
dop_sign_number: 'Номер знака',
|
|
15523
15533
|
dop_sign_text: 'Текст на табличке',
|
|
15524
15534
|
dop_sign_title: 'Название знака',
|
|
15535
|
+
camera_model: 'Модель',
|
|
15536
|
+
fixing_type: 'Тип',
|
|
15525
15537
|
};
|
|
15526
15538
|
const layerDateFormat = 'dd.MM.yyyy';
|
|
15527
15539
|
|
|
@@ -17932,7 +17944,7 @@ class ObjectSchema extends Schema {
|
|
|
17932
17944
|
}
|
|
17933
17945
|
create$3.prototype = ObjectSchema.prototype;
|
|
17934
17946
|
|
|
17935
|
-
function create$2(type) {
|
|
17947
|
+
function create$2$1(type) {
|
|
17936
17948
|
return new ArraySchema(type);
|
|
17937
17949
|
}
|
|
17938
17950
|
class ArraySchema extends Schema {
|
|
@@ -18117,7 +18129,7 @@ class ArraySchema extends Schema {
|
|
|
18117
18129
|
return base;
|
|
18118
18130
|
}
|
|
18119
18131
|
}
|
|
18120
|
-
create$2.prototype = ArraySchema.prototype;
|
|
18132
|
+
create$2$1.prototype = ArraySchema.prototype;
|
|
18121
18133
|
|
|
18122
18134
|
const layerDatesFieldsSchema = {
|
|
18123
18135
|
future_maintanance_date: create$4().required(),
|
|
@@ -18127,6 +18139,24 @@ const layerDatesFieldsSchema = {
|
|
|
18127
18139
|
warranty_expr_date: create$4().required(),
|
|
18128
18140
|
};
|
|
18129
18141
|
|
|
18142
|
+
const LayerDatesContainer = material.styled(material.Box)(() => {
|
|
18143
|
+
const { spacing } = material.useTheme();
|
|
18144
|
+
return {
|
|
18145
|
+
display: 'grid',
|
|
18146
|
+
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
18147
|
+
gap: spacing(2),
|
|
18148
|
+
};
|
|
18149
|
+
});
|
|
18150
|
+
const LayerButtonsContainer = material.styled(material.Box)(() => {
|
|
18151
|
+
const { spacing } = material.useTheme();
|
|
18152
|
+
return {
|
|
18153
|
+
display: 'grid',
|
|
18154
|
+
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
18155
|
+
gap: spacing(2),
|
|
18156
|
+
justifyItems: 'flex-start',
|
|
18157
|
+
};
|
|
18158
|
+
});
|
|
18159
|
+
|
|
18130
18160
|
var data = { global:{ links:{ getIsConstruction:"function (feature) {\n const { construction } = feature;\n\n return construction;\n}\n",
|
|
18131
18161
|
getIsFunctionalClass:"function (feature) {\n const { functional_class, access_id } = feature;\n\n return functional_class === 5 && access_id === 32;\n}\n",
|
|
18132
18162
|
getIsLowMobility:"function (feature) {\n const { functional_class, low_mobility } = feature;\n\n return functional_class === 5 && low_mobility === 1;\n}\n" } },
|
|
@@ -29791,11 +29821,7 @@ const TrafficSignDopUpdateForm = ({ index, onDelete, onUpdate, }) => {
|
|
|
29791
29821
|
} }));
|
|
29792
29822
|
},
|
|
29793
29823
|
},
|
|
29794
|
-
] }), jsxRuntime.jsx(FormSelect, { ...register(`${fieldName$1}.${index}.status`), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName$1}.${index}.comment`), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName$1}.${index}.dop_sign_text`), label: trafficTitles.dop_sign_text }), jsxRuntime.jsx(
|
|
29795
|
-
display: 'grid',
|
|
29796
|
-
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
29797
|
-
gap: '12px',
|
|
29798
|
-
}, children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(`${fieldName$1}.${index}.${name}`), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsx(Button, { onClick: () => {
|
|
29824
|
+
] }), jsxRuntime.jsx(FormSelect, { ...register(`${fieldName$1}.${index}.status`), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName$1}.${index}.comment`), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName$1}.${index}.dop_sign_text`), label: trafficTitles.dop_sign_text }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(`${fieldName$1}.${index}.${name}`), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsx(Button, { onClick: () => {
|
|
29799
29825
|
onUpdate(trafficSign);
|
|
29800
29826
|
}, children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" })] }));
|
|
29801
29827
|
};
|
|
@@ -29831,11 +29857,7 @@ const TrafficSignDopCreateForm = ({ index, onDelete, }) => {
|
|
|
29831
29857
|
} }));
|
|
29832
29858
|
},
|
|
29833
29859
|
},
|
|
29834
|
-
] }), jsxRuntime.jsx(FormSelect, { ...register(`${fieldName}.${index}.status`), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName}.${index}.comment`), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName}.${index}.dop_sign_text`), label: trafficTitles.dop_sign_text }), jsxRuntime.jsx(
|
|
29835
|
-
display: 'grid',
|
|
29836
|
-
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
29837
|
-
gap: '12px',
|
|
29838
|
-
}, children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(`${fieldName}.${index}.${name}`), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) })] }));
|
|
29860
|
+
] }), jsxRuntime.jsx(FormSelect, { ...register(`${fieldName}.${index}.status`), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName}.${index}.comment`), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register(`${fieldName}.${index}.dop_sign_text`), label: trafficTitles.dop_sign_text }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(`${fieldName}.${index}.${name}`), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) })] }));
|
|
29839
29861
|
};
|
|
29840
29862
|
var TrafficSignDopCreateForm$1 = observer(TrafficSignDopCreateForm);
|
|
29841
29863
|
|
|
@@ -29876,7 +29898,7 @@ const createdTrafficSignDopSchema = create$3().shape({
|
|
|
29876
29898
|
...trafficSignDopMainFieldsSchema,
|
|
29877
29899
|
...layerDatesFieldsSchema,
|
|
29878
29900
|
});
|
|
29879
|
-
const mainFieldsSchema$
|
|
29901
|
+
const mainFieldsSchema$2 = {
|
|
29880
29902
|
traffic_sign_type: create$6().required(),
|
|
29881
29903
|
traffic_sign_number: create$6().required(),
|
|
29882
29904
|
traffic_sign_title: create$6().required(),
|
|
@@ -29885,23 +29907,23 @@ const mainFieldsSchema$1 = {
|
|
|
29885
29907
|
traffic_sign_value: create$6().nullable(),
|
|
29886
29908
|
direction: create$5().nullable(),
|
|
29887
29909
|
};
|
|
29888
|
-
const idsFieldsSchema$
|
|
29910
|
+
const idsFieldsSchema$2 = {
|
|
29889
29911
|
traffic_sign_id: create$6().required(),
|
|
29890
29912
|
dit_id: create$5().required(),
|
|
29891
29913
|
tsodd_id: create$5().required(),
|
|
29892
29914
|
pillar_id: create$6().nullable(),
|
|
29893
29915
|
};
|
|
29894
29916
|
|
|
29895
|
-
const schema$
|
|
29917
|
+
const schema$6 = create$3()
|
|
29896
29918
|
.shape({
|
|
29897
|
-
...idsFieldsSchema$
|
|
29898
|
-
...mainFieldsSchema$
|
|
29919
|
+
...idsFieldsSchema$2,
|
|
29920
|
+
...mainFieldsSchema$2,
|
|
29899
29921
|
...layerDatesFieldsSchema,
|
|
29900
|
-
oldDops: create$2()
|
|
29922
|
+
oldDops: create$2$1()
|
|
29901
29923
|
.max(maxTrafficSignDopsCount)
|
|
29902
29924
|
.of(updatedTrafficSignDopSchema)
|
|
29903
29925
|
.required(),
|
|
29904
|
-
newDops: create$2()
|
|
29926
|
+
newDops: create$2$1()
|
|
29905
29927
|
.max(maxTrafficSignDopsCount)
|
|
29906
29928
|
.of(createdTrafficSignDopSchema)
|
|
29907
29929
|
.required(),
|
|
@@ -29911,7 +29933,7 @@ const r=(t,r,o)=>{if(t&&"reportValidity"in t){const s=get(o,r);t.setCustomValidi
|
|
|
29911
29933
|
|
|
29912
29934
|
function o(o,n,s$1){return void 0===s$1&&(s$1={}),function(a,i,c){try{return Promise.resolve(function(t,r){try{var u=(null!=n&&n.context&&"development"===process.env.NODE_ENV&&console.warn("You should not used the yup options context. Please, use the 'useForm' context object instead"),Promise.resolve(o["sync"===s$1.mode?"validateSync":"validate"](a,Object.assign({abortEarly:!1},n,{context:i}))).then(function(t){return c.shouldUseNativeValidation&&o$1({},c),{values:s$1.raw?Object.assign({},a):t,errors:{}}}));}catch(e){return r(e)}return u&&u.then?u.then(void 0,r):u}(0,function(e){if(!e.inner)throw e;return {values:{},errors:s((o=e,n=!c.shouldUseNativeValidation&&"all"===c.criteriaMode,(o.inner||[]).reduce(function(e,t){if(e[t.path]||(e[t.path]={message:t.message,type:t.type}),n){var o=e[t.path].types,s=o&&o[t.type];e[t.path]=appendErrors(t.path,n,e,t.type,s?[].concat(s,t.message):t.message);}return e},{})),c)};var o,n;}))}catch(e){return Promise.reject(e)}}}
|
|
29913
29935
|
|
|
29914
|
-
const TrafficSignUpdateForm = ({ trafficSign, onSubmit, onDelete, onDeleteDop, onUpdateDop, }) => {
|
|
29936
|
+
const TrafficSignUpdateForm = ({ trafficSign, onSubmit, onDelete, onDeleteDop, onUpdateDop, getButtons, }) => {
|
|
29915
29937
|
const id = React__namespace.useId();
|
|
29916
29938
|
const defaultValues = React__namespace.useMemo(() => {
|
|
29917
29939
|
const { dops, traffic_sign_id } = trafficSign;
|
|
@@ -29928,7 +29950,7 @@ const TrafficSignUpdateForm = ({ trafficSign, onSubmit, onDelete, onDeleteDop, o
|
|
|
29928
29950
|
return defaultValues;
|
|
29929
29951
|
}, [trafficSign]);
|
|
29930
29952
|
const form = useForm({
|
|
29931
|
-
resolver: o(schema$
|
|
29953
|
+
resolver: o(schema$6),
|
|
29932
29954
|
defaultValues,
|
|
29933
29955
|
});
|
|
29934
29956
|
const { reset, control, register, setValue, watch, formState: { errors }, } = form;
|
|
@@ -29992,11 +30014,7 @@ const TrafficSignUpdateForm = ({ trafficSign, onSubmit, onDelete, onDeleteDop, o
|
|
|
29992
30014
|
} }));
|
|
29993
30015
|
},
|
|
29994
30016
|
},
|
|
29995
|
-
] }), jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('traffic_sign_value'), label: trafficTitles.traffic_sign_value }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(
|
|
29996
|
-
display: 'grid',
|
|
29997
|
-
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
29998
|
-
gap: '12px',
|
|
29999
|
-
}, children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) })] })),
|
|
30017
|
+
] }), jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('traffic_sign_value'), label: trafficTitles.traffic_sign_value }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) })] })),
|
|
30000
30018
|
},
|
|
30001
30019
|
{
|
|
30002
30020
|
label: trafficSignDopWords.title,
|
|
@@ -30012,17 +30030,17 @@ const TrafficSignUpdateForm = ({ trafficSign, onSubmit, onDelete, onDeleteDop, o
|
|
|
30012
30030
|
newDopsFieldArray.remove(index);
|
|
30013
30031
|
}, index: index }) }, id)))] })),
|
|
30014
30032
|
},
|
|
30015
|
-
] }), jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" })] }));
|
|
30033
|
+
] }), jsxRuntime.jsxs(LayerButtonsContainer, { children: [jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" }), getButtons?.(trafficSign)] })] }));
|
|
30016
30034
|
};
|
|
30017
|
-
var update$
|
|
30035
|
+
var update$2 = observer(TrafficSignUpdateForm);
|
|
30018
30036
|
|
|
30019
|
-
const schema$
|
|
30037
|
+
const schema$5 = create$3()
|
|
30020
30038
|
.shape({
|
|
30021
|
-
dit_id: idsFieldsSchema$
|
|
30022
|
-
tsodd_id: idsFieldsSchema$
|
|
30023
|
-
...mainFieldsSchema$
|
|
30039
|
+
dit_id: idsFieldsSchema$2.dit_id,
|
|
30040
|
+
tsodd_id: idsFieldsSchema$2.tsodd_id,
|
|
30041
|
+
...mainFieldsSchema$2,
|
|
30024
30042
|
...layerDatesFieldsSchema,
|
|
30025
|
-
newDops: create$2()
|
|
30043
|
+
newDops: create$2$1()
|
|
30026
30044
|
.max(maxTrafficSignDopsCount)
|
|
30027
30045
|
.of(createdTrafficSignDopSchema)
|
|
30028
30046
|
.required(),
|
|
@@ -30031,7 +30049,7 @@ const schema$3 = create$3()
|
|
|
30031
30049
|
const TrafficSignCreateForm = ({ onSubmit, }) => {
|
|
30032
30050
|
const id = React__namespace.useId();
|
|
30033
30051
|
const form = useForm({
|
|
30034
|
-
resolver: o(schema$
|
|
30052
|
+
resolver: o(schema$5),
|
|
30035
30053
|
defaultValues: {
|
|
30036
30054
|
...defaultTrafficSign,
|
|
30037
30055
|
},
|
|
@@ -30072,11 +30090,7 @@ const TrafficSignCreateForm = ({ onSubmit, }) => {
|
|
|
30072
30090
|
} }));
|
|
30073
30091
|
},
|
|
30074
30092
|
},
|
|
30075
|
-
] }), jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('traffic_sign_value'), label: trafficTitles.traffic_sign_value }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(
|
|
30076
|
-
display: 'grid',
|
|
30077
|
-
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
30078
|
-
gap: '12px',
|
|
30079
|
-
}, children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) })] })),
|
|
30093
|
+
] }), jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('traffic_sign_value'), label: trafficTitles.traffic_sign_value }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) })] })),
|
|
30080
30094
|
},
|
|
30081
30095
|
{
|
|
30082
30096
|
label: trafficSignDopWords.title,
|
|
@@ -30094,10 +30108,10 @@ const TrafficSignCreateForm = ({ onSubmit, }) => {
|
|
|
30094
30108
|
},
|
|
30095
30109
|
] }), jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" })] }));
|
|
30096
30110
|
};
|
|
30097
|
-
var create$
|
|
30111
|
+
var create$2 = observer(TrafficSignCreateForm);
|
|
30098
30112
|
|
|
30099
|
-
const size
|
|
30100
|
-
const extension
|
|
30113
|
+
const size = 20;
|
|
30114
|
+
const extension = 'svg';
|
|
30101
30115
|
const trafficSignalMainFields = {
|
|
30102
30116
|
direction: 0,
|
|
30103
30117
|
status: exports.TrafficStatus.ACTIVE,
|
|
@@ -30117,12 +30131,12 @@ const getTrafficSignalLayers = (source) => {
|
|
|
30117
30131
|
const textures = {};
|
|
30118
30132
|
const sublayers = {};
|
|
30119
30133
|
const texture = `traffic_signal`;
|
|
30120
|
-
const textureUrl =
|
|
30134
|
+
const textureUrl = `${imagesPath}/msk/${texture}/${texture}_${size}.${extension}`;
|
|
30121
30135
|
textures[texture] = {
|
|
30122
30136
|
url: textureUrl,
|
|
30123
30137
|
filtering: 'mipmap',
|
|
30124
30138
|
sprites: {
|
|
30125
|
-
base: [0, 0, size
|
|
30139
|
+
base: [0, 0, size, size],
|
|
30126
30140
|
},
|
|
30127
30141
|
};
|
|
30128
30142
|
const layer = {
|
|
@@ -30132,7 +30146,7 @@ const getTrafficSignalLayers = (source) => {
|
|
|
30132
30146
|
points: {
|
|
30133
30147
|
collide: false,
|
|
30134
30148
|
texture,
|
|
30135
|
-
size
|
|
30149
|
+
size,
|
|
30136
30150
|
sprite: 'base',
|
|
30137
30151
|
placement: 'midpoint',
|
|
30138
30152
|
},
|
|
@@ -30144,27 +30158,27 @@ const getTrafficSignalLayers = (source) => {
|
|
|
30144
30158
|
return layers;
|
|
30145
30159
|
};
|
|
30146
30160
|
|
|
30147
|
-
const mainFieldsSchema = {
|
|
30161
|
+
const mainFieldsSchema$1 = {
|
|
30148
30162
|
signal_model: create$6().nullable(),
|
|
30149
30163
|
status: create$6().required(),
|
|
30150
30164
|
comment: create$6().nullable(),
|
|
30151
30165
|
direction: create$5().nullable(),
|
|
30152
30166
|
};
|
|
30153
|
-
const idsFieldsSchema = {
|
|
30167
|
+
const idsFieldsSchema$1 = {
|
|
30154
30168
|
traffic_signal_id: create$6().required(),
|
|
30155
30169
|
dit_id: create$5().required(),
|
|
30156
30170
|
tsodd_id: create$5().required(),
|
|
30157
30171
|
pillar_id: create$6().nullable(),
|
|
30158
30172
|
};
|
|
30159
30173
|
|
|
30160
|
-
const schema$
|
|
30174
|
+
const schema$4 = create$3()
|
|
30161
30175
|
.shape({
|
|
30162
|
-
...idsFieldsSchema,
|
|
30163
|
-
...mainFieldsSchema,
|
|
30176
|
+
...idsFieldsSchema$1,
|
|
30177
|
+
...mainFieldsSchema$1,
|
|
30164
30178
|
...layerDatesFieldsSchema,
|
|
30165
30179
|
});
|
|
30166
30180
|
|
|
30167
|
-
const TrafficSignalUpdateForm = ({ trafficSignal, onSubmit, onDelete, }) => {
|
|
30181
|
+
const TrafficSignalUpdateForm = ({ trafficSignal, onSubmit, onDelete, getButtons, }) => {
|
|
30168
30182
|
const id = React__namespace.useId();
|
|
30169
30183
|
const defaultValues = React__namespace.useMemo(() => {
|
|
30170
30184
|
const defaultValues = {
|
|
@@ -30174,7 +30188,7 @@ const TrafficSignalUpdateForm = ({ trafficSignal, onSubmit, onDelete, }) => {
|
|
|
30174
30188
|
return defaultValues;
|
|
30175
30189
|
}, [trafficSignal]);
|
|
30176
30190
|
const form = useForm({
|
|
30177
|
-
resolver: o(schema$
|
|
30191
|
+
resolver: o(schema$4),
|
|
30178
30192
|
defaultValues,
|
|
30179
30193
|
});
|
|
30180
30194
|
const { reset, register, formState: { errors }, } = form;
|
|
@@ -30191,35 +30205,27 @@ const TrafficSignalUpdateForm = ({ trafficSignal, onSubmit, onDelete, }) => {
|
|
|
30191
30205
|
React__namespace.useEffect(() => {
|
|
30192
30206
|
reset(defaultValues);
|
|
30193
30207
|
}, [defaultValues]);
|
|
30194
|
-
return (jsxRuntime.jsxs(CustomForm, { form: form, onSubmit: onSubmit, children: [jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('signal_model'), label: trafficTitles.signal_model }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(
|
|
30195
|
-
|
|
30196
|
-
|
|
30197
|
-
|
|
30198
|
-
|
|
30199
|
-
|
|
30200
|
-
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
30201
|
-
gap: spacing(4),
|
|
30202
|
-
}), children: [jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" }), jsxRuntime.jsx(material.Box, { children: jsxRuntime.jsx(DeleteButton, { notification: {
|
|
30203
|
-
title: 'Удалить светофор',
|
|
30204
|
-
description: 'Вы действительно хотите удалить данный светофор?',
|
|
30205
|
-
}, onDelete: () => {
|
|
30206
|
-
onDelete(trafficSignal);
|
|
30207
|
-
} }) })] })] }));
|
|
30208
|
+
return (jsxRuntime.jsxs(CustomForm, { form: form, onSubmit: onSubmit, children: [jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('signal_model'), label: trafficTitles.signal_model }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsxs(LayerButtonsContainer, { children: [jsxRuntime.jsx(Button, { type: "submit", fullWidth: true, children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" }), jsxRuntime.jsxs(LayerButtonsContainer, { children: [jsxRuntime.jsx(DeleteButton, { notification: {
|
|
30209
|
+
title: 'Удалить светофор',
|
|
30210
|
+
description: 'Вы действительно хотите удалить данный светофор?',
|
|
30211
|
+
}, onDelete: () => {
|
|
30212
|
+
onDelete(trafficSignal);
|
|
30213
|
+
} }), getButtons?.(trafficSignal)] })] })] }));
|
|
30208
30214
|
};
|
|
30209
|
-
var update = observer(TrafficSignalUpdateForm);
|
|
30215
|
+
var update$1 = observer(TrafficSignalUpdateForm);
|
|
30210
30216
|
|
|
30211
|
-
const schema$
|
|
30217
|
+
const schema$3 = create$3()
|
|
30212
30218
|
.shape({
|
|
30213
|
-
dit_id: idsFieldsSchema.dit_id,
|
|
30214
|
-
tsodd_id: idsFieldsSchema.tsodd_id,
|
|
30215
|
-
...mainFieldsSchema,
|
|
30219
|
+
dit_id: idsFieldsSchema$1.dit_id,
|
|
30220
|
+
tsodd_id: idsFieldsSchema$1.tsodd_id,
|
|
30221
|
+
...mainFieldsSchema$1,
|
|
30216
30222
|
...layerDatesFieldsSchema,
|
|
30217
30223
|
});
|
|
30218
30224
|
|
|
30219
30225
|
const TrafficSignalCreateForm = ({ onSubmit, }) => {
|
|
30220
30226
|
const id = React__namespace.useId();
|
|
30221
30227
|
const form = useForm({
|
|
30222
|
-
resolver: o(schema$
|
|
30228
|
+
resolver: o(schema$3),
|
|
30223
30229
|
defaultValues: {
|
|
30224
30230
|
...defaultTrafficSignal,
|
|
30225
30231
|
},
|
|
@@ -30235,16 +30241,26 @@ const TrafficSignalCreateForm = ({ onSubmit, }) => {
|
|
|
30235
30241
|
});
|
|
30236
30242
|
}
|
|
30237
30243
|
}, [errors]);
|
|
30238
|
-
return (jsxRuntime.jsxs(CustomForm, { form: form, onSubmit: onSubmit, children: [jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('signal_model'), label: trafficTitles.signal_model }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(
|
|
30239
|
-
display: 'grid',
|
|
30240
|
-
gridTemplateColumns: 'repeat(2, 1fr)',
|
|
30241
|
-
gap: '12px',
|
|
30242
|
-
}, children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" })] }));
|
|
30244
|
+
return (jsxRuntime.jsxs(CustomForm, { form: form, onSubmit: onSubmit, children: [jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('signal_model'), label: trafficTitles.signal_model }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" })] }));
|
|
30243
30245
|
};
|
|
30244
|
-
var create = observer(TrafficSignalCreateForm);
|
|
30246
|
+
var create$1 = observer(TrafficSignalCreateForm);
|
|
30245
30247
|
|
|
30246
|
-
const
|
|
30247
|
-
|
|
30248
|
+
const cameraConfig = {
|
|
30249
|
+
size: 20,
|
|
30250
|
+
extension: 'png',
|
|
30251
|
+
};
|
|
30252
|
+
const cameraMainFields = {
|
|
30253
|
+
comment: null,
|
|
30254
|
+
camera_model: null,
|
|
30255
|
+
fixing_type: null,
|
|
30256
|
+
direction: 0,
|
|
30257
|
+
status: exports.TrafficStatus.ACTIVE,
|
|
30258
|
+
};
|
|
30259
|
+
const defaultCamera = {
|
|
30260
|
+
...layerServiceIds,
|
|
30261
|
+
...layerDefaultFrontendDates,
|
|
30262
|
+
...cameraMainFields,
|
|
30263
|
+
};
|
|
30248
30264
|
|
|
30249
30265
|
const getCameraLayers = (source) => {
|
|
30250
30266
|
const layers = [];
|
|
@@ -30256,10 +30272,10 @@ const getCameraLayers = (source) => {
|
|
|
30256
30272
|
const sublayers = {};
|
|
30257
30273
|
const texture = `camera`;
|
|
30258
30274
|
textures[texture] = {
|
|
30259
|
-
url:
|
|
30275
|
+
url: `${imagesPath}/msk/${texture}/${texture}_${cameraConfig.size}.${cameraConfig.extension}`,
|
|
30260
30276
|
filtering: 'mipmap',
|
|
30261
30277
|
sprites: {
|
|
30262
|
-
base: [0, 0, size
|
|
30278
|
+
base: [0, 0, cameraConfig.size, cameraConfig.size],
|
|
30263
30279
|
},
|
|
30264
30280
|
};
|
|
30265
30281
|
const layer = {
|
|
@@ -30269,7 +30285,7 @@ const getCameraLayers = (source) => {
|
|
|
30269
30285
|
points: {
|
|
30270
30286
|
collide: false,
|
|
30271
30287
|
texture,
|
|
30272
|
-
size: size
|
|
30288
|
+
size: cameraConfig.size,
|
|
30273
30289
|
sprite: 'base',
|
|
30274
30290
|
placement: 'midpoint',
|
|
30275
30291
|
},
|
|
@@ -30281,8 +30297,98 @@ const getCameraLayers = (source) => {
|
|
|
30281
30297
|
return layers;
|
|
30282
30298
|
};
|
|
30283
30299
|
|
|
30284
|
-
const
|
|
30285
|
-
|
|
30300
|
+
const mainFieldsSchema = {
|
|
30301
|
+
camera_model: create$6().nullable(),
|
|
30302
|
+
fixing_type: create$6().nullable(),
|
|
30303
|
+
status: create$6().required(),
|
|
30304
|
+
comment: create$6().nullable(),
|
|
30305
|
+
direction: create$5().nullable(),
|
|
30306
|
+
};
|
|
30307
|
+
const idsFieldsSchema = {
|
|
30308
|
+
camera_id: create$6().required(),
|
|
30309
|
+
dit_id: create$5().required(),
|
|
30310
|
+
tsodd_id: create$5().required(),
|
|
30311
|
+
pillar_id: create$6().nullable(),
|
|
30312
|
+
};
|
|
30313
|
+
|
|
30314
|
+
const schema$2 = create$3()
|
|
30315
|
+
.shape({
|
|
30316
|
+
...idsFieldsSchema,
|
|
30317
|
+
...mainFieldsSchema,
|
|
30318
|
+
...layerDatesFieldsSchema,
|
|
30319
|
+
});
|
|
30320
|
+
|
|
30321
|
+
const CameraUpdateForm = ({ camera, getButtons, onSubmit, onDelete, }) => {
|
|
30322
|
+
const id = React__namespace.useId();
|
|
30323
|
+
const defaultValues = React__namespace.useMemo(() => {
|
|
30324
|
+
const defaultValues = {
|
|
30325
|
+
...camera,
|
|
30326
|
+
...getLayerFrontendDates(camera),
|
|
30327
|
+
};
|
|
30328
|
+
return defaultValues;
|
|
30329
|
+
}, [camera]);
|
|
30330
|
+
const form = useForm({
|
|
30331
|
+
resolver: o(schema$2),
|
|
30332
|
+
defaultValues,
|
|
30333
|
+
});
|
|
30334
|
+
const { reset, register, formState: { errors }, } = form;
|
|
30335
|
+
React__namespace.useEffect(() => {
|
|
30336
|
+
const isErrors = Object.keys(errors).length > 0;
|
|
30337
|
+
if (isErrors) {
|
|
30338
|
+
loggerService.warn({
|
|
30339
|
+
message: 'Ошибки валидации формы',
|
|
30340
|
+
context: 'TrafficSignUpdateForm',
|
|
30341
|
+
meta: errors,
|
|
30342
|
+
});
|
|
30343
|
+
}
|
|
30344
|
+
}, [errors]);
|
|
30345
|
+
React__namespace.useEffect(() => {
|
|
30346
|
+
reset(defaultValues);
|
|
30347
|
+
}, [defaultValues]);
|
|
30348
|
+
return (jsxRuntime.jsxs(CustomForm, { form: form, onSubmit: onSubmit, children: [jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('camera_model'), label: trafficTitles.signal_model }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsxs(LayerButtonsContainer, { children: [jsxRuntime.jsx(Button, { type: "submit", fullWidth: true, children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" }), jsxRuntime.jsxs(LayerButtonsContainer, { children: [jsxRuntime.jsx(DeleteButton, { notification: {
|
|
30349
|
+
title: 'Удалить камеру',
|
|
30350
|
+
description: 'Вы действительно хотите удалить данную камеру?',
|
|
30351
|
+
}, onDelete: () => {
|
|
30352
|
+
onDelete(camera);
|
|
30353
|
+
} }), getButtons?.(camera)] })] })] }));
|
|
30354
|
+
};
|
|
30355
|
+
var update = observer(CameraUpdateForm);
|
|
30356
|
+
|
|
30357
|
+
const schema$1 = create$3()
|
|
30358
|
+
.shape({
|
|
30359
|
+
dit_id: idsFieldsSchema.dit_id,
|
|
30360
|
+
tsodd_id: idsFieldsSchema.tsodd_id,
|
|
30361
|
+
...mainFieldsSchema,
|
|
30362
|
+
...layerDatesFieldsSchema,
|
|
30363
|
+
});
|
|
30364
|
+
|
|
30365
|
+
const CameraCreateForm = ({ onSubmit }) => {
|
|
30366
|
+
const id = React__namespace.useId();
|
|
30367
|
+
const form = useForm({
|
|
30368
|
+
resolver: o(schema$1),
|
|
30369
|
+
defaultValues: {
|
|
30370
|
+
...defaultCamera,
|
|
30371
|
+
},
|
|
30372
|
+
});
|
|
30373
|
+
const { register, formState: { errors }, } = form;
|
|
30374
|
+
React__namespace.useEffect(() => {
|
|
30375
|
+
const isErrors = Object.keys(errors).length > 0;
|
|
30376
|
+
if (isErrors) {
|
|
30377
|
+
loggerService.warn({
|
|
30378
|
+
message: 'Ошибки валидации формы',
|
|
30379
|
+
context: 'TrafficSignCreateForm',
|
|
30380
|
+
meta: errors,
|
|
30381
|
+
});
|
|
30382
|
+
}
|
|
30383
|
+
}, [errors]);
|
|
30384
|
+
return (jsxRuntime.jsxs(CustomForm, { form: form, onSubmit: onSubmit, children: [jsxRuntime.jsx(FormSelect, { ...register('status'), label: trafficTitles.status, items: trafficStatusOptions, getKey: ({ value }) => value, getLabel: ({ label }) => label, getValue: ({ value }) => value }), jsxRuntime.jsx(CustomInput, { ...register('camera_model'), label: trafficTitles.camera_model }), jsxRuntime.jsx(CustomInput, { ...register('comment'), label: trafficTitles.comment }), jsxRuntime.jsx(CustomInput, { ...register('direction'), label: trafficTitles.direction, type: "number" }), jsxRuntime.jsx(LayerDatesContainer, { children: layerDatesFields.map((name) => (jsxRuntime.jsx(DateField, { ...register(name), label: trafficTitles[name], format: layerDateFormat }, `${id}-${name}`))) }), jsxRuntime.jsx(Button, { type: "submit", children: "\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C" })] }));
|
|
30385
|
+
};
|
|
30386
|
+
var create = observer(CameraCreateForm);
|
|
30387
|
+
|
|
30388
|
+
const pillarConfig = {
|
|
30389
|
+
size: 20,
|
|
30390
|
+
extension: 'png',
|
|
30391
|
+
};
|
|
30286
30392
|
|
|
30287
30393
|
const getPillarLayers = (source) => {
|
|
30288
30394
|
const layers = [];
|
|
@@ -30293,12 +30399,12 @@ const getPillarLayers = (source) => {
|
|
|
30293
30399
|
const textures = {};
|
|
30294
30400
|
const sublayers = {};
|
|
30295
30401
|
const texture = `pillar`;
|
|
30296
|
-
const textureUrl =
|
|
30402
|
+
const textureUrl = `${imagesPath}/msk/${texture}/${texture}_${pillarConfig.size}.${pillarConfig.extension}`;
|
|
30297
30403
|
textures[texture] = {
|
|
30298
30404
|
url: textureUrl,
|
|
30299
30405
|
filtering: 'mipmap',
|
|
30300
30406
|
sprites: {
|
|
30301
|
-
base: [0, 0, size, size],
|
|
30407
|
+
base: [0, 0, pillarConfig.size, pillarConfig.size],
|
|
30302
30408
|
},
|
|
30303
30409
|
};
|
|
30304
30410
|
const layer = {
|
|
@@ -30308,7 +30414,7 @@ const getPillarLayers = (source) => {
|
|
|
30308
30414
|
points: {
|
|
30309
30415
|
collide: false,
|
|
30310
30416
|
texture,
|
|
30311
|
-
size,
|
|
30417
|
+
size: pillarConfig.size,
|
|
30312
30418
|
sprite: 'base',
|
|
30313
30419
|
placement: 'midpoint',
|
|
30314
30420
|
},
|
|
@@ -33500,6 +33606,8 @@ exports.AuthPage = AuthPage;
|
|
|
33500
33606
|
exports.AuthStore = AuthStore;
|
|
33501
33607
|
exports.Button = Button;
|
|
33502
33608
|
exports.CSVUploader = CSVUploader;
|
|
33609
|
+
exports.CameraCreateForm = create;
|
|
33610
|
+
exports.CameraUpdateForm = update;
|
|
33503
33611
|
exports.Card = CustomCard;
|
|
33504
33612
|
exports.Checkbox = CustomCheckbox;
|
|
33505
33613
|
exports.DartcomAuthProvider = auth;
|
|
@@ -33514,12 +33622,15 @@ exports.ExcelUploader = ExcelUploader;
|
|
|
33514
33622
|
exports.Form = CustomForm;
|
|
33515
33623
|
exports.GlobalConfig = GlobalConfig;
|
|
33516
33624
|
exports.Input = CustomInput;
|
|
33625
|
+
exports.LayerButtonsContainer = LayerButtonsContainer;
|
|
33626
|
+
exports.LayerDatesContainer = LayerDatesContainer;
|
|
33517
33627
|
exports.LeafletLayer = LeafletLayer;
|
|
33518
33628
|
exports.List = CustomList;
|
|
33519
33629
|
exports.Loader = Loader;
|
|
33520
33630
|
exports.LocalizationProvider = Provider;
|
|
33521
33631
|
exports.Modal = modal;
|
|
33522
33632
|
exports.ModalStore = ModalStore;
|
|
33633
|
+
exports.MoveButton = MoveButton;
|
|
33523
33634
|
exports.NoData = NoData;
|
|
33524
33635
|
exports.QueryProvider = QueryProvider;
|
|
33525
33636
|
exports.RootStore = RootStore;
|
|
@@ -33527,29 +33638,33 @@ exports.Select = FormSelect;
|
|
|
33527
33638
|
exports.StoreContext = StoreContext;
|
|
33528
33639
|
exports.Tabs = Tabs;
|
|
33529
33640
|
exports.TrafficSignAddDopButton = TrafficSignAddDopButton$1;
|
|
33530
|
-
exports.TrafficSignCreateForm = create$
|
|
33641
|
+
exports.TrafficSignCreateForm = create$2;
|
|
33531
33642
|
exports.TrafficSignDopCreateForm = TrafficSignDopCreateForm$1;
|
|
33532
33643
|
exports.TrafficSignDopUpdateForm = TrafficSignDopUpdateForm$1;
|
|
33533
33644
|
exports.TrafficSignPreviewImage = TrafficSignPreviewImage$1;
|
|
33534
33645
|
exports.TrafficSignPreviewTitle = TrafficSignPreviewTitle$1;
|
|
33535
33646
|
exports.TrafficSignTable = TrafficSignTable$1;
|
|
33536
|
-
exports.TrafficSignUpdateForm = update$
|
|
33537
|
-
exports.TrafficSignalCreateForm = create;
|
|
33538
|
-
exports.TrafficSignalUpdateForm = update;
|
|
33647
|
+
exports.TrafficSignUpdateForm = update$2;
|
|
33648
|
+
exports.TrafficSignalCreateForm = create$1;
|
|
33649
|
+
exports.TrafficSignalUpdateForm = update$1;
|
|
33539
33650
|
exports.UploadButton = UploadButton;
|
|
33540
33651
|
exports._backendUrl = _backendUrl;
|
|
33541
33652
|
exports._testApiKeys = _testApiKeys;
|
|
33542
33653
|
exports.allTrafficSigns = allTrafficSigns;
|
|
33543
33654
|
exports.authStore = authStore;
|
|
33655
|
+
exports.cameraConfig = cameraConfig;
|
|
33656
|
+
exports.cameraMainFields = cameraMainFields;
|
|
33544
33657
|
exports.catIds = catIds;
|
|
33545
33658
|
exports.copyInformation = copyInformation;
|
|
33546
33659
|
exports.createApiService = createApiService;
|
|
33660
|
+
exports.defaultCamera = defaultCamera;
|
|
33547
33661
|
exports.defaultTrafficSign = defaultTrafficSign;
|
|
33548
33662
|
exports.defaultTrafficSignDop = defaultTrafficSignDop;
|
|
33549
33663
|
exports.defaultTrafficSignDopIds = defaultTrafficSignDopIds;
|
|
33550
33664
|
exports.defaultTrafficSignIds = defaultTrafficSignIds;
|
|
33551
33665
|
exports.defaultTrafficSignal = defaultTrafficSignal;
|
|
33552
33666
|
exports.encodeString = encodeString;
|
|
33667
|
+
exports.extension = extension;
|
|
33553
33668
|
exports.getAdminAreaLayers = getAdminAreaLayers;
|
|
33554
33669
|
exports.getAllLayers = getAllLayers;
|
|
33555
33670
|
exports.getAllPointLayers = getAllPointLayers;
|
|
@@ -33603,9 +33718,11 @@ exports.maxTrafficSignDopsCount = maxTrafficSignDopsCount;
|
|
|
33603
33718
|
exports.modalStore = modalStore;
|
|
33604
33719
|
exports.modalStyle = modalStyle;
|
|
33605
33720
|
exports.parseTrafficSignCSVFile = parseTrafficSignCSVFile;
|
|
33721
|
+
exports.pillarConfig = pillarConfig;
|
|
33606
33722
|
exports.queryClient = queryClient;
|
|
33607
33723
|
exports.rootStore = rootStore;
|
|
33608
33724
|
exports.showSnackbar = showSnackbar;
|
|
33725
|
+
exports.size = size;
|
|
33609
33726
|
exports.sourceUrl = sourceUrl;
|
|
33610
33727
|
exports.text_source = text_source;
|
|
33611
33728
|
exports.tile_size = tile_size;
|