UNPKG

@altostra/core

Version:

Core library for shared types and logic

1 lines 3.87 kB
"use strict";var _ExtraDataHelper_extraData,__classPrivateFieldSet=this&&this.__classPrivateFieldSet||function(t,e,a,r,i){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof e?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?i.call(t,a):i?i.value=a:e.set(t,a),a},__classPrivateFieldGet=this&&this.__classPrivateFieldGet||function(t,e,a,r){if("a"===a&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof e?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===a?r:"a"===a?r.call(t):r?r.value:e.get(t)},__rest=this&&this.__rest||function(t,e){var a={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(a[r]=t[r]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(a[r[i]]=t[r[i]])}return a};Object.defineProperty(exports,"__esModule",{value:!0}),exports.mergeExtraData=exports.asDomainsMetadata=exports.parseExtraDataItem=exports.ExtraDataHelper=exports.DEFAULT_DOMAIN_KEY=void 0;const NonEmptyString_1=require("../../../common/CustomTypes/NonEmptyString"),Object_1=require("../../../common/Utils/Object"),from_1=require("@reactivex/ix-es2015-cjs/iterable/from"),filter_1=require("@reactivex/ix-es2015-cjs/iterable/operators/filter"),map_1=require("@reactivex/ix-es2015-cjs/iterable/operators/map");exports.DEFAULT_DOMAIN_KEY="";class ExtraDataHelper{constructor(t){var e,{stackId:a,changeSetId:r,domains:i}=t,s=__rest(t,["stackId","changeSetId","domains"]);_ExtraDataHelper_extraData.set(this,void 0),__classPrivateFieldSet(this,_ExtraDataHelper_extraData,s,"f"),this.stackId=asString(a),this.changeSetId=asString(r),this.domains=null!==(e=asDomainsMetadata(i))&&void 0!==e?e:{}}get extraData(){return Object.assign(Object.assign(Object.assign(Object.assign({},__classPrivateFieldGet(this,_ExtraDataHelper_extraData,"f")),this.stackId&&{stackId:this.stackId}),this.changeSetId&&{changeSetId:this.changeSetId}),Object.keys(this.domains).length>0&&{domains:this.domains})}get(t,e){const a=__classPrivateFieldGet(this,_ExtraDataHelper_extraData,"f")[t];return e?parseExtraDataItem(a,e):a}set(t,e){void 0===e?delete __classPrivateFieldGet(this,_ExtraDataHelper_extraData,"f")[t]:__classPrivateFieldGet(this,_ExtraDataHelper_extraData,"f")[t]=e}}function asString(t){return"string"==typeof t?t:void 0}function parseExtraDataItem(t,e){var a,r,i;return void 0===t?void 0:"string"==typeof t?null===(a=e.fromString)||void 0===a?void 0:a.call(e,t):Array.isArray(t)?null===(r=e.fromArray)||void 0===r?void 0:r.call(e,t):null===(i=e.fromRecord)||void 0===i?void 0:i.call(e,t)}function asDomainsMetadata(t){return parseExtraDataItem(t,{fromString:t=>t?(0,Object_1.fromEntries)((0,from_1.from)(t.split(";")).pipe((0,filter_1.filter)(NonEmptyString_1.isNonEmptyString),(0,map_1.map)(t=>t.split(":")),(0,filter_1.filter)(t=>2===t.length),(0,map_1.map)(([t,e])=>[t,{[exports.DEFAULT_DOMAIN_KEY]:e}]))):void 0,fromRecord:t=>(0,Object_1.fromEntries)((0,from_1.from)(Object.entries(t)).pipe((0,filter_1.filter)(([,t])=>!!t),(0,map_1.map)(([t,e])=>[t,"string"==typeof e?{[exports.DEFAULT_DOMAIN_KEY]:e}:e])))})}function mergeExtraData(t,e,a){const r=Object.entries(e);for(const[e,i]of r)if(i)if(e in t){const r=a(e,t[e],i);null===r?delete t[e]:r&&(t[e]=r)}else t[e]=i;else null===i&&delete t[e];return t}exports.ExtraDataHelper=ExtraDataHelper,_ExtraDataHelper_extraData=new WeakMap,exports.parseExtraDataItem=parseExtraDataItem,exports.asDomainsMetadata=asDomainsMetadata,exports.mergeExtraData=mergeExtraData;