@sankhyalabs/sankhyablocks 8.8.0 → 8.8.2
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/cjs/{PreloadManager-e26d237f.js → PreloadManager-84466da6.js} +2 -2
- package/dist/cjs/{SnkMultiSelectionListDataSource-d74d2336.js → SnkMultiSelectionListDataSource-ba5838c2.js} +1 -1
- package/dist/cjs/{dataunit-fetcher-66c0b7af.js → dataunit-fetcher-af1c655d.js} +48 -14
- package/dist/cjs/snk-actions-button.cjs.entry.js +2 -2
- package/dist/cjs/snk-application.cjs.entry.js +2 -2
- package/dist/cjs/snk-attach.cjs.entry.js +2 -2
- package/dist/cjs/snk-crud.cjs.entry.js +2 -2
- package/dist/cjs/snk-data-exporter.cjs.entry.js +1 -1
- package/dist/cjs/{snk-data-unit-3e4d0c09.js → snk-data-unit-3e5301b1.js} +13 -0
- package/dist/cjs/snk-data-unit.cjs.entry.js +1 -1
- package/dist/cjs/snk-detail-view.cjs.entry.js +3 -3
- package/dist/cjs/snk-grid.cjs.entry.js +2 -2
- package/dist/cjs/{snk-guides-viewer-b173ce35.js → snk-guides-viewer-df1cc4d6.js} +2 -2
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +3 -3
- package/dist/cjs/snk-simple-crud.cjs.entry.js +3 -3
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +14 -1
- package/dist/collection/lib/dataUnit/InMemoryLoader.js +49 -14
- package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +2 -2
- package/dist/components/dataunit-fetcher.js +49 -16
- package/dist/components/snk-data-unit2.js +14 -1
- package/dist/esm/{PreloadManager-8826b96a.js → PreloadManager-c1c2f2b4.js} +2 -2
- package/dist/esm/{SnkMultiSelectionListDataSource-27572f47.js → SnkMultiSelectionListDataSource-44494b0e.js} +1 -1
- package/dist/esm/{dataunit-fetcher-831feb12.js → dataunit-fetcher-d5e6cc8c.js} +49 -15
- package/dist/esm/snk-actions-button.entry.js +2 -2
- package/dist/esm/snk-application.entry.js +2 -2
- package/dist/esm/snk-attach.entry.js +2 -2
- package/dist/esm/snk-crud.entry.js +2 -2
- package/dist/esm/snk-data-exporter.entry.js +1 -1
- package/dist/esm/{snk-data-unit-5eb68408.js → snk-data-unit-f2a15a58.js} +14 -1
- package/dist/esm/snk-data-unit.entry.js +1 -1
- package/dist/esm/snk-detail-view.entry.js +3 -3
- package/dist/esm/snk-grid.entry.js +2 -2
- package/dist/esm/{snk-guides-viewer-e62e0edc.js → snk-guides-viewer-d2ebe7c0.js} +2 -2
- package/dist/esm/snk-guides-viewer.entry.js +3 -3
- package/dist/esm/snk-simple-crud.entry.js +3 -3
- package/dist/sankhyablocks/{p-a1cce4f5.entry.js → p-056cb6c4.entry.js} +1 -1
- package/dist/sankhyablocks/{p-3ccb321d.entry.js → p-05f6c9dc.entry.js} +1 -1
- package/dist/sankhyablocks/{p-3c4f0354.js → p-094c30cb.js} +1 -1
- package/dist/sankhyablocks/{p-747043a5.entry.js → p-3a2308a1.entry.js} +1 -1
- package/dist/sankhyablocks/p-3eb28447.entry.js +1 -0
- package/dist/sankhyablocks/{p-d32fe25e.js → p-5bb4c940.js} +1 -1
- package/dist/sankhyablocks/{p-f1743d68.entry.js → p-653dc767.entry.js} +1 -1
- package/dist/sankhyablocks/{p-95b05e58.entry.js → p-79a2bcfa.entry.js} +1 -1
- package/dist/sankhyablocks/{p-f2e798f1.entry.js → p-7a85dcd3.entry.js} +1 -1
- package/dist/sankhyablocks/p-7f4435e2.js +60 -0
- package/dist/sankhyablocks/{p-eb1561bf.entry.js → p-8fcc3171.entry.js} +1 -1
- package/dist/sankhyablocks/p-c22c1d8e.js +1 -0
- package/dist/sankhyablocks/{p-862e5bf6.entry.js → p-da655ca9.entry.js} +1 -1
- package/dist/sankhyablocks/{p-72b32e25.entry.js → p-f661e804.entry.js} +1 -1
- package/dist/sankhyablocks/p-fdbe389e.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +1 -0
- package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +3 -0
- package/package.json +1 -1
- package/dist/sankhyablocks/p-0123f169.js +0 -1
- package/dist/sankhyablocks/p-5f6113c8.js +0 -60
- package/dist/sankhyablocks/p-77756526.js +0 -1
- package/dist/sankhyablocks/p-9af040ba.entry.js +0 -1
@@ -1,60 +0,0 @@
|
|
1
|
-
import{DataUnit as e,defaultDataLoader as t,DataType as r,DateUtils as a,StringUtils as n,ChangeOperation as s,UserInterface as i,DataUnitStorage as o}from"@sankhyalabs/core";import{D as l,d as c}from"./p-c9399ce6.js";import{DISTINCT_FILTER_NAME_PREFIX as d}from"@sankhyalabs/ezui/dist/collection/utils/constants";import{DataUnitTransient as u}from"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import{P as h}from"./p-77756526.js";import{R as m}from"./p-688dcb4c.js";class f{constructor(r,a){this.metadata=r,this.records=a,this._dataUnit=new e(f.IN_MEMORY_DATA_UNIT_NAME),this._dataUnit.metadataLoader=()=>this.metadaLoader(),this._dataUnit.dataLoader=(e,r)=>t(e,r,this.getRecordsToLoad()),this._dataUnit.saveLoader=(e,t)=>this.saveLoader(e,t),this._dataUnit.removeLoader=(e,t)=>this.removeLoader(e,t),this.dataUnit.loadMetadata().then((()=>this.dataUnit.loadData()))}getRecordsToLoad(){if(this._initialRecords)try{return this._initialRecords}finally{this._initialRecords=void 0}return this.dataUnit.records}get dataUnit(){return this._dataUnit}get records(){return this.dataUnit.records}static getConvertedValue(e,t){return e.dataType===r.BOOLEAN?"S"===t:e.dataType===r.NUMBER?Number(t):e.dataType===r.DATE?a.strToDate(t,!0):t}set records(e){const t=this._metadata?new Map(this._metadata.fields.map((e=>[e.name,e]))):void 0,r=null==e?void 0:e.map((e=>{if(e.__record__id__||(e.__record__id__=this.generateUniqueId()),null!=t)for(const r in e){const a=e[r];"string"==typeof a&&t.has(r)&&(e[r]=f.getConvertedValue(t.get(r),a))}return e}));this._dataUnit?this._dataUnit.records=r:this._initialRecords=r}get metadata(){return this._metadata}set metadata(e){this._metadata=e,this._dataUnit&&(this._dataUnit.metadata=this._metadata)}generateUniqueId(){return n.generateUUID()}metadaLoader(){return Promise.resolve(this._metadata)}saveLoader(e,t){return new Promise((e=>{let r=[];t.forEach((e=>{let{record:t,updatingFields:a,operation:n}=e;const i=Object.assign(Object.assign({},t),a);if(n===s.INSERT||n===s.COPY)i.__old__id__=t.__record__id__,i.__record__id__=this.generateUniqueId(),this.records.push(i);else{const e=this.records.findIndex((e=>e.__record__id__==i.__record__id__));this.records[e]=i}r.push(i)})),e(r)}))}removeLoader(e,t){return new Promise((e=>{e(t)}))}}f.IN_MEMORY_DATA_UNIT_NAME="InMemoryDataUnit";class _{canSlice(){return!1}async load(e,t,r){if(null==e.metadata)return Promise.resolve({records:[],loadingInfo:r});try{const a=[],n=[];if(null!=t.sort)for(const r of t.sort){const t=e.getField(r.field);null!=t&&null!=t.properties&&"true"===t.properties.calculated?a.push(r):n.push(r)}const s=this.getFieldsList(e),i="DatasetSP.loadRecords",o=this.buildRequestBody(i,s,e,t,r,n),c=r.quiet?{urlParams:{quietMode:"true"}}:void 0,{result:d,pagerID:u}=await l.get().callServiceBroker(i,o,c),h=this.processRecords(e,s,d),m=null!=u,f=r.count+h.length,_=!m&&a.length>0;return Promise.resolve({records:h,loadingInfo:Object.assign(Object.assign({},r),{pagerId:u,loadingInProgress:m,total:m?void 0:f,count:f,needReload:_})})}catch(e){return console.error(e),Promise.reject(e)}}getFieldsList(e){let t=["__record__id__","__record__label__"];return e.metadata.fields.forEach((e=>{e.standAlone||(t=t.concat(this.getFieldNames(e)))})),t}getFieldNames(e){const t=this.getSearchDescriptionField(e);return null==t?e.name:[e.name,t]}buildRequestBody(e,t,r,a,n,s){const i=r.name,o={serviceName:e,requestBody:{dataSetID:r.dataUnitId,fields:t,entityName:b.parseDataUnitName(i).entityName,pageNumber:n.pageNumber,totalRecordsCount:n.count,pagerID:n.pagerId,standAlone:!1,standAloneFieldsMD:{__record__id__:{fieldType:"S",userType:"P"},__record__label__:{fieldType:"S",userType:"P"}},tryJoinedFields:!0,parallelLoader:!0,crudListener:"br.com.sankhya.modelcore.dataset.DataUnitDatasetAdapter",txProperties:this.getTxProperties(i,a,s),useDefaultRowsLimit:!1}};return JSON.stringify(o)}getTxProperties(e,t,r){const a={"__DATA_UNIT_ADAPTER__[dataUnitName]":e},n=t.filters.filter((e=>!e.name.startsWith("FILTRO_COLUNA_")));return 0!==n.length&&(a["__DATA_UNIT_ADAPTER__[criteria]"]=JSON.stringify(n)),null!=r&&0!==r.length&&(a["__DATA_UNIT_ADAPTER__[sorting]"]=JSON.stringify(r)),a}processRecords(e,t,r){return r.map((r=>{const a={__record__id__:r[0],__record__label__:r[1]};return e.metadata.fields.forEach((e=>{a[e.name]=this.buildFieldValue(e,t,r)})),a}))}buildFieldValue(e,t,r){const a=t.indexOf(e.name);if(a<0)return null;const s=r[a];if(n.isEmpty(s))return null;const o=this.getSearchDescriptionField(e);if(null!=o){const e=t.indexOf(o);if(e>=0)return{value:s,label:r[e]}}return e.userInterface===i.SEARCH?isNaN(Number(s))?s:Number(s):f.getConvertedValue(e,s)}getSearchDescriptionField(e){if(e.userInterface===i.SEARCH){const{ENTITYNAME:t,mergedFrom:r,DESCRIPTIONFIELD:a}=e.properties;if(!n.isEmpty(a))return null!=r?`${r}.${t}.${a}`:`${t}.${a}`}}}class p{static async debounce(e,t){const r=e.name;p._debouncingTimeouts[r]&&(clearTimeout(p._debouncingTimeouts[r]),delete p._debouncingTimeouts[r]),p._debouncingTimeouts[r]=setTimeout((()=>{delete p._debouncingTimeouts[r],t()}),100)}static async loadData(e,t){return new Promise(((r,a)=>{p.debounce(e,(()=>{h.loadData(e,t,this.loadFromServer).then((e=>r(e))).catch((e=>a(e)))}))}))}static async loadFromServer(e,t,r){try{r=p.registryLoading(e,r);const a=await p.callLoader(e,t,r);if(null==a)return;const n=a.records,s=p.buildPaginationInfo(n.length,t,a.loadingInfo),i=null==s?n:n.slice(0,s.lastRecord);return Promise.resolve({records:i,paginationInfo:s})}catch(e){return console.error(e),Promise.reject(e)}}static async callLoader(e,t,r,a){null==a&&(a=new _);const n=await a.load(e,t,r),{records:s,loadingInfo:i}=n;if(p.isOldRequest(e,i))return Promise.resolve(void 0);const o=!a.canSlice()||0===i.count;if(h.cacheRecords(e,s,o,i.loadingInProgress),h.isCacheEnabled(e)&&i.loadingInProgress){const r=Object.assign(Object.assign({},t),{offset:i.count}),n=Object.assign(Object.assign({},i),{pageNumber:(i.pageNumber||0)+1,quiet:!0});this.callLoader(e,r,n,a).then((t=>p.afterLoadingPage(e,t.loadingInfo))).catch((e=>console.error(e)))}return Promise.resolve(n)}static afterLoadingPage(e,t){h.setLoadingStatus(e,t.loadingInProgress);const r=e.getPaginationInfo();if(null==r)return;const a=t.count;t.loadingInProgress?e.updatePagination(Object.assign(Object.assign({},r),{count:a})):t.needReload?e.gotoPage(0):e.updatePagination(Object.assign(Object.assign({},r),{total:a,count:a}))}static registryLoading(e,t){return null==t&&(t={requestTime:(new Date).getTime(),count:0}),p._requestTimeByDataUnit.set(e.name,t.requestTime),t}static isOldRequest(e,t){return p._requestTimeByDataUnit.get(e.name)>t.requestTime}static buildPaginationInfo(e,t,r){let{limit:a,offset:n}=t;if(!a)return;1===r.pageNumber&&(n=0);const{total:s,count:i,loadingInProgress:o}=r,l=0===i||0===e?0:n+1,c=n+Math.min(e,a);return{total:s,count:i,lastRecord:c,firstRecord:l,currentPage:n/a,hasMore:c<i||o}}}p._requestTimeByDataUnit=new Map,p._debouncingTimeouts={};const g=/dd:\/\/([^/]+)\/([^/?]+)/;class b{constructor(){this.templateByQuery=new Map,this.buldTemplates()}buldTemplates(){this.templateByQuery.set("fetchDataUnit",c.gql`query($name: String!) {
|
2
|
-
$queryAlias$: fetchDataUnit(name: $name){
|
3
|
-
name
|
4
|
-
fields{
|
5
|
-
name
|
6
|
-
defaultValue
|
7
|
-
label
|
8
|
-
visible
|
9
|
-
standAlone
|
10
|
-
readOnly
|
11
|
-
required
|
12
|
-
dataType
|
13
|
-
userInterface
|
14
|
-
calculated
|
15
|
-
group
|
16
|
-
order
|
17
|
-
properties{
|
18
|
-
name
|
19
|
-
value
|
20
|
-
}
|
21
|
-
dependencies{
|
22
|
-
masterFields
|
23
|
-
type
|
24
|
-
expression
|
25
|
-
}
|
26
|
-
}
|
27
|
-
children{
|
28
|
-
name
|
29
|
-
label
|
30
|
-
links{
|
31
|
-
source
|
32
|
-
target
|
33
|
-
}
|
34
|
-
}
|
35
|
-
}
|
36
|
-
}`),this.templateByQuery.set("saveData",c.gql`mutation($changes: [InputBatchChange!]!) {
|
37
|
-
$queryAlias$: batchOperationDataUnit(changes: $changes){
|
38
|
-
oldId
|
39
|
-
id
|
40
|
-
label
|
41
|
-
ownerDataUnitName
|
42
|
-
fields {
|
43
|
-
name
|
44
|
-
value
|
45
|
-
}
|
46
|
-
}
|
47
|
-
}`),this.templateByQuery.set("fetchDataRecord",c.gql`query($dataunit: String! $recordID: [String!]) {
|
48
|
-
$queryAlias$: fetchDataUnit(name: $dataunit){
|
49
|
-
record(id: $recordID){
|
50
|
-
id
|
51
|
-
label
|
52
|
-
fields {
|
53
|
-
name
|
54
|
-
value
|
55
|
-
}
|
56
|
-
}
|
57
|
-
}
|
58
|
-
}`),this.templateByQuery.set("fetchDistinctColumn",c.gql`query($dataUnit: String!, $fieldName: String!, $argument: String, $filters: [InputFilter], $parentRecordId: String) {
|
59
|
-
$queryAlias$: selectDistinct(dataUnit: $dataUnit, fieldName: $fieldName, argument: $argument, filters: $filters, parentRecordId: $parentRecordId)
|
60
|
-
}`)}static parseDataUnitName(e){if(null==e)return;const t=g.exec(e);return t?{entityName:t[1],resourceID:t[2]}:void 0}getDataUnit(t,r,a,n){null==h.applicationResourceID&&m.getResourceID().then((e=>h.applicationResourceID=e));const s=`dd://${t}/${r}${n?"/"+n:""}`,i=null!=a?a.getChildDataunit(s):new e(s);return i.metadataLoader=e=>this.loadMetadata(e),i.dataLoader=(e,t)=>p.loadData(e,t),i.saveLoader=(e,t)=>this.saveData(i,t),i.removeLoader=(e,t)=>this.removeRecords(e,t),i.recordLoader=(e,t)=>this.loadRecord(e,t),i}loadMetadata(e){return new Promise(((t,r)=>{l.get().callGraphQL({values:{name:e.name},query:this.templateByQuery.get("fetchDataUnit")}).then((e=>{var r;const a={name:e.name,label:e.name,children:[...e.children],fields:[]};null===(r=e.fields)||void 0===r||r.forEach((e=>{let t;Array.isArray(e.properties)&&(t={},e.calculated&&(t.gridHeaderTooltip="Campos calculados não podem ser ordenados"),e.properties.forEach((e=>t[e.name]=e.value))),a.fields.push(Object.assign(Object.assign({},e),{properties:t}))})),a.fields.sort(((e,t)=>e.order-t.order)),t(a)})).catch((e=>{r(e)}))}))}loadSelectDistinct(e,t,r){const{parentRecordId:a,filters:n}=e.getLastLoadRequest()||{},s=n.filter((e=>e.name!==`${d}${t}`)),i={dataUnit:e.name,argument:r,fieldName:t,parentRecordId:a,filters:s};return new Promise(((e,t)=>{l.get().callGraphQL({values:i,query:this.templateByQuery.get("fetchDistinctColumn")}).then((t=>{e(t)})).catch((e=>{t(e)}))}))}saveData(e,t){const a=[],n=[],i=t.map((t=>{const{dataUnit:i,record:l,updatingFields:c,operation:d}=t,u=o.get(i);let h;c&&(h=Object.entries(c).map((([e,t])=>{const a=u.getField(e);return{fieldName:e,dataType:a?a.dataType:r.TEXT,value:u.valueToString(e,t)}}))),i===e.name&&(d===s.INSERT||d===s.COPY?n.push(l.__record__id__):a.push(l.__record__id__));const m={dataUnit:i,fields:h,operation:d,recordId:l.__record__id__};return t.sourceId&&(m.sourceId=t.sourceId),l.__parent__record__id__&&(m.parentRecordId=l.__parent__record__id__),m}));return new Promise(((t,r)=>{const s=i.map((e=>function(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(a=Object.getOwnPropertySymbols(e);n<a.length;n++)t.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(r[a[n]]=e[a[n]])}return r}(e,[])));l.get().callGraphQL({values:{changes:s},query:this.templateByQuery.get("saveData")}).then((r=>{const s=[];null==r||r.forEach((t=>{const r={__record__id__:t.id,__record__label__:t.label,__owner__dataunit__name__:t.ownerDataUnitName},a=o.get(r.__owner__dataunit__name__)||e;t.oldId&&(r.__old__id__=t.oldId),t.fields.forEach((({name:e,value:t})=>{var n;r[e]=(null===(n=null==a?void 0:a.valueFromString)||void 0===n?void 0:n.call(a,e,t))||t})),s.push(r)})),this.updateCache(e,s,a,n),t(s)})).catch((e=>{r(e)}))}))}updateCache(e,t,r,a){const n=new Map(t.map((e=>[e.__old__id__||e.__record__id__,e]))),s=a.map((e=>{const t=Object.assign({},n.get(e));return delete t.__old__id__,t}));s.length>0&&h.insertRecords(e,e.records[0],s);const i=r.map((e=>Object.assign({},n.get(e))));h.updateRecords(e,i)}getTransientInfo(e,t){const{records:a}=e.getSelectionInfo();return Object.entries(a.filter((e=>e.__record__id__==t))[0]).filter((([e])=>e.startsWith(u.DATA_UNIT_TRANSIENT_PREFIX_NAME))).map((([e,t])=>({fieldName:e,value:t,dataType:r.TEXT})))}removeRecords(e,t){const r=t.map((t=>({dataUnit:e.name,operation:s.DELETE,recordId:t,fields:this.getTransientInfo(e,t)})));return new Promise(((a,n)=>{l.get().callGraphQL({values:{changes:r},query:this.templateByQuery.get("saveData")}).then((()=>{h.removeRecords(e,e.records.filter((e=>t.includes(e.__record__id__)))),a(t)})).catch((e=>{n(e)}))}))}loadRecord(e,t){return new Promise(((r,a)=>{l.get().callGraphQL({values:{recordID:t,dataunit:e.name},query:this.templateByQuery.get("fetchDataRecord")}).then((t=>{const a=[];t.record.forEach((t=>{const r={__record__id__:t.id,__record__label__:t.label};t.fields.forEach((({name:t,value:a})=>{r[t]=e.valueFromString(t,a)})),a.push(r)})),r(a)})).catch((e=>{a(e)}))}))}}export{b as D,f as I}
|
@@ -1 +0,0 @@
|
|
1
|
-
import{FieldComparator as t,SortMode as s,DataUnit as n}from"@sankhyalabs/core";import{ColumnFilterManager as r}from"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils";class e{constructor(t){this._list=[],this._equalsFunction=t}async load(t,s,n,r){let e=[].concat(this._list);null!=t&&(e=this._list.filter((s=>t(s)))),null!=s&&(e=e.sort(s));const i=e.length;if(null!=r){const t=n||0;e=e.slice(t,r?t+r:e.length)}return Promise.resolve({result:e,count:i})}async distict(t){const s=[];let n=!1;for(const r of this._list){const e=t(r);null!=e&&(null!=e.value?s.push(e):n=!0)}return n&&s.push({key:"",value:null}),Promise.resolve(new Map(s.map((t=>[t.key,t.value]))))}async push(t){this._list.push(...t)}async clear(){this._list=[]}async delete(t){this._list=this._list.filter((s=>{for(const n of t)if(this._equalsFunction(s,n))return!1;return!0}))}async update(t){this._list=this._list.map((s=>{const n=t.find((t=>this._equalsFunction(s,t)));return null==n?s:n}))}async insert(t,s){const n=this._list.indexOf(t);-1!=n?this._list=this._list.slice(0,n).concat(s).concat(this._list.slice(n)):this._list.push(...s)}isOperating(){return!0}async isEmpty(){return Promise.resolve(0===this._list.length)}async count(){return Promise.resolve(this._list.length)}}class i{static setLoadingStatus(t,s){this._loadingStatus.set(t.name,s)}static isCacheEnabled(t){return!0}static cacheRecords(t,s,n,r){i.setLoadingStatus(t,r),i.isCacheEnabled(t)?this.getRepository(t).push(s):n&&this._repositories.delete(t.name)}static getSortingFunction(n,r){if(null!=r&&0!=r.length)return(e,i)=>{for(const c of r){const r=t.compare(n.getField(c.field),e,i,c.mode===s.ASC);if(0!=r)return r}}}static async getDistinct(t,s){if(!i.isCacheEnabled(t))return Promise.resolve(r.compileDistinct(s,t));let n;const e=t.getLastLoadRequest();if(null!=e){const s=r.getColumnFilters(e.filters);n=r.getFilterFunction(t,Array.from(s.values()))}return new Promise(((r,e)=>{i.getRepository(t).distict((r=>{if(null!=n&&!n(r))return;const e=r[s];if(null==e)return{key:null,value:null};const i=null!=e.value?e.value:e;return{key:t.getFormattedValue(s,e),value:i}})).then((t=>{r(null!=t?Array.from(t.entries()).map((([t,s])=>({label:t,value:s,check:!0}))):void 0)})).catch((t=>e(t)))}))}static async loadData(t,s,r){try{if(i.isCacheEnabled(t)){if(("EZ_GRID_LOADING_SOURCE"===s.source||s.source===n.CHANGING_PAGE_LOADING_SOURCE)&&!await i.getRepository(t).isEmpty())return i.loadFromCache(t,s);i.getRepository(t).clear().catch((()=>{}))}return r(t,s)}catch(t){return console.error(t),Promise.reject(t)}}static insertRecords(t,s,n){i.isCacheEnabled(t)&&i.getRepository(t).insert(s,n)}static updateRecords(t,s){i.isCacheEnabled(t)&&i.getRepository(t).update(s)}static removeRecords(t,s){i.isCacheEnabled(t)&&i.getRepository(t).delete(s)}static async countRecords(t){return i.isCacheEnabled(t)?i.getRepository(t).count():Promise.resolve(0)}static getRepository(t){const s=t.name;return i._repositories.has(s)||i._repositories.set(s,new e(((t,s)=>t.__record__id__===s.__record__id__))),i._repositories.get(s)}static async loadFromCache(t,s){return new Promise(((n,e)=>{const c=r.getColumnFilters(s.filters),{limit:o,offset:a,sort:l}=s;i.getRepository(t).load(r.getFilterFunction(t,Array.from(c.values())),i.getSortingFunction(t,l),a,o).then((s=>{const r=i._loadingStatus.get(t.name),{count:e,result:c}=s,l=0==e?0:a+1,u=a+Math.min(c.length,o);n({records:c,paginationInfo:{count:e,currentPage:a/o,firstRecord:l,lastRecord:u,hasMore:r||u<e,total:r?void 0:e}})})).catch((t=>e(t)))}))}}i._repositories=new Map,i._loadingStatus=new Map;export{i as P}
|
@@ -1 +0,0 @@
|
|
1
|
-
export{S as snk_data_unit}from"./p-0123f169.js";import"./p-d2d301a6.js";import"@sankhyalabs/core";import"@sankhyalabs/ezui/dist/collection/utils";import"./p-f1f7b545.js";
|