UNPKG

react-application-core

Version:

A react-based application core for the business applications.

310 lines 11.1 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.MapAsUtils = void 0; var R = require("ramda"); var filter_1 = require("./filter"); var definition_1 = require("../definition"); var definitions_interface_1 = require("../definitions.interface"); var cond_1 = require("./cond"); var entity_1 = require("./entity"); var map_as_original_1 = require("./map-as-original"); var map_as_wrapper_1 = require("./map-as-wrapper"); var nvl_1 = require("./nvl"); var select_1 = require("./select"); var type_1 = require("./type"); var wrapper_1 = require("./wrapper"); /** * @map-as * * @stable [02.08.2020] * @param entity * @param pageSize */ var mapPaginatedEntityAsPagedEntity = function (entity, pageSize) { if (pageSize === void 0) { pageSize = definition_1.DEFAULT_PAGE_SIZE; } return cond_1.ConditionUtils.ifNotNilThanValue(entity, function () { return map_as_original_1.MapAsOriginalUtils.pagedEntity({ page: entity.lockPage ? entity.page : definition_1.FIRST_PAGE, pageSize: pageSize, }); }, definitions_interface_1.UNDEF_SYMBOL); }; /** * @map-as * * @stable [02.08.2020] * @param entity * @param pageSize */ var mapListHolderEntityAsPagedEntity = function (entity, pageSize) { if (pageSize === void 0) { pageSize = definition_1.DEFAULT_PAGE_SIZE; } return mapPaginatedEntityAsPagedEntity(select_1.Selectors.list(entity), pageSize); }; /** * @map-as * * @stable [31.07.2020] * @param extendedEntity */ var mapExtendedEntityAsApiEntity = function (extendedEntity) { var changes = extendedEntity.changes, entity = extendedEntity.entity, originalEntity = extendedEntity.originalEntity; var entityId = select_1.Selectors.entityId(entity); var newEntity = R.isNil(entityId); return filter_1.FilterUtils.defValuesFilter({ changes: changes, diff: newEntity ? entity : changes, entity: entity, entityId: entityId, newEntity: newEntity, originalEntity: originalEntity, }); }; /** * @map-as * * @stable [31.07.2020] * @param formEntity * @param entity */ var mapEntityAsExtendedEntity = function (formEntity, entity) { var newEntity = entity_1.EntityUtils.isNewEntity(entity); var _a = formEntity || {}, changes = _a.changes, defaultChanges = _a.defaultChanges; var originalEntity; if (!R.isNil(nvl_1.NvlUtils.nvl(defaultChanges, entity))) { originalEntity = __assign(__assign({}, defaultChanges), entity); } return map_as_original_1.MapAsOriginalUtils.extendedEntity({ changes: changes, entity: __assign(__assign({}, originalEntity), changes), entityId: cond_1.ConditionUtils.orUndef(!newEntity, function () { return entity.id; }), newEntity: newEntity, originalEntity: originalEntity, }); }; /** * @map-as * * @stable [31.07.2020] * @param formEntity * @param entity */ var mapEntityAsExtendedFormEntity = function (formEntity, entity) { return (__assign(__assign({}, map_as_wrapper_1.MapAsWrapperUtils.form(formEntity)), mapEntityAsExtendedEntity(formEntity, entity))); }; /** * @map-as * * @stable [31.07.2020] * @param entity */ var mapProgressAsDisabled = function (entity) { return map_as_wrapper_1.MapAsWrapperUtils.disabled(wrapper_1.WrapperUtils.inProgress(entity)); }; /** * @map-as * * @stable [31.07.2020] * @param listEntity */ var mapListHolderEntityAsDisabled = function (listEntity) { return mapProgressAsDisabled(select_1.Selectors.list(listEntity)); }; /** * @map-as * * @stable [10.08.2020] * @param dictionaryEntity */ var mapDictionaryEntityAsDisabled = function (dictionaryEntity) { return mapProgressAsDisabled(dictionaryEntity); }; /** * @map-as * * @stable [10.08.2020] * @param dictionaryEntity */ var mapDictionaryEntityAsProgress = function (dictionaryEntity) { return map_as_original_1.MapAsOriginalUtils.progressWrapper(dictionaryEntity); }; /** * @map-as * * @stable [02.08.2020] * @param entity */ var mapQueryFilterHolderEntityAsQuery = function (entity) { return map_as_wrapper_1.MapAsWrapperUtils.query(select_1.Selectors.queryFilterEntityQuery(entity)); }; /** * @map-as * * @stable [02.08.2020] * @param formEntity * @param entity */ var mapFormEntityAsFinalEntity = function (formEntity, entity) { return mapEntityAsExtendedFormEntity(formEntity, entity).entity; }; /** * @map-as * * @stable [01.08.2020] * @param listHolderEntity * @param formEntity */ var mapListSelectedEntityAsExtendedFormEntity = function (listHolderEntity, formEntity) { return mapEntityAsExtendedFormEntity(formEntity, select_1.Selectors.listSelectedEntity(listHolderEntity)); }; /** * @map-as * * @stable [01.08.2020] * @param listHolderEntity * @param formEntity */ var mapListSelectedEntityAsFinalEntity = function (listHolderEntity, formEntity) { return mapListSelectedEntityAsExtendedFormEntity(listHolderEntity, formEntity).entity; }; /** * @map-as * * @stable [02.08.2020] * @param entity */ var mapNamedEntityAsRawDataLabeledValueEntity = function (entity) { return cond_1.ConditionUtils.ifNotNilThanValue(entity, function () { return (filter_1.FilterUtils.defValuesFilter({ value: entity.id, label: entity.name || String(entity.id), rawData: entity, })); }, definitions_interface_1.UNDEF_SYMBOL); }; /** * @map-as * * @stable [02.08.2020] * @param formEntity * @param entity */ var mapFormEntityAsPrimaryFilterExtendedFormEntity = function (formEntity, entity) { return map_as_wrapper_1.MapAsWrapperUtils.primaryFilter(mapEntityAsExtendedFormEntity(formEntity, entity)); }; /** * @map-as * * @stable [02.08.2020] * @param formEntity * @param entity */ var mapFormEntityAsSecondaryFilterExtendedFormEntity = function (formEntity, entity) { return map_as_wrapper_1.MapAsWrapperUtils.secondaryFilter(mapEntityAsExtendedFormEntity(formEntity, entity)); }; /** * @map-as * * @stable [02.08.2020] * @param primaryFilterFormEntity * @param entity */ var mapPrimaryFilterFormEntityAsPrimaryFilterExtendedFormEntity = function (primaryFilterFormEntity, entity) { return mapFormEntityAsPrimaryFilterExtendedFormEntity(select_1.Selectors.primaryFilter(primaryFilterFormEntity), entity); }; /** * @map-as * * @stable [02.08.2020] * @param secondaryFilterFormEntity * @param entity */ var mapSecondaryFilterFormEntityAsSecondaryFilterExtendedFormEntity = function (secondaryFilterFormEntity, entity) { return mapFormEntityAsSecondaryFilterExtendedFormEntity(select_1.Selectors.secondaryFilter(secondaryFilterFormEntity), entity); }; /** * @map-as * * @stable [02.08.2020] * @param entity * @param cfg */ var mapEntityAsFullSearchFilter = function (entity, cfg) { if (cfg === void 0) { cfg = { paging: true }; } return (__assign(__assign(__assign(__assign({}, mapQueryFilterHolderEntityAsQuery(entity)), mapFormEntityAsFinalEntity(select_1.Selectors.primaryFilter(entity))), mapFormEntityAsFinalEntity(select_1.Selectors.secondaryFilter(entity))), cfg.paging ? mapListHolderEntityAsPagedEntity(entity) : {})); }; /** * @map-as * * @stable [02.08.2020] * @param entity */ var mapOptionEntityAsSelectOptionEntity = function (entity) { return map_as_original_1.MapAsOriginalUtils.selectOptionEntity({ disabled: entity.disabled, label: entity.name, rawData: entity, value: entity.id, }); }; /** * @map-as * * @stable [02.08.2020] * @param data */ var mapOptionEntitiesAsSelectOptionEntities = function (data) { return cond_1.ConditionUtils.ifNotNilThanValue(data, function () { return [].concat(data).map(function (entity) { return mapOptionEntityAsSelectOptionEntity(entity); }); }, definitions_interface_1.UNDEF_SYMBOL); }; /** * @map-as * * @stable [02.08.2020] * @param dictionaryEntity * @param accessor */ var mapDictionaryEntityAsSelectOptionEntities = function (dictionaryEntity, accessor) { return mapOptionEntitiesAsSelectOptionEntities(cond_1.ConditionUtils.ifNotNilThanValue(select_1.Selectors.data(dictionaryEntity), function (data) { return type_1.TypeUtils.isFn(accessor) ? accessor(data) : data; })); }; /** * @map-as * * @stable [06.08.2020] * @param entity * @param accessor */ var mapDictionaryEntityAsSelectEntity = function (entity, accessor) { return (__assign(__assign({}, map_as_wrapper_1.MapAsWrapperUtils.waitingForOptions(wrapper_1.WrapperUtils.inProgress(entity))), map_as_wrapper_1.MapAsWrapperUtils.options(MapAsUtils.dictionaryEntityAsSelectOptionEntities(entity, accessor)))); }; /** * @stable [31.07.2020] */ var MapAsUtils = /** @class */ (function () { function MapAsUtils() { } MapAsUtils.dictionaryEntityAsDisabled = mapDictionaryEntityAsDisabled; MapAsUtils.dictionaryEntityAsProgress = mapDictionaryEntityAsProgress; MapAsUtils.dictionaryEntityAsSelectEntity = mapDictionaryEntityAsSelectEntity; MapAsUtils.dictionaryEntityAsSelectOptionEntities = mapDictionaryEntityAsSelectOptionEntities; MapAsUtils.entityAsExtendedEntity = mapEntityAsExtendedEntity; MapAsUtils.entityAsExtendedFormEntity = mapEntityAsExtendedFormEntity; MapAsUtils.entityAsFullSearchFilter = mapEntityAsFullSearchFilter; MapAsUtils.extendedEntityAsApiEntity = mapExtendedEntityAsApiEntity; MapAsUtils.formEntityAsFinalEntity = mapFormEntityAsFinalEntity; MapAsUtils.listHolderEntityAsDisabled = mapListHolderEntityAsDisabled; MapAsUtils.listHolderEntityAsPagedEntity = mapListHolderEntityAsPagedEntity; MapAsUtils.listSelectedEntityAsExtendedFormEntity = mapListSelectedEntityAsExtendedFormEntity; MapAsUtils.listSelectedEntityAsFinalEntity = mapListSelectedEntityAsFinalEntity; MapAsUtils.namedEntityAsRawDataLabeledValueEntity = mapNamedEntityAsRawDataLabeledValueEntity; MapAsUtils.optionEntitiesAsSelectOptionEntities = mapOptionEntitiesAsSelectOptionEntities; MapAsUtils.primaryFilterFormEntityAsPrimaryFilterExtendedFormEntity = mapPrimaryFilterFormEntityAsPrimaryFilterExtendedFormEntity; MapAsUtils.queryFilterHolderEntityAsQuery = mapQueryFilterHolderEntityAsQuery; MapAsUtils.secondaryFilterFormEntityAsSecondaryFilterExtendedFormEntity = mapSecondaryFilterFormEntityAsSecondaryFilterExtendedFormEntity; return MapAsUtils; }()); exports.MapAsUtils = MapAsUtils; //# sourceMappingURL=map-as.js.map