@dartcom/ui-kit 10.5.10 → 10.5.11
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.cjs +161 -0
- package/dist/index.esm.js +1 -1
- package/dist/providers/mobx/stores/auth.esm.js +1 -1
- package/dist/services/collection/collection.d.ts +99 -0
- package/dist/services/collection/collection.d.ts.map +1 -0
- package/dist/services/collection/collection.esm.js +1 -0
- package/dist/services/collection/index.d.ts +2 -0
- package/dist/services/collection/index.d.ts.map +1 -0
- package/dist/services/index.d.ts +1 -0
- package/dist/services/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -7527,6 +7527,166 @@ class AlertStore {
|
|
|
7527
7527
|
}
|
|
7528
7528
|
const alertStore = new AlertStore();
|
|
7529
7529
|
|
|
7530
|
+
class CollectionService {
|
|
7531
|
+
props;
|
|
7532
|
+
_items = observable.map();
|
|
7533
|
+
constructor(props) {
|
|
7534
|
+
this.props = props;
|
|
7535
|
+
makeAutoObservable(this);
|
|
7536
|
+
}
|
|
7537
|
+
/**
|
|
7538
|
+
* Возаращает id по самому элементу коллекции
|
|
7539
|
+
*/
|
|
7540
|
+
getIdByItem(item) {
|
|
7541
|
+
return this.props.getId(item);
|
|
7542
|
+
}
|
|
7543
|
+
/**
|
|
7544
|
+
* Возвращает observable-коллекцию элементов в виде Map.
|
|
7545
|
+
*/
|
|
7546
|
+
get items() {
|
|
7547
|
+
return this._items;
|
|
7548
|
+
}
|
|
7549
|
+
/**
|
|
7550
|
+
* Возвращает все элементы коллекции в виде обычного массива.
|
|
7551
|
+
*/
|
|
7552
|
+
get list() {
|
|
7553
|
+
return Array.from(this.items.values());
|
|
7554
|
+
}
|
|
7555
|
+
/**
|
|
7556
|
+
* Возвращает все элементы, у которых значение указанного поля
|
|
7557
|
+
* строго равно переданному значению.
|
|
7558
|
+
*
|
|
7559
|
+
* @typeParam K Ключ поля элемента.
|
|
7560
|
+
* @param key Поле, по которому выполняется поиск.
|
|
7561
|
+
* @param value Значение, с которым сравнивается поле.
|
|
7562
|
+
* @returns Массив всех найденных элементов. Если совпадений нет, вернётся пустой массив.
|
|
7563
|
+
*/
|
|
7564
|
+
findAllBy(key, value) {
|
|
7565
|
+
return this.list.filter((item) => item[key] === value);
|
|
7566
|
+
}
|
|
7567
|
+
/**
|
|
7568
|
+
* Возвращает все элементы, у которых значение указанного поля
|
|
7569
|
+
* входит в список переданных значений.
|
|
7570
|
+
*
|
|
7571
|
+
* @typeParam K Ключ поля элемента.
|
|
7572
|
+
* @param key Поле, по которому выполняется поиск.
|
|
7573
|
+
* @param values Набор допустимых значений поля.
|
|
7574
|
+
* @returns Массив всех найденных элементов. Если совпадений нет, вернётся пустой массив.
|
|
7575
|
+
*/
|
|
7576
|
+
findAllIn(key, values) {
|
|
7577
|
+
const valuesSet = new Set(values);
|
|
7578
|
+
return this.list.filter((item) => valuesSet.has(item[key]));
|
|
7579
|
+
}
|
|
7580
|
+
/**
|
|
7581
|
+
* Возвращает все элементы, которые одновременно соответствуют
|
|
7582
|
+
* всем переданным критериям.
|
|
7583
|
+
*
|
|
7584
|
+
* Метод выполняет точное сравнение по каждому полю.
|
|
7585
|
+
* Если передан пустой объект критериев, будут возвращены все элементы коллекции.
|
|
7586
|
+
*
|
|
7587
|
+
* @param criteria Объект с набором полей и значений для поиска.
|
|
7588
|
+
* @returns Массив всех элементов, удовлетворяющих всем условиям сразу.
|
|
7589
|
+
*/
|
|
7590
|
+
findAllWhere(criteria) {
|
|
7591
|
+
const entries = Object.entries(criteria);
|
|
7592
|
+
return this.list.filter((item) => entries.every(([key, value]) => item[key] === value));
|
|
7593
|
+
}
|
|
7594
|
+
/**
|
|
7595
|
+
* Возвращает элемент по его идентификатору.
|
|
7596
|
+
*
|
|
7597
|
+
* @param id Идентификатор элемента.
|
|
7598
|
+
* @returns Найденный элемент или undefined, если элемента с таким id нет.
|
|
7599
|
+
*/
|
|
7600
|
+
getById(id) {
|
|
7601
|
+
const item = this.items.get(id);
|
|
7602
|
+
return item;
|
|
7603
|
+
}
|
|
7604
|
+
/**
|
|
7605
|
+
* Добавляет элемент в коллекцию.
|
|
7606
|
+
*
|
|
7607
|
+
* @param item Элемент для добавления или замены.
|
|
7608
|
+
*/
|
|
7609
|
+
add(item) {
|
|
7610
|
+
this._items.set(this.props.getId(item), item);
|
|
7611
|
+
}
|
|
7612
|
+
/**
|
|
7613
|
+
* Добавляет в коллекцию несколько элементов подряд.
|
|
7614
|
+
*
|
|
7615
|
+
* @param items Массив элементов для добавления.
|
|
7616
|
+
*/
|
|
7617
|
+
addMany(items) {
|
|
7618
|
+
items.forEach((item) => {
|
|
7619
|
+
this.add(item);
|
|
7620
|
+
});
|
|
7621
|
+
}
|
|
7622
|
+
/**
|
|
7623
|
+
* Удаляет элемент из коллекции по id.
|
|
7624
|
+
*
|
|
7625
|
+
* @param id Идентификатор удаляемого элемента.
|
|
7626
|
+
*/
|
|
7627
|
+
delete(id) {
|
|
7628
|
+
this._items.delete(id);
|
|
7629
|
+
}
|
|
7630
|
+
/**
|
|
7631
|
+
* Удаляет из коллекции несколько элементов по списку id.
|
|
7632
|
+
*
|
|
7633
|
+
* @param ids Массив идентификаторов для удаления.
|
|
7634
|
+
*/
|
|
7635
|
+
deleteMany(ids) {
|
|
7636
|
+
ids.forEach((id) => {
|
|
7637
|
+
this.delete(id);
|
|
7638
|
+
});
|
|
7639
|
+
}
|
|
7640
|
+
/**
|
|
7641
|
+
* Полностью очищает коллекцию и сбрасывает служебные состояния выбора.
|
|
7642
|
+
*/
|
|
7643
|
+
clear() {
|
|
7644
|
+
this._items.clear();
|
|
7645
|
+
this.updatedId = null;
|
|
7646
|
+
this.selectedId = null;
|
|
7647
|
+
this.deletedId = null;
|
|
7648
|
+
}
|
|
7649
|
+
_updatedId = null;
|
|
7650
|
+
get updatedId() {
|
|
7651
|
+
return this._updatedId;
|
|
7652
|
+
}
|
|
7653
|
+
set updatedId(value) {
|
|
7654
|
+
this._updatedId = value;
|
|
7655
|
+
}
|
|
7656
|
+
get updatedItem() {
|
|
7657
|
+
if (this.updatedId != null) {
|
|
7658
|
+
const item = this.getById(this.updatedId);
|
|
7659
|
+
return item;
|
|
7660
|
+
}
|
|
7661
|
+
}
|
|
7662
|
+
_selectedId = null;
|
|
7663
|
+
get selectedId() {
|
|
7664
|
+
return this._selectedId;
|
|
7665
|
+
}
|
|
7666
|
+
set selectedId(value) {
|
|
7667
|
+
this._selectedId = value;
|
|
7668
|
+
}
|
|
7669
|
+
get selectedItem() {
|
|
7670
|
+
if (this.selectedId != null) {
|
|
7671
|
+
const item = this.getById(this.selectedId);
|
|
7672
|
+
return item;
|
|
7673
|
+
}
|
|
7674
|
+
}
|
|
7675
|
+
_deletedId = null;
|
|
7676
|
+
get deletedId() {
|
|
7677
|
+
return this._deletedId;
|
|
7678
|
+
}
|
|
7679
|
+
set deletedId(value) {
|
|
7680
|
+
this._deletedId = value;
|
|
7681
|
+
}
|
|
7682
|
+
get deletedItem() {
|
|
7683
|
+
if (this.deletedId != null) {
|
|
7684
|
+
const item = this.getById(this.deletedId);
|
|
7685
|
+
return item;
|
|
7686
|
+
}
|
|
7687
|
+
}
|
|
7688
|
+
}
|
|
7689
|
+
|
|
7530
7690
|
class LocalStateService {
|
|
7531
7691
|
constructor() { }
|
|
7532
7692
|
load(name) {
|
|
@@ -48528,6 +48688,7 @@ exports.Button = Button;
|
|
|
48528
48688
|
exports.CSVUploader = CSVUploader;
|
|
48529
48689
|
exports.Card = CustomCard;
|
|
48530
48690
|
exports.Checkbox = CustomCheckbox;
|
|
48691
|
+
exports.CollectionService = CollectionService;
|
|
48531
48692
|
exports.CopyText = CopyText;
|
|
48532
48693
|
exports.DartcomAuthProvider = auth;
|
|
48533
48694
|
exports.DartcomInitializeProvider = DartcomInitializeProvider;
|
package/dist/index.esm.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{Operations}from"./lib/types.esm.js";export{useDeviceType}from"./lib/hooks/useDeviceType.esm.js";export{useGetUser,useLazyGetUser}from"./lib/hooks/useGetUser.esm.js";export{useShowErrorSnackbar}from"./lib/hooks/useShowErrorSnackbar.esm.js";export{useShowSnackbar}from"./lib/hooks/useShowSnackbar.esm.js";export{useSignIn}from"./lib/hooks/useSignIn.esm.js";export{useSignOut}from"./lib/hooks/useSignOut.esm.js";export{copyInformation,encodeString,getEntityNames,getImageSrc,getNewId,getUniqueKey,getUrlencodedBody,showSnackbar}from"./lib/utils.esm.js";export{_testApiKeys}from"./configs/global/constants.esm.js";export{GlobalConfig}from"./configs/global/global.esm.js";export{API_METHODS}from"./constants/api.esm.js";export{PanelsNames}from"./constants/map.esm.js";export{arraySchema,dateRequiredSchema,dateSchema,getStringRequiredSchema,getStringSchema,numberRequiredSchema,numberSchema}from"./constants/schema.esm.js";export{default as Accordion}from"./components/accordion/accordion.esm.js";export{default as AlertDialog}from"./components/alert-dialog/alert-dialog.esm.js";export{default as Button}from"./components/buttons/button/button.esm.js";export{default as DeleteButton}from"./components/buttons/delete/delete.esm.js";export{default as IconButton}from"./components/buttons/icon/icon.esm.js";export{default as UploadButton}from"./components/buttons/upload/upload.esm.js";export{default as Card}from"./components/card/card.esm.js";export{default as Checkbox}from"./components/checkbox/checkbox.esm.js";export{default as CopyText}from"./components/copy-text/copy-text.esm.js";export{default as DateField}from"./components/date-field/date-field.esm.js";export{default as DragList}from"./components/drag-list/drag-list.esm.js";export{default as DraggableContainer}from"./components/draggable-container/draggable-container.esm.js";export{default as ErrorBoundary}from"./components/error-boundary/error-boundary.esm.js";export{default as FormErrorMessage}from"./components/form/error-message/error-message.esm.js";export{default as Form}from"./components/form/form.esm.js";export{useFormContext}from"./components/form/hooks/useFormContext.esm.js";export{default as Input}from"./components/input/input.esm.js";export{SourceLayers,TangramSourceNames}from"./components/layers/leaflet/lib/types.esm.js";export{getAllLayers,getAllPointLayers,getAllPolygonLayers,getAllPolylineLayers,getBackendDate,getLayerModalsNames,getLayerName,getValidLayer}from"./components/layers/leaflet/lib/utils.esm.js";export{sourceUrl,tile_size}from"./components/layers/leaflet/config/constants.esm.js";export{getBuildingLayers}from"./components/layers/leaflet/layers/building/utils.esm.js";export{getBuiltupAreaLayers}from"./components/layers/leaflet/layers/builtup-area/utils.esm.js";export{getAdminAreaLayers}from"./components/layers/leaflet/layers/admin-area/utils.esm.js";export{getCameraLayers}from"./components/layers/leaflet/layers/camera/lib/utils.esm.js";export{cameraConfig}from"./components/layers/leaflet/layers/camera/config/constants.esm.js";export{getCityPOILayers}from"./components/layers/leaflet/layers/city-POI/utils.esm.js";export{getConditionLayers}from"./components/layers/leaflet/layers/condition/utils.esm.js";export{getFacilityAreaLayers}from"./components/layers/leaflet/layers/facility-area/utils.esm.js";export{landuseAreaFeatureTypes,landuseAreaLayerGeometryData,landuseAreaLayerLabelData}from"./components/layers/leaflet/layers/landuse-area/constants.esm.js";export{getLanduseAreaGeometryLayer,getLanduseAreaLabelLayer,getLanduseAreaLayers}from"./components/layers/leaflet/layers/landuse-area/utils.esm.js";export{getLaneMarkingArrowLayers}from"./components/layers/leaflet/layers/lane-marking-arrow/utils.esm.js";export{getLinkLayers}from"./components/layers/leaflet/layers/link/utils.esm.js";export{getNatureFieldLayers}from"./components/layers/leaflet/layers/nature-field/utils.esm.js";export{getNatureForestGeometryLayer,getNatureForestLayers}from"./components/layers/leaflet/layers/nature-forest/utils.esm.js";export{getOceanAreaLayers}from"./components/layers/leaflet/layers/ocean-area/utils.esm.js";export{getOneWayLayers}from"./components/layers/leaflet/layers/one-way/utils.esm.js";export{getPillarLayers}from"./components/layers/leaflet/layers/pillar/lib/utils.esm.js";export{pillarConfig}from"./components/layers/leaflet/layers/pillar/config/constants.esm.js";export{catIds,text_source}from"./components/layers/leaflet/layers/POI/constants.esm.js";export{getDefaultPOI,getPOILayers,getPOITypeLayer}from"./components/layers/leaflet/layers/POI/utils.esm.js";export{getPointAddressLayers}from"./components/layers/leaflet/layers/point-address/utils.esm.js";export{getRailroadLayers}from"./components/layers/leaflet/layers/railroad/utils.esm.js";export{getTrafficSignImgSrc,getTrafficSignLayers,parseTrafficSignCSVFile}from"./components/layers/leaflet/layers/traffic-sign/lib/utils.esm.js";export{allTrafficSigns,trafficSignConfig,trafficSigns,trafficSignsDop}from"./components/layers/leaflet/layers/traffic-sign/config/constants.esm.js";export{getTrafficSignalLayers}from"./components/layers/leaflet/layers/traffic-signal/lib/utils.esm.js";export{trafficSignalConfig}from"./components/layers/leaflet/layers/traffic-signal/config/constants.esm.js";export{getWaterAreaLayers}from"./components/layers/leaflet/layers/water-area/utils.esm.js";export{getWaterLinkLayers}from"./components/layers/leaflet/layers/water-link/utils.esm.js";export{default as LeafletLayer}from"./components/layers/leaflet/leaflet.esm.js";export{TangramLayer}from"./components/layers/leaflet/services/tangram-layer.esm.js";export{default as List}from"./components/list/list.esm.js";export{default as Loader}from"./components/loader/loader.esm.js";export{default as Modal}from"./components/modal/modal.esm.js";export{modalStyle}from"./components/modal/styles.esm.js";export{default as NoData}from"./components/no-data/no-data.esm.js";export{default as Paragraph}from"./components/paragraph/paragraph.esm.js";export{default as Select}from"./components/select/select.esm.js";export{default as Tabs}from"./components/tabs/tabs.esm.js";export{default as TextField}from"./components/text-field/text-field.esm.js";export{CSVUploader}from"./components/uploader/csv/csv.esm.js";export{default as ExcelUploader}from"./components/uploader/excel/excel.esm.js";export{default as AuthPage}from"./pages/auth/auth.esm.js";export{default as DartcomAuthProvider}from"./providers/auth/auth.esm.js";export{default as DartcomInitializeProvider}from"./providers/initialize/initialize.esm.js";export{default as DartcomLocalizationProvider}from"./providers/localization/localization.esm.js";export{RootStore,rootStore}from"./providers/mobx/store.esm.js";export{AlertStore,alertStore}from"./providers/mobx/stores/alert.esm.js";export{AuthStore,authStore}from"./providers/mobx/stores/auth.esm.js";export{ModalStore,modalStore}from"./providers/mobx/stores/modal.esm.js";export{DartcomMobxProvider,StoreContext}from"./providers/mobx/mobx.esm.js";export{default as DartcomProviders}from"./providers/providers.esm.js";export{ApiService}from"./services/api/api.esm.js";export{localStateService}from"./services/local-state/local-state.esm.js";export{localizationService}from"./services/localization/localization.esm.js";export{loggerService}from"./services/logger/logger.esm.js";export{MapService,mapService}from"./services/map/map.esm.js";export{queryService}from"./services/query/query.esm.js";
|
|
1
|
+
export{Operations}from"./lib/types.esm.js";export{useDeviceType}from"./lib/hooks/useDeviceType.esm.js";export{useGetUser,useLazyGetUser}from"./lib/hooks/useGetUser.esm.js";export{useShowErrorSnackbar}from"./lib/hooks/useShowErrorSnackbar.esm.js";export{useShowSnackbar}from"./lib/hooks/useShowSnackbar.esm.js";export{useSignIn}from"./lib/hooks/useSignIn.esm.js";export{useSignOut}from"./lib/hooks/useSignOut.esm.js";export{copyInformation,encodeString,getEntityNames,getImageSrc,getNewId,getUniqueKey,getUrlencodedBody,showSnackbar}from"./lib/utils.esm.js";export{_testApiKeys}from"./configs/global/constants.esm.js";export{GlobalConfig}from"./configs/global/global.esm.js";export{API_METHODS}from"./constants/api.esm.js";export{PanelsNames}from"./constants/map.esm.js";export{arraySchema,dateRequiredSchema,dateSchema,getStringRequiredSchema,getStringSchema,numberRequiredSchema,numberSchema}from"./constants/schema.esm.js";export{default as Accordion}from"./components/accordion/accordion.esm.js";export{default as AlertDialog}from"./components/alert-dialog/alert-dialog.esm.js";export{default as Button}from"./components/buttons/button/button.esm.js";export{default as DeleteButton}from"./components/buttons/delete/delete.esm.js";export{default as IconButton}from"./components/buttons/icon/icon.esm.js";export{default as UploadButton}from"./components/buttons/upload/upload.esm.js";export{default as Card}from"./components/card/card.esm.js";export{default as Checkbox}from"./components/checkbox/checkbox.esm.js";export{default as CopyText}from"./components/copy-text/copy-text.esm.js";export{default as DateField}from"./components/date-field/date-field.esm.js";export{default as DragList}from"./components/drag-list/drag-list.esm.js";export{default as DraggableContainer}from"./components/draggable-container/draggable-container.esm.js";export{default as ErrorBoundary}from"./components/error-boundary/error-boundary.esm.js";export{default as FormErrorMessage}from"./components/form/error-message/error-message.esm.js";export{default as Form}from"./components/form/form.esm.js";export{useFormContext}from"./components/form/hooks/useFormContext.esm.js";export{default as Input}from"./components/input/input.esm.js";export{SourceLayers,TangramSourceNames}from"./components/layers/leaflet/lib/types.esm.js";export{getAllLayers,getAllPointLayers,getAllPolygonLayers,getAllPolylineLayers,getBackendDate,getLayerModalsNames,getLayerName,getValidLayer}from"./components/layers/leaflet/lib/utils.esm.js";export{sourceUrl,tile_size}from"./components/layers/leaflet/config/constants.esm.js";export{getBuildingLayers}from"./components/layers/leaflet/layers/building/utils.esm.js";export{getBuiltupAreaLayers}from"./components/layers/leaflet/layers/builtup-area/utils.esm.js";export{getAdminAreaLayers}from"./components/layers/leaflet/layers/admin-area/utils.esm.js";export{getCameraLayers}from"./components/layers/leaflet/layers/camera/lib/utils.esm.js";export{cameraConfig}from"./components/layers/leaflet/layers/camera/config/constants.esm.js";export{getCityPOILayers}from"./components/layers/leaflet/layers/city-POI/utils.esm.js";export{getConditionLayers}from"./components/layers/leaflet/layers/condition/utils.esm.js";export{getFacilityAreaLayers}from"./components/layers/leaflet/layers/facility-area/utils.esm.js";export{landuseAreaFeatureTypes,landuseAreaLayerGeometryData,landuseAreaLayerLabelData}from"./components/layers/leaflet/layers/landuse-area/constants.esm.js";export{getLanduseAreaGeometryLayer,getLanduseAreaLabelLayer,getLanduseAreaLayers}from"./components/layers/leaflet/layers/landuse-area/utils.esm.js";export{getLaneMarkingArrowLayers}from"./components/layers/leaflet/layers/lane-marking-arrow/utils.esm.js";export{getLinkLayers}from"./components/layers/leaflet/layers/link/utils.esm.js";export{getNatureFieldLayers}from"./components/layers/leaflet/layers/nature-field/utils.esm.js";export{getNatureForestGeometryLayer,getNatureForestLayers}from"./components/layers/leaflet/layers/nature-forest/utils.esm.js";export{getOceanAreaLayers}from"./components/layers/leaflet/layers/ocean-area/utils.esm.js";export{getOneWayLayers}from"./components/layers/leaflet/layers/one-way/utils.esm.js";export{getPillarLayers}from"./components/layers/leaflet/layers/pillar/lib/utils.esm.js";export{pillarConfig}from"./components/layers/leaflet/layers/pillar/config/constants.esm.js";export{catIds,text_source}from"./components/layers/leaflet/layers/POI/constants.esm.js";export{getDefaultPOI,getPOILayers,getPOITypeLayer}from"./components/layers/leaflet/layers/POI/utils.esm.js";export{getPointAddressLayers}from"./components/layers/leaflet/layers/point-address/utils.esm.js";export{getRailroadLayers}from"./components/layers/leaflet/layers/railroad/utils.esm.js";export{getTrafficSignImgSrc,getTrafficSignLayers,parseTrafficSignCSVFile}from"./components/layers/leaflet/layers/traffic-sign/lib/utils.esm.js";export{allTrafficSigns,trafficSignConfig,trafficSigns,trafficSignsDop}from"./components/layers/leaflet/layers/traffic-sign/config/constants.esm.js";export{getTrafficSignalLayers}from"./components/layers/leaflet/layers/traffic-signal/lib/utils.esm.js";export{trafficSignalConfig}from"./components/layers/leaflet/layers/traffic-signal/config/constants.esm.js";export{getWaterAreaLayers}from"./components/layers/leaflet/layers/water-area/utils.esm.js";export{getWaterLinkLayers}from"./components/layers/leaflet/layers/water-link/utils.esm.js";export{default as LeafletLayer}from"./components/layers/leaflet/leaflet.esm.js";export{TangramLayer}from"./components/layers/leaflet/services/tangram-layer.esm.js";export{default as List}from"./components/list/list.esm.js";export{default as Loader}from"./components/loader/loader.esm.js";export{default as Modal}from"./components/modal/modal.esm.js";export{modalStyle}from"./components/modal/styles.esm.js";export{default as NoData}from"./components/no-data/no-data.esm.js";export{default as Paragraph}from"./components/paragraph/paragraph.esm.js";export{default as Select}from"./components/select/select.esm.js";export{default as Tabs}from"./components/tabs/tabs.esm.js";export{default as TextField}from"./components/text-field/text-field.esm.js";export{CSVUploader}from"./components/uploader/csv/csv.esm.js";export{default as ExcelUploader}from"./components/uploader/excel/excel.esm.js";export{default as AuthPage}from"./pages/auth/auth.esm.js";export{default as DartcomAuthProvider}from"./providers/auth/auth.esm.js";export{default as DartcomInitializeProvider}from"./providers/initialize/initialize.esm.js";export{default as DartcomLocalizationProvider}from"./providers/localization/localization.esm.js";export{RootStore,rootStore}from"./providers/mobx/store.esm.js";export{AlertStore,alertStore}from"./providers/mobx/stores/alert.esm.js";export{AuthStore,authStore}from"./providers/mobx/stores/auth.esm.js";export{ModalStore,modalStore}from"./providers/mobx/stores/modal.esm.js";export{DartcomMobxProvider,StoreContext}from"./providers/mobx/mobx.esm.js";export{default as DartcomProviders}from"./providers/providers.esm.js";export{ApiService}from"./services/api/api.esm.js";export{CollectionService}from"./services/collection/collection.esm.js";export{localStateService}from"./services/local-state/local-state.esm.js";export{localizationService}from"./services/localization/localization.esm.js";export{loggerService}from"./services/logger/logger.esm.js";export{MapService,mapService}from"./services/map/map.esm.js";export{queryService}from"./services/query/query.esm.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../../_virtual/uuid.esm.js";import"../../../node_modules/notistack/notistack.esm.esm.js";import"./alert.esm.js";import"./modal.esm.js";import"../mobx.esm.js";import{localStateService as s}from"../../../services/local-state/local-state.esm.js";import"axios";import
|
|
1
|
+
import"../../../_virtual/uuid.esm.js";import"../../../node_modules/notistack/notistack.esm.esm.js";import"./alert.esm.js";import"./modal.esm.js";import"../mobx.esm.js";import{localStateService as s}from"../../../services/local-state/local-state.esm.js";import"axios";import{makeAutoObservable as e,reaction as t}from"../../../node_modules/mobx/dist/mobx.esm.esm.js";import"../../../_virtual/leaflet-src.esm.js";import"../../../services/query/query.esm.js";class o{constructor(){e(this),t(()=>this.isUnauthorized,e=>{e&&(s.remove("access_token"),s.remove("token_type"))})}_isUnauthorized=!1;get isUnauthorized(){return this._isUnauthorized}set isUnauthorized(s){this._isUnauthorized=s}}const i=new o;export{o as AuthStore,i as authStore};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Nullable, StringOrNumber } from '../../lib';
|
|
2
|
+
export declare class CollectionService<T, Id extends StringOrNumber> {
|
|
3
|
+
private readonly props;
|
|
4
|
+
private _items;
|
|
5
|
+
constructor(props: {
|
|
6
|
+
getId: (item: T) => Id;
|
|
7
|
+
});
|
|
8
|
+
/**
|
|
9
|
+
* Возаращает id по самому элементу коллекции
|
|
10
|
+
*/
|
|
11
|
+
getIdByItem(item: T): Id;
|
|
12
|
+
/**
|
|
13
|
+
* Возвращает observable-коллекцию элементов в виде Map.
|
|
14
|
+
*/
|
|
15
|
+
get items(): import("mobx").ObservableMap<StringOrNumber, T>;
|
|
16
|
+
/**
|
|
17
|
+
* Возвращает все элементы коллекции в виде обычного массива.
|
|
18
|
+
*/
|
|
19
|
+
get list(): T[];
|
|
20
|
+
/**
|
|
21
|
+
* Возвращает все элементы, у которых значение указанного поля
|
|
22
|
+
* строго равно переданному значению.
|
|
23
|
+
*
|
|
24
|
+
* @typeParam K Ключ поля элемента.
|
|
25
|
+
* @param key Поле, по которому выполняется поиск.
|
|
26
|
+
* @param value Значение, с которым сравнивается поле.
|
|
27
|
+
* @returns Массив всех найденных элементов. Если совпадений нет, вернётся пустой массив.
|
|
28
|
+
*/
|
|
29
|
+
findAllBy<K extends keyof T>(key: K, value: T[K]): T[];
|
|
30
|
+
/**
|
|
31
|
+
* Возвращает все элементы, у которых значение указанного поля
|
|
32
|
+
* входит в список переданных значений.
|
|
33
|
+
*
|
|
34
|
+
* @typeParam K Ключ поля элемента.
|
|
35
|
+
* @param key Поле, по которому выполняется поиск.
|
|
36
|
+
* @param values Набор допустимых значений поля.
|
|
37
|
+
* @returns Массив всех найденных элементов. Если совпадений нет, вернётся пустой массив.
|
|
38
|
+
*/
|
|
39
|
+
findAllIn<K extends keyof T>(key: K, values: readonly T[K][]): T[];
|
|
40
|
+
/**
|
|
41
|
+
* Возвращает все элементы, которые одновременно соответствуют
|
|
42
|
+
* всем переданным критериям.
|
|
43
|
+
*
|
|
44
|
+
* Метод выполняет точное сравнение по каждому полю.
|
|
45
|
+
* Если передан пустой объект критериев, будут возвращены все элементы коллекции.
|
|
46
|
+
*
|
|
47
|
+
* @param criteria Объект с набором полей и значений для поиска.
|
|
48
|
+
* @returns Массив всех элементов, удовлетворяющих всем условиям сразу.
|
|
49
|
+
*/
|
|
50
|
+
findAllWhere(criteria: Partial<T>): T[];
|
|
51
|
+
/**
|
|
52
|
+
* Возвращает элемент по его идентификатору.
|
|
53
|
+
*
|
|
54
|
+
* @param id Идентификатор элемента.
|
|
55
|
+
* @returns Найденный элемент или undefined, если элемента с таким id нет.
|
|
56
|
+
*/
|
|
57
|
+
getById(id: Id): T | undefined;
|
|
58
|
+
/**
|
|
59
|
+
* Добавляет элемент в коллекцию.
|
|
60
|
+
*
|
|
61
|
+
* @param item Элемент для добавления или замены.
|
|
62
|
+
*/
|
|
63
|
+
add(item: T): void;
|
|
64
|
+
/**
|
|
65
|
+
* Добавляет в коллекцию несколько элементов подряд.
|
|
66
|
+
*
|
|
67
|
+
* @param items Массив элементов для добавления.
|
|
68
|
+
*/
|
|
69
|
+
addMany(items: T[]): void;
|
|
70
|
+
/**
|
|
71
|
+
* Удаляет элемент из коллекции по id.
|
|
72
|
+
*
|
|
73
|
+
* @param id Идентификатор удаляемого элемента.
|
|
74
|
+
*/
|
|
75
|
+
delete(id: Id): void;
|
|
76
|
+
/**
|
|
77
|
+
* Удаляет из коллекции несколько элементов по списку id.
|
|
78
|
+
*
|
|
79
|
+
* @param ids Массив идентификаторов для удаления.
|
|
80
|
+
*/
|
|
81
|
+
deleteMany(ids: Id[]): void;
|
|
82
|
+
/**
|
|
83
|
+
* Полностью очищает коллекцию и сбрасывает служебные состояния выбора.
|
|
84
|
+
*/
|
|
85
|
+
clear(): void;
|
|
86
|
+
private _updatedId;
|
|
87
|
+
get updatedId(): Nullable<Id>;
|
|
88
|
+
set updatedId(value: Nullable<Id>);
|
|
89
|
+
get updatedItem(): T | undefined;
|
|
90
|
+
private _selectedId;
|
|
91
|
+
get selectedId(): Nullable<Id>;
|
|
92
|
+
set selectedId(value: Nullable<Id>);
|
|
93
|
+
get selectedItem(): T | undefined;
|
|
94
|
+
private _deletedId;
|
|
95
|
+
get deletedId(): Nullable<Id>;
|
|
96
|
+
set deletedId(value: Nullable<Id>);
|
|
97
|
+
get deletedItem(): T | undefined;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=collection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../../src/services/collection/collection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAIjD,qBAAa,iBAAiB,CAAC,CAAC,EAAE,EAAE,SAAS,cAAc;IAIvD,OAAO,CAAC,QAAQ,CAAC,KAAK;IAHxB,OAAO,CAAC,MAAM,CAAuC;gBAGlC,KAAK,EAAE;QACtB,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;KACxB;IAKH;;OAEG;IACI,WAAW,CAAC,IAAI,EAAE,CAAC;IAI1B;;OAEG;IACH,IAAW,KAAK,oDAEf;IAED;;OAEG;IACH,IAAW,IAAI,QAEd;IAED;;;;;;;;OAQG;IACI,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAIvD;;;;;;;;OAQG;IACI,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;IAMnE;;;;;;;;;OASG;IACI,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAQxC;;;;;OAKG;IACI,OAAO,CAAC,EAAE,EAAE,EAAE;IAMrB;;;;OAIG;IACI,GAAG,CAAC,IAAI,EAAE,CAAC;IAIlB;;;;OAIG;IACI,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE;IAMzB;;;;OAIG;IACI,MAAM,CAAC,EAAE,EAAE,EAAE;IAIpB;;;;OAIG;IACI,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE;IAM3B;;OAEG;IACI,KAAK;IAQZ,OAAO,CAAC,UAAU,CAAsB;IACxC,IAAW,SAAS,iBAEnB;IACD,IAAW,SAAS,CAAC,KAAK,cAAA,EAEzB;IACD,IAAW,WAAW,kBAMrB;IAED,OAAO,CAAC,WAAW,CAAsB;IACzC,IAAW,UAAU,iBAEpB;IACD,IAAW,UAAU,CAAC,KAAK,cAAA,EAE1B;IACD,IAAW,YAAY,kBAMtB;IAED,OAAO,CAAC,UAAU,CAAsB;IACxC,IAAW,SAAS,iBAEnB;IACD,IAAW,SAAS,CAAC,KAAK,cAAA,EAEzB;IACD,IAAW,WAAW,kBAMrB;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{observable as e,makeAutoObservable as t}from"../../node_modules/mobx/dist/mobx.esm.esm.js";class d{props;_items=e.map();constructor(e){this.props=e,t(this)}getIdByItem(e){return this.props.getId(e)}get items(){return this._items}get list(){return Array.from(this.items.values())}findAllBy(e,t){return this.list.filter(d=>d[e]===t)}findAllIn(e,t){const d=new Set(t);return this.list.filter(t=>d.has(t[e]))}findAllWhere(e){const t=Object.entries(e);return this.list.filter(e=>t.every(([t,d])=>e[t]===d))}getById(e){return this.items.get(e)}add(e){this._items.set(this.props.getId(e),e)}addMany(e){e.forEach(e=>{this.add(e)})}delete(e){this._items.delete(e)}deleteMany(e){e.forEach(e=>{this.delete(e)})}clear(){this._items.clear(),this.updatedId=null,this.selectedId=null,this.deletedId=null}_updatedId=null;get updatedId(){return this._updatedId}set updatedId(e){this._updatedId=e}get updatedItem(){if(null!=this.updatedId){return this.getById(this.updatedId)}}_selectedId=null;get selectedId(){return this._selectedId}set selectedId(e){this._selectedId=e}get selectedItem(){if(null!=this.selectedId){return this.getById(this.selectedId)}}_deletedId=null;get deletedId(){return this._deletedId}set deletedId(e){this._deletedId=e}get deletedItem(){if(null!=this.deletedId){return this.getById(this.deletedId)}}}export{d as CollectionService};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/collection/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
|
package/dist/services/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC"}
|