woodsportal-client-sdk 1.1.4-dev.16 → 1.1.4-dev.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/adapters/react/index.d.ts +8 -0
- package/dist/adapters/react/index.js +92 -0
- package/dist/adapters/react/index.js.map +1 -0
- package/dist/index.js +131 -1
- package/dist/index.js.map +1 -1
- package/package.json +15 -8
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { useSyncExternalStore } from 'react';
|
|
2
|
+
|
|
3
|
+
// src/adapters/react/useStore.ts
|
|
4
|
+
|
|
5
|
+
// src/store2/store.ts
|
|
6
|
+
function createStore(initialState) {
|
|
7
|
+
let state = initialState;
|
|
8
|
+
const listeners = /* @__PURE__ */ new Set();
|
|
9
|
+
return {
|
|
10
|
+
getState() {
|
|
11
|
+
return state;
|
|
12
|
+
},
|
|
13
|
+
setState(partial) {
|
|
14
|
+
state = {
|
|
15
|
+
...state,
|
|
16
|
+
...partial
|
|
17
|
+
};
|
|
18
|
+
listeners.forEach(
|
|
19
|
+
(listener) => listener(state)
|
|
20
|
+
);
|
|
21
|
+
},
|
|
22
|
+
subscribe(listener) {
|
|
23
|
+
listeners.add(listener);
|
|
24
|
+
return () => listeners.delete(listener);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// src/store2/use-table.ts
|
|
30
|
+
var tableStore = createStore({
|
|
31
|
+
tableData: [],
|
|
32
|
+
tablePrependData: []
|
|
33
|
+
});
|
|
34
|
+
var actions = {
|
|
35
|
+
setTableData(response) {
|
|
36
|
+
tableStore.setState({
|
|
37
|
+
tableData: response
|
|
38
|
+
});
|
|
39
|
+
},
|
|
40
|
+
async setTablePrependData(response) {
|
|
41
|
+
const state = tableStore.getState();
|
|
42
|
+
let rows = [];
|
|
43
|
+
if (response === "loading") {
|
|
44
|
+
const row = await state.tableData?.data?.results?.columns.reduce((acc, item) => {
|
|
45
|
+
if (!item.hidden) {
|
|
46
|
+
acc[item.key] = "loading";
|
|
47
|
+
}
|
|
48
|
+
return acc;
|
|
49
|
+
}, {});
|
|
50
|
+
rows = [row, ...state.tablePrependData];
|
|
51
|
+
} else {
|
|
52
|
+
const data = response?.data;
|
|
53
|
+
if (!data) {
|
|
54
|
+
tableStore.setState({
|
|
55
|
+
tablePrependData: []
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
const row = await Object.fromEntries(
|
|
59
|
+
Object.entries(data).map(([key, value]) => [
|
|
60
|
+
key,
|
|
61
|
+
value?.value ?? value
|
|
62
|
+
])
|
|
63
|
+
);
|
|
64
|
+
rows = [...state.tablePrependData];
|
|
65
|
+
if (rows.length > 0) {
|
|
66
|
+
rows[0] = row;
|
|
67
|
+
} else {
|
|
68
|
+
rows.push(row);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
tableStore.setState({
|
|
72
|
+
tablePrependData: rows
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
// src/adapters/react/useStore.ts
|
|
78
|
+
function useTable() {
|
|
79
|
+
const state = useSyncExternalStore(
|
|
80
|
+
tableStore.subscribe,
|
|
81
|
+
tableStore.getState,
|
|
82
|
+
tableStore.getState
|
|
83
|
+
);
|
|
84
|
+
return {
|
|
85
|
+
...state,
|
|
86
|
+
...actions
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
export { useTable };
|
|
91
|
+
//# sourceMappingURL=index.js.map
|
|
92
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/store2/store.ts","../../../src/store2/use-table.ts","../../../src/adapters/react/useStore.ts"],"names":[],"mappings":";;;;;AAEO,SAAS,YAAe,YAAA,EAAiB;AAC5C,EAAA,IAAI,KAAA,GAAQ,YAAA;AAEZ,EAAA,MAAM,SAAA,uBAAgB,GAAA,EAAiB;AAEvC,EAAA,OAAO;AAAA,IACH,QAAA,GAAW;AACP,MAAA,OAAO,KAAA;AAAA,IACX,CAAA;AAAA,IAEA,SAAS,OAAA,EAAqB;AAC1B,MAAA,KAAA,GAAQ;AAAA,QACJ,GAAG,KAAA;AAAA,QACH,GAAG;AAAA,OACP;AAEA,MAAA,SAAA,CAAU,OAAA;AAAA,QAAQ,CAAC,QAAA,KACf,QAAA,CAAS,KAAK;AAAA,OAClB;AAAA,IACJ,CAAA;AAAA,IAEA,UAAU,QAAA,EAAuB;AAC7B,MAAA,SAAA,CAAU,IAAI,QAAQ,CAAA;AAEtB,MAAA,OAAO,MAAM,SAAA,CAAU,MAAA,CAAO,QAAQ,CAAA;AAAA,IAC1C;AAAA,GACJ;AACJ;;;ACtBO,IAAM,aAAa,WAAA,CAAwB;AAAA,EAC9C,WAAW,EAAC;AAAA,EACZ,kBAAkB;AACtB,CAAC,CAAA;AAEM,IAAM,OAAA,GAAU;AAAA,EAEnB,aACI,QAAA,EACF;AACE,IAAA,UAAA,CAAW,QAAA,CAAS;AAAA,MAChB,SAAA,EAAW;AAAA,KACd,CAAA;AAAA,EACL,CAAA;AAAA,EAEA,MAAM,oBACF,QAAA,EACF;AACE,IAAA,MAAM,KAAA,GAAa,WAAW,QAAA,EAAS;AACvC,IAAA,IAAI,OAAO,EAAC;AAEZ,IAAA,IAAI,aAAa,SAAA,EAAW;AACxB,MAAA,MAAM,GAAA,GAAM,MAAM,KAAA,CAAM,SAAA,EAAW,IAAA,EAAM,SAAS,OAAA,CAAQ,MAAA,CAAO,CAAC,GAAA,EAAU,IAAA,KAAc;AACtF,QAAA,IAAI,CAAC,KAAK,MAAA,EAAQ;AACd,UAAA,GAAA,CAAI,IAAA,CAAK,GAAG,CAAA,GAAI,SAAA;AAAA,QACpB;AACA,QAAA,OAAO,GAAA;AAAA,MACX,CAAA,EAAG,EAAE,CAAA;AACL,MAAA,IAAA,GAAO,CAAC,GAAA,EAAK,GAAG,KAAA,CAAM,gBAAgB,CAAA;AAAA,IAC1C,CAAA,MAAO;AAEH,MAAA,MAAM,OAAO,QAAA,EAAU,IAAA;AACvB,MAAA,IAAI,CAAC,IAAA,EAAM;AACP,QAAA,UAAA,CAAW,QAAA,CAAS;AAAA,UAChB,kBAAkB;AAAC,SACtB,CAAA;AAAA,MACL;AAEA,MAAA,MAAM,GAAA,GAAM,MAAM,MAAA,CAAO,WAAA;AAAA,QACrB,MAAA,CAAO,QAAQ,IAAI,CAAA,CAAE,IAAI,CAAC,CAAC,GAAA,EAAK,KAAK,CAAA,KAAW;AAAA,UAC5C,GAAA;AAAA,UACA,OAAO,KAAA,IAAS;AAAA,SACnB;AAAA,OACL;AAEA,MAAA,IAAA,GAAO,CAAC,GAAG,KAAA,CAAM,gBAAgB,CAAA;AAEjC,MAAA,IAAI,IAAA,CAAK,SAAS,CAAA,EAAG;AACjB,QAAA,IAAA,CAAK,CAAC,CAAA,GAAI,GAAA;AAAA,MACd,CAAA,MAAO;AACH,QAAA,IAAA,CAAK,KAAK,GAAG,CAAA;AAAA,MACjB;AAAA,IACJ;AAEA,IAAA,UAAA,CAAW,QAAA,CAAS;AAAA,MAChB,gBAAA,EAAkB;AAAA,KACrB,CAAA;AAAA,EACL;AACJ,CAAA;;;AC9DO,SAAS,QAAA,GAAW;AACvB,EAAA,MAAM,KAAA,GAAQ,oBAAA;AAAA,IACV,UAAA,CAAW,SAAA;AAAA,IACX,UAAA,CAAW,QAAA;AAAA,IACX,UAAA,CAAW;AAAA,GACf;AAEA,EAAA,OAAO;AAAA,IACH,GAAG,KAAA;AAAA,IACH,GAAG;AAAA,GACP;AACJ","file":"index.js","sourcesContent":["type Listener<T> = (state: T) => void;\n\nexport function createStore<T>(initialState: T) {\n let state = initialState;\n\n const listeners = new Set<Listener<T>>();\n\n return {\n getState() {\n return state;\n },\n\n setState(partial: Partial<T>) {\n state = {\n ...state,\n ...partial,\n };\n\n listeners.forEach((listener) =>\n listener(state)\n );\n },\n\n subscribe(listener: Listener<T>) {\n listeners.add(listener);\n\n return () => listeners.delete(listener);\n },\n };\n}","import { createStore } from \"./store\";\n\ninterface TableState {\n tableData: any;\n tablePrependData: any[];\n}\n\nexport const tableStore = createStore<TableState>({\n tableData: [],\n tablePrependData: [],\n});\n\nexport const actions = {\n\n setTableData(\n response: any\n ) {\n tableStore.setState({\n tableData: response,\n });\n },\n\n async setTablePrependData(\n response: any\n ) {\n const state: any = tableStore.getState();\n let rows = [];\n\n if (response === 'loading') { // set empty loading columns\n const row = await state.tableData?.data?.results?.columns.reduce((acc: any, item: any) => {\n if (!item.hidden) {\n acc[item.key] = \"loading\";\n }\n return acc;\n }, {});\n rows = [row, ...state.tablePrependData];\n } else { // set real columns data\n\n const data = response?.data\n if (!data) {\n tableStore.setState({\n tablePrependData: []\n });\n }\n\n const row = await Object.fromEntries(\n Object.entries(data).map(([key, value]: any) => [\n key,\n value?.value ?? value,\n ])\n );\n\n rows = [...state.tablePrependData];\n // replace empty loading columns with real data\n if (rows.length > 0) {\n rows[0] = row;\n } else {\n rows.push(row);\n }\n }\n\n tableStore.setState({\n tablePrependData: rows\n });\n }\n}\n\nexport function useTable() {\n const tableState: any = tableStore.getState()\n return {\n ...tableState, ...actions\n }\n}","import { useSyncExternalStore } from \"react\";\nimport { tableStore, actions } from \"../../store2/use-table\";\n\nexport function useTable() {\n const state = useSyncExternalStore(\n tableStore.subscribe,\n tableStore.getState,\n tableStore.getState\n );\n\n return {\n ...state,\n ...actions,\n };\n}"]}
|
package/dist/index.js
CHANGED
|
@@ -933,7 +933,6 @@ var Client = {
|
|
|
933
933
|
}
|
|
934
934
|
apiParams.isPrimaryCompany = param?.isPrimaryCompany;
|
|
935
935
|
apiParams.cache = payload?.cache;
|
|
936
|
-
console.log("payload", payload);
|
|
937
936
|
const apiUrl = generateApiUrl({ route: API_ENDPOINTS.PIPELINES, params, queryParams: apiParams });
|
|
938
937
|
return HttpClient.get(apiUrl);
|
|
939
938
|
}
|
|
@@ -1622,6 +1621,8 @@ var tableStore = createStore((set, get) => ({
|
|
|
1622
1621
|
selectedPipeline: "",
|
|
1623
1622
|
tableParam: {},
|
|
1624
1623
|
tableDefPermissions: {},
|
|
1624
|
+
tableData: [],
|
|
1625
|
+
tablePrependData: [],
|
|
1625
1626
|
// ==============================
|
|
1626
1627
|
// BASIC SETTERS
|
|
1627
1628
|
// ==============================
|
|
@@ -1790,6 +1791,47 @@ var tableStore = createStore((set, get) => ({
|
|
|
1790
1791
|
}
|
|
1791
1792
|
set({ selectedPipeline: mFilterValue });
|
|
1792
1793
|
return mFilterValue;
|
|
1794
|
+
},
|
|
1795
|
+
setTableData: (response) => {
|
|
1796
|
+
set({
|
|
1797
|
+
tableData: response
|
|
1798
|
+
});
|
|
1799
|
+
},
|
|
1800
|
+
setTablePrependData: async (response) => {
|
|
1801
|
+
const state = get();
|
|
1802
|
+
let rows = [];
|
|
1803
|
+
if (response === "loading") {
|
|
1804
|
+
const row = await state.tableData?.data?.results?.columns.reduce((acc, item) => {
|
|
1805
|
+
if (!item.hidden) {
|
|
1806
|
+
acc[item.key] = "loading";
|
|
1807
|
+
}
|
|
1808
|
+
return acc;
|
|
1809
|
+
}, {});
|
|
1810
|
+
rows = [row, ...state.tablePrependData];
|
|
1811
|
+
} else {
|
|
1812
|
+
const data = response?.data;
|
|
1813
|
+
if (!data) {
|
|
1814
|
+
set({
|
|
1815
|
+
tablePrependData: []
|
|
1816
|
+
});
|
|
1817
|
+
}
|
|
1818
|
+
const row = await Object.fromEntries(
|
|
1819
|
+
Object.entries(data).map(([key, value]) => [
|
|
1820
|
+
key,
|
|
1821
|
+
value?.value ?? value
|
|
1822
|
+
])
|
|
1823
|
+
);
|
|
1824
|
+
rows = [...state.tablePrependData];
|
|
1825
|
+
if (rows.length > 0) {
|
|
1826
|
+
rows[0] = row;
|
|
1827
|
+
} else {
|
|
1828
|
+
rows.push(row);
|
|
1829
|
+
}
|
|
1830
|
+
}
|
|
1831
|
+
set({
|
|
1832
|
+
tablePrependData: rows
|
|
1833
|
+
});
|
|
1834
|
+
return rows;
|
|
1793
1835
|
}
|
|
1794
1836
|
}));
|
|
1795
1837
|
function useTable() {
|
|
@@ -1836,15 +1878,98 @@ function list2(options) {
|
|
|
1836
1878
|
};
|
|
1837
1879
|
}
|
|
1838
1880
|
|
|
1881
|
+
// src/store2/store.ts
|
|
1882
|
+
function createStore2(initialState) {
|
|
1883
|
+
let state = initialState;
|
|
1884
|
+
const listeners = /* @__PURE__ */ new Set();
|
|
1885
|
+
return {
|
|
1886
|
+
getState() {
|
|
1887
|
+
return state;
|
|
1888
|
+
},
|
|
1889
|
+
setState(partial) {
|
|
1890
|
+
state = {
|
|
1891
|
+
...state,
|
|
1892
|
+
...partial
|
|
1893
|
+
};
|
|
1894
|
+
listeners.forEach(
|
|
1895
|
+
(listener) => listener(state)
|
|
1896
|
+
);
|
|
1897
|
+
},
|
|
1898
|
+
subscribe(listener) {
|
|
1899
|
+
listeners.add(listener);
|
|
1900
|
+
return () => listeners.delete(listener);
|
|
1901
|
+
}
|
|
1902
|
+
};
|
|
1903
|
+
}
|
|
1904
|
+
|
|
1905
|
+
// src/store2/use-table.ts
|
|
1906
|
+
var tableStore2 = createStore2({
|
|
1907
|
+
tableData: [],
|
|
1908
|
+
tablePrependData: []
|
|
1909
|
+
});
|
|
1910
|
+
var actions = {
|
|
1911
|
+
setTableData(response) {
|
|
1912
|
+
tableStore2.setState({
|
|
1913
|
+
tableData: response
|
|
1914
|
+
});
|
|
1915
|
+
},
|
|
1916
|
+
async setTablePrependData(response) {
|
|
1917
|
+
const state = tableStore2.getState();
|
|
1918
|
+
let rows = [];
|
|
1919
|
+
if (response === "loading") {
|
|
1920
|
+
const row = await state.tableData?.data?.results?.columns.reduce((acc, item) => {
|
|
1921
|
+
if (!item.hidden) {
|
|
1922
|
+
acc[item.key] = "loading";
|
|
1923
|
+
}
|
|
1924
|
+
return acc;
|
|
1925
|
+
}, {});
|
|
1926
|
+
rows = [row, ...state.tablePrependData];
|
|
1927
|
+
} else {
|
|
1928
|
+
const data = response?.data;
|
|
1929
|
+
if (!data) {
|
|
1930
|
+
tableStore2.setState({
|
|
1931
|
+
tablePrependData: []
|
|
1932
|
+
});
|
|
1933
|
+
}
|
|
1934
|
+
const row = await Object.fromEntries(
|
|
1935
|
+
Object.entries(data).map(([key, value]) => [
|
|
1936
|
+
key,
|
|
1937
|
+
value?.value ?? value
|
|
1938
|
+
])
|
|
1939
|
+
);
|
|
1940
|
+
rows = [...state.tablePrependData];
|
|
1941
|
+
if (rows.length > 0) {
|
|
1942
|
+
rows[0] = row;
|
|
1943
|
+
} else {
|
|
1944
|
+
rows.push(row);
|
|
1945
|
+
}
|
|
1946
|
+
}
|
|
1947
|
+
tableStore2.setState({
|
|
1948
|
+
tablePrependData: rows
|
|
1949
|
+
});
|
|
1950
|
+
}
|
|
1951
|
+
};
|
|
1952
|
+
function useTable2() {
|
|
1953
|
+
const tableState = tableStore2.getState();
|
|
1954
|
+
return {
|
|
1955
|
+
...tableState,
|
|
1956
|
+
...actions
|
|
1957
|
+
};
|
|
1958
|
+
}
|
|
1959
|
+
|
|
1839
1960
|
// src/apis/object.ts
|
|
1840
1961
|
function list3(options) {
|
|
1841
1962
|
const {
|
|
1842
1963
|
getTableParam
|
|
1843
1964
|
} = useTable();
|
|
1965
|
+
const {
|
|
1966
|
+
setTableData
|
|
1967
|
+
} = useTable2();
|
|
1844
1968
|
const { mutate, isLoading } = createMutation(
|
|
1845
1969
|
async (payload) => {
|
|
1846
1970
|
const param = await getTableParam(payload?.companyAsMediator);
|
|
1847
1971
|
const response = await Client.object.list(payload, param);
|
|
1972
|
+
setTableData(response);
|
|
1848
1973
|
return response;
|
|
1849
1974
|
},
|
|
1850
1975
|
options
|
|
@@ -1897,10 +2022,15 @@ function objectFormOptions(options) {
|
|
|
1897
2022
|
isLoading
|
|
1898
2023
|
};
|
|
1899
2024
|
}
|
|
2025
|
+
var {
|
|
2026
|
+
setTablePrependData
|
|
2027
|
+
} = useTable2();
|
|
1900
2028
|
function create(options) {
|
|
1901
2029
|
const { mutate, isLoading } = createMutation(
|
|
1902
2030
|
async (props) => {
|
|
2031
|
+
await setTablePrependData("loading");
|
|
1903
2032
|
const response = await Client.object.create(props);
|
|
2033
|
+
await setTablePrependData(response);
|
|
1904
2034
|
return response;
|
|
1905
2035
|
},
|
|
1906
2036
|
options
|