@axelor/aos-mobile-stock 8.2.3 → 8.2.4
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/lib/components/templates/product/AvailableStockIndicatorCard/AvailableStockIndicatorCard.d.ts +3 -2
- package/lib/components/templates/product/AvailableStockIndicatorCard/AvailableStockIndicatorCard.js +30 -2
- package/lib/components/templates/product/AvailableStockIndicatorCard/AvailableStockIndicatorCard.js.map +1 -1
- package/lib/components/templates/product/ProductCard/ProductCard.d.ts +3 -2
- package/lib/components/templates/product/ProductCard/ProductCard.js +31 -3
- package/lib/components/templates/product/ProductCard/ProductCard.js.map +1 -1
- package/lib/components/templates/product/ProductVariantCard/ProductVariantCard.d.ts +6 -10
- package/lib/components/templates/product/ProductVariantCard/ProductVariantCard.js +55 -8
- package/lib/components/templates/product/ProductVariantCard/ProductVariantCard.js.map +1 -1
- package/lib/features/asyncFunctions-index.d.ts +2 -2
- package/lib/features/asyncFunctions-index.js +2 -2
- package/lib/features/asyncFunctions-index.js.map +1 -1
- package/lib/features/productIndicatorsSlice.d.ts +0 -23
- package/lib/features/productIndicatorsSlice.js +0 -53
- package/lib/features/productIndicatorsSlice.js.map +1 -1
- package/lib/features/productVariantSlice.d.ts +0 -12
- package/lib/features/productVariantSlice.js +1 -29
- package/lib/features/productVariantSlice.js.map +1 -1
- package/lib/hooks/index.d.ts +0 -1
- package/lib/hooks/index.js +0 -1
- package/lib/hooks/index.js.map +1 -1
- package/lib/screens/products/ProductListScreen.js +3 -16
- package/lib/screens/products/ProductListScreen.js.map +1 -1
- package/lib/screens/products/ProductListVariantScreen.js +4 -16
- package/lib/screens/products/ProductListVariantScreen.js.map +1 -1
- package/lib/screens/products/ProductStockIndicatorDetails.js +3 -4
- package/lib/screens/products/ProductStockIndicatorDetails.js.map +1 -1
- package/package.json +3 -3
- package/lib/hooks/stock-list-availability.d.ts +0 -3
- package/lib/hooks/stock-list-availability.js +0 -52
- package/lib/hooks/stock-list-availability.js.map +0 -1
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface AvailableStockIndicatorCardProps {
|
|
3
|
+
product: any;
|
|
4
|
+
companyId: number;
|
|
3
5
|
stockLocation: any;
|
|
4
6
|
unit: any;
|
|
5
7
|
currentQty: number;
|
|
6
8
|
futureQty: number;
|
|
7
9
|
reservedQty: number;
|
|
8
|
-
availableStock: number;
|
|
9
10
|
}
|
|
10
|
-
declare const AvailableStockIndicatorCard: ({ stockLocation, unit, currentQty, futureQty, reservedQty,
|
|
11
|
+
declare const AvailableStockIndicatorCard: ({ product, companyId, stockLocation, unit, currentQty, futureQty, reservedQty, }: AvailableStockIndicatorCardProps) => React.JSX.Element;
|
|
11
12
|
export default AvailableStockIndicatorCard;
|
package/lib/components/templates/product/AvailableStockIndicatorCard/AvailableStockIndicatorCard.js
CHANGED
|
@@ -15,15 +15,43 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, { useCallback, useMemo } from 'react';
|
|
18
|
+
import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
19
19
|
import { StyleSheet } from 'react-native';
|
|
20
20
|
import { ObjectCard, useDigitFormat, useThemeColor } from '@axelor/aos-mobile-ui';
|
|
21
21
|
import { useSelector, useTranslator } from '@axelor/aos-mobile-core';
|
|
22
|
-
|
|
22
|
+
import { getProductStockIndicators } from '../../../../api';
|
|
23
|
+
const AvailableStockIndicatorCard = ({ product, companyId, stockLocation, unit, currentQty, futureQty, reservedQty, }) => {
|
|
23
24
|
const Colors = useThemeColor();
|
|
24
25
|
const I18n = useTranslator();
|
|
25
26
|
const formatNumber = useDigitFormat();
|
|
27
|
+
const isMounted = useRef(true);
|
|
28
|
+
const { activeCompany } = useSelector(state => state.user.user);
|
|
26
29
|
const { supplychain: supplychainConfig } = useSelector(state => state.appConfig);
|
|
30
|
+
const [availableStock, setAvailableStock] = useState(null);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
isMounted.current = true;
|
|
33
|
+
if (product != null) {
|
|
34
|
+
getProductStockIndicators({
|
|
35
|
+
productId: product.id,
|
|
36
|
+
version: product.$version,
|
|
37
|
+
stockLocationId: stockLocation?.id,
|
|
38
|
+
companyId: companyId ?? activeCompany?.id,
|
|
39
|
+
})
|
|
40
|
+
.then((res) => {
|
|
41
|
+
if (isMounted.current) {
|
|
42
|
+
setAvailableStock(res?.data?.object?.availableStock);
|
|
43
|
+
}
|
|
44
|
+
})
|
|
45
|
+
.catch(() => {
|
|
46
|
+
if (isMounted.current) {
|
|
47
|
+
setAvailableStock(null);
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return () => {
|
|
52
|
+
isMounted.current = false;
|
|
53
|
+
};
|
|
54
|
+
}, [activeCompany, companyId, product, stockLocation]);
|
|
27
55
|
const borderStyle = useMemo(() => {
|
|
28
56
|
const _color = availableStock == null
|
|
29
57
|
? Colors.secondaryColor
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AvailableStockIndicatorCard.js","sourceRoot":"","sources":["../../../../../src/components/templates/product/AvailableStockIndicatorCard/AvailableStockIndicatorCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,OAAO,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AvailableStockIndicatorCard.js","sourceRoot":"","sources":["../../../../../src/components/templates/product/AvailableStockIndicatorCard/AvailableStockIndicatorCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
interface ProductCardProps {
|
|
3
3
|
style?: any;
|
|
4
|
+
productId: number;
|
|
5
|
+
productVersion: number;
|
|
4
6
|
name: string;
|
|
5
7
|
code: string;
|
|
6
8
|
picture: any;
|
|
7
|
-
availableStock: number | null | undefined;
|
|
8
9
|
onPress: () => void;
|
|
9
10
|
}
|
|
10
|
-
declare const ProductCard: ({ style, name, code, picture,
|
|
11
|
+
declare const ProductCard: ({ style, productId, productVersion, name, code, picture, onPress, }: ProductCardProps) => React.JSX.Element;
|
|
11
12
|
export default ProductCard;
|
|
@@ -15,14 +15,42 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React from 'react';
|
|
18
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
19
19
|
import { StyleSheet } from 'react-native';
|
|
20
20
|
import { ObjectCard, useThemeColor } from '@axelor/aos-mobile-ui';
|
|
21
|
-
import { useMetafileUri, useTranslator } from '@axelor/aos-mobile-core';
|
|
22
|
-
|
|
21
|
+
import { useMetafileUri, useSelector, useTranslator, } from '@axelor/aos-mobile-core';
|
|
22
|
+
import { getProductStockIndicators } from '../../../../api';
|
|
23
|
+
const ProductCard = ({ style, productId, productVersion, name, code, picture, onPress, }) => {
|
|
23
24
|
const Colors = useThemeColor();
|
|
24
25
|
const I18n = useTranslator();
|
|
25
26
|
const formatMetaFile = useMetafileUri();
|
|
27
|
+
const isMounted = useRef(true);
|
|
28
|
+
const { activeCompany } = useSelector(state => state.user.user);
|
|
29
|
+
const [availableStock, setAvailableStock] = useState(null);
|
|
30
|
+
useEffect(() => {
|
|
31
|
+
isMounted.current = true;
|
|
32
|
+
if (productId != null) {
|
|
33
|
+
getProductStockIndicators({
|
|
34
|
+
productId: productId,
|
|
35
|
+
version: productVersion,
|
|
36
|
+
companyId: activeCompany?.id,
|
|
37
|
+
stockLocationId: null,
|
|
38
|
+
})
|
|
39
|
+
.then((res) => {
|
|
40
|
+
if (isMounted.current) {
|
|
41
|
+
setAvailableStock(res?.data?.object?.availableStock);
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
.catch(() => {
|
|
45
|
+
if (isMounted.current) {
|
|
46
|
+
setAvailableStock(null);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return () => {
|
|
51
|
+
isMounted.current = false;
|
|
52
|
+
};
|
|
53
|
+
}, [activeCompany?.id, productId, productVersion]);
|
|
26
54
|
return (<ObjectCard showArrow={true} onPress={onPress} style={style} image={{
|
|
27
55
|
generalStyle: styles.imageStyle,
|
|
28
56
|
imageSize: styles.imageSize,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductCard.js","sourceRoot":"","sources":["../../../../../src/components/templates/product/ProductCard/ProductCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ProductCard.js","sourceRoot":"","sources":["../../../../../src/components/templates/product/ProductCard/ProductCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
interface ProductAttribut {
|
|
3
|
-
attrName: string;
|
|
4
|
-
attrValue: string;
|
|
5
|
-
priceExtra: number;
|
|
6
|
-
applicationPriceSelect: number;
|
|
7
|
-
}
|
|
8
2
|
interface ProductVariantCardProps {
|
|
9
3
|
style?: any;
|
|
10
4
|
name: string;
|
|
11
5
|
code: string;
|
|
12
|
-
|
|
13
|
-
|
|
6
|
+
productId: number;
|
|
7
|
+
productVersion: number;
|
|
8
|
+
availabiltyData: {
|
|
9
|
+
stockLocationId: number;
|
|
10
|
+
companyId: number;
|
|
14
11
|
};
|
|
15
12
|
picture?: any;
|
|
16
|
-
stockAvailability: number;
|
|
17
13
|
onPress: () => void;
|
|
18
14
|
}
|
|
19
|
-
declare const ProductVariantCard: ({ style, name, code,
|
|
15
|
+
declare const ProductVariantCard: ({ style, name, code, productId, productVersion, availabiltyData, picture, onPress, }: ProductVariantCardProps) => React.JSX.Element;
|
|
20
16
|
export default ProductVariantCard;
|
|
@@ -15,24 +15,71 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, { useCallback } from 'react';
|
|
18
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
19
19
|
import { StyleSheet } from 'react-native';
|
|
20
20
|
import { ObjectCard, useDigitFormat, useThemeColor } from '@axelor/aos-mobile-ui';
|
|
21
21
|
import { useMetafileUri, useTranslator, useTypeHelpers, useTypes, } from '@axelor/aos-mobile-core';
|
|
22
|
-
|
|
22
|
+
import { getProductStockIndicators, fetchVariantAttributes, } from '../../../../api';
|
|
23
|
+
const ProductVariantCard = ({ style, name, code, productId, productVersion, availabiltyData, picture, onPress, }) => {
|
|
23
24
|
const Colors = useThemeColor();
|
|
24
25
|
const I18n = useTranslator();
|
|
25
26
|
const formatMetaFile = useMetafileUri();
|
|
26
27
|
const formatNumber = useDigitFormat();
|
|
27
28
|
const { ProductVariantValue } = useTypes();
|
|
28
29
|
const { getItemTitle } = useTypeHelpers();
|
|
30
|
+
const isMounted = useRef(true);
|
|
31
|
+
const [attributes, setAttributesList] = useState();
|
|
32
|
+
const [availableStock, setAvailableStock] = useState(null);
|
|
33
|
+
useEffect(() => {
|
|
34
|
+
isMounted.current = true;
|
|
35
|
+
return () => {
|
|
36
|
+
isMounted.current = false;
|
|
37
|
+
};
|
|
38
|
+
}, []);
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
if (productId != null) {
|
|
41
|
+
fetchVariantAttributes({
|
|
42
|
+
productVariantId: productId,
|
|
43
|
+
version: productVersion,
|
|
44
|
+
})
|
|
45
|
+
.then((res) => {
|
|
46
|
+
if (isMounted.current) {
|
|
47
|
+
setAttributesList(res?.data?.object?.attributes);
|
|
48
|
+
}
|
|
49
|
+
})
|
|
50
|
+
.catch(() => {
|
|
51
|
+
if (isMounted.current) {
|
|
52
|
+
setAttributesList(null);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}, [availabiltyData, productId, productVersion]);
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
if (productId != null) {
|
|
59
|
+
getProductStockIndicators({
|
|
60
|
+
productId: productId,
|
|
61
|
+
version: productVersion,
|
|
62
|
+
...availabiltyData,
|
|
63
|
+
})
|
|
64
|
+
.then((res) => {
|
|
65
|
+
if (isMounted.current) {
|
|
66
|
+
setAvailableStock(res?.data?.object?.availableStock);
|
|
67
|
+
}
|
|
68
|
+
})
|
|
69
|
+
.catch(() => {
|
|
70
|
+
if (isMounted.current) {
|
|
71
|
+
setAvailableStock(null);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}, [availabiltyData, productId, productVersion]);
|
|
29
76
|
const renderAttrItems = useCallback(() => {
|
|
30
|
-
if (!Array.isArray(
|
|
77
|
+
if (!Array.isArray(attributes)) {
|
|
31
78
|
return null;
|
|
32
79
|
}
|
|
33
80
|
let items = [];
|
|
34
|
-
for (let index = 0; index <
|
|
35
|
-
const attr =
|
|
81
|
+
for (let index = 0; index < attributes.length; index++) {
|
|
82
|
+
const attr = attributes[index];
|
|
36
83
|
if (attr != null) {
|
|
37
84
|
items.push({
|
|
38
85
|
numberOfLines: null,
|
|
@@ -46,7 +93,7 @@ const ProductVariantCard = ({ style, name, code, attributesList, picture, stockA
|
|
|
46
93
|
return items?.length > 0 ? { items } : null;
|
|
47
94
|
}, [
|
|
48
95
|
ProductVariantValue?.applicationPriceSelect,
|
|
49
|
-
|
|
96
|
+
attributes,
|
|
50
97
|
formatNumber,
|
|
51
98
|
getItemTitle,
|
|
52
99
|
]);
|
|
@@ -64,10 +111,10 @@ const ProductVariantCard = ({ style, name, code, attributesList, picture, stockA
|
|
|
64
111
|
}} sideBadges={{
|
|
65
112
|
items: [
|
|
66
113
|
{
|
|
67
|
-
displayText:
|
|
114
|
+
displayText: availableStock > 0
|
|
68
115
|
? I18n.t('Stock_Available')
|
|
69
116
|
: I18n.t('Stock_Unavailable'),
|
|
70
|
-
color:
|
|
117
|
+
color: availableStock > 0 ? Colors.successColor : Colors.errorColor,
|
|
71
118
|
},
|
|
72
119
|
],
|
|
73
120
|
}} lowerTexts={renderAttrItems()}/>);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductVariantCard.js","sourceRoot":"","sources":["../../../../../src/components/templates/product/ProductVariantCard/ProductVariantCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ProductVariantCard.js","sourceRoot":"","sources":["../../../../../src/components/templates/product/ProductVariantCard/ProductVariantCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,10 +5,10 @@ export { createInternalMove, fetchInternalMove, realizeInternalMove, searchInter
|
|
|
5
5
|
export { addTrackingNumber as addTrackingNumberToInventoryLine, createNewInventoryLine, fetchInventoryLine, fetchInventoryLines, updateInventoryLine, } from './inventoryLineSlice';
|
|
6
6
|
export { fetchInventoryById, modifyDescription, searchInventories, updateInventory, } from './inventorySlice';
|
|
7
7
|
export { filterClients, filterSuppliers } from './partnerSlice';
|
|
8
|
-
export { fetchAvailableStockIndicator,
|
|
8
|
+
export { fetchAvailableStockIndicator, fetchProductIndicators, fetchPurchaseOrderQtyIndicator, fetchSaleOrderQtyIndicator, fetchStockQtyIndicator, } from './productIndicatorsSlice';
|
|
9
9
|
export { fetchProductWithId, searchProducts, updateProductLocker, } from './productSlice';
|
|
10
10
|
export { searchProductTrackingNumber } from './productTrackingNumberSlice';
|
|
11
|
-
export {
|
|
11
|
+
export { fetchProductVariants } from './productVariantSlice';
|
|
12
12
|
export { getRacks } from './racksListSlice';
|
|
13
13
|
export { fetchStockCorrectionReasons } from './stockCorrectionReasonSlice';
|
|
14
14
|
export { addTrackingNumberStockCorrection, createCorrection, fetchStockCorrection, searchStockCorrections, updateCorrection, } from './stockCorrectionSlice';
|
|
@@ -22,10 +22,10 @@ export { createInternalMove, fetchInternalMove, realizeInternalMove, searchInter
|
|
|
22
22
|
export { addTrackingNumber as addTrackingNumberToInventoryLine, createNewInventoryLine, fetchInventoryLine, fetchInventoryLines, updateInventoryLine, } from './inventoryLineSlice';
|
|
23
23
|
export { fetchInventoryById, modifyDescription, searchInventories, updateInventory, } from './inventorySlice';
|
|
24
24
|
export { filterClients, filterSuppliers } from './partnerSlice';
|
|
25
|
-
export { fetchAvailableStockIndicator,
|
|
25
|
+
export { fetchAvailableStockIndicator, fetchProductIndicators, fetchPurchaseOrderQtyIndicator, fetchSaleOrderQtyIndicator, fetchStockQtyIndicator, } from './productIndicatorsSlice';
|
|
26
26
|
export { fetchProductWithId, searchProducts, updateProductLocker, } from './productSlice';
|
|
27
27
|
export { searchProductTrackingNumber } from './productTrackingNumberSlice';
|
|
28
|
-
export {
|
|
28
|
+
export { fetchProductVariants } from './productVariantSlice';
|
|
29
29
|
export { getRacks } from './racksListSlice';
|
|
30
30
|
export { fetchStockCorrectionReasons } from './stockCorrectionReasonSlice';
|
|
31
31
|
export { addTrackingNumberStockCorrection, createCorrection, fetchStockCorrection, searchStockCorrections, updateCorrection, } from './stockCorrectionSlice';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asyncFunctions-index.js","sourceRoot":"","sources":["../../src/features/asyncFunctions-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,iBAAiB,IAAI,uCAAuC,EAC5D,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,UAAU,IAAI,0BAA0B,EACxC,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,IAAI,mCAAmC,EACxD,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,IAAI,gCAAgC,EACrD,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,aAAa,EAAE,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EACL,4BAA4B,EAC5B,
|
|
1
|
+
{"version":3,"file":"asyncFunctions-index.js","sourceRoot":"","sources":["../../src/features/asyncFunctions-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,iBAAiB,IAAI,uCAAuC,EAC5D,yBAAyB,EACzB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,UAAU,IAAI,0BAA0B,EACxC,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,IAAI,mCAAmC,EACxD,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,iBAAiB,IAAI,gCAAgC,EACrD,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,aAAa,EAAE,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,8BAA8B,EAC9B,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,2BAA2B,EAAC,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,2BAA2B,EAAC,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,gCAAgC,EAChC,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,UAAU,IAAI,yBAAyB,EACvC,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAC,uBAAuB,EAAC,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,4BAA4B,EAC5B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC"}
|
|
@@ -8,26 +8,6 @@ export const fetchProductIndicators: import("@reduxjs/toolkit").AsyncThunk<any,
|
|
|
8
8
|
fulfilledMeta?: unknown;
|
|
9
9
|
rejectedMeta?: unknown;
|
|
10
10
|
}>;
|
|
11
|
-
export const fetchProductsAvailability: import("@reduxjs/toolkit").AsyncThunk<any[], void, {
|
|
12
|
-
state?: unknown;
|
|
13
|
-
dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction>;
|
|
14
|
-
extra?: unknown;
|
|
15
|
-
rejectValue?: unknown;
|
|
16
|
-
serializedErrorType?: unknown;
|
|
17
|
-
pendingMeta?: unknown;
|
|
18
|
-
fulfilledMeta?: unknown;
|
|
19
|
-
rejectedMeta?: unknown;
|
|
20
|
-
}>;
|
|
21
|
-
export const fetchProductDistribution: import("@reduxjs/toolkit").AsyncThunk<any[], void, {
|
|
22
|
-
state?: unknown;
|
|
23
|
-
dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction>;
|
|
24
|
-
extra?: unknown;
|
|
25
|
-
rejectValue?: unknown;
|
|
26
|
-
serializedErrorType?: unknown;
|
|
27
|
-
pendingMeta?: unknown;
|
|
28
|
-
fulfilledMeta?: unknown;
|
|
29
|
-
rejectedMeta?: unknown;
|
|
30
|
-
}>;
|
|
31
11
|
export const fetchStockQtyIndicator: import("@reduxjs/toolkit").AsyncThunk<any, void, {
|
|
32
12
|
state?: unknown;
|
|
33
13
|
dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction>;
|
|
@@ -69,11 +49,8 @@ export const fetchAvailableStockIndicator: import("@reduxjs/toolkit").AsyncThunk
|
|
|
69
49
|
rejectedMeta?: unknown;
|
|
70
50
|
}>;
|
|
71
51
|
export const productIndicatorsReducer: import("redux").Reducer<{
|
|
72
|
-
loading: boolean;
|
|
73
52
|
loadingProductIndicators: boolean;
|
|
74
53
|
productIndicators: {};
|
|
75
|
-
listAvailabilty: any[];
|
|
76
|
-
listAvailabiltyDistribution: any[];
|
|
77
54
|
loadingStockQty: boolean;
|
|
78
55
|
moreLoadingStockQty: boolean;
|
|
79
56
|
isListEndStockQty: boolean;
|
|
@@ -28,42 +28,6 @@ export const fetchProductIndicators = createAsyncThunk('product/fetchProductIndi
|
|
|
28
28
|
responseOptions: { isArrayResponse: false },
|
|
29
29
|
});
|
|
30
30
|
});
|
|
31
|
-
var getProductAvailabilty = async (data, { getState }) => {
|
|
32
|
-
return handlerApiCall({
|
|
33
|
-
fetchFunction: getProductStockIndicators,
|
|
34
|
-
data,
|
|
35
|
-
action: 'Stock_SliceAction_FetchProductStockIndicators',
|
|
36
|
-
getState,
|
|
37
|
-
responseOptions: { isArrayResponse: false },
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
async function fetchData(data, { getState }) {
|
|
41
|
-
return await getProductAvailabilty(data, { getState });
|
|
42
|
-
}
|
|
43
|
-
export const fetchProductsAvailability = createAsyncThunk('product/fetchProductsAvailability', async function (data, { getState }) {
|
|
44
|
-
let promises = [];
|
|
45
|
-
data.productList.forEach(product => {
|
|
46
|
-
promises.push(fetchData({
|
|
47
|
-
productId: product.id,
|
|
48
|
-
companyId: data.companyId,
|
|
49
|
-
stockLocationId: data.stockLocationId,
|
|
50
|
-
version: product.version,
|
|
51
|
-
}, { getState }));
|
|
52
|
-
});
|
|
53
|
-
return Promise.all(promises);
|
|
54
|
-
});
|
|
55
|
-
export const fetchProductDistribution = createAsyncThunk('product/fetchProductDistribution', async function (data, { getState }) {
|
|
56
|
-
let promises = [];
|
|
57
|
-
data.stockLocationList.forEach(stockLocation => {
|
|
58
|
-
promises.push(fetchData({
|
|
59
|
-
productId: data.product.id,
|
|
60
|
-
companyId: data.companyId,
|
|
61
|
-
stockLocationId: stockLocation.id,
|
|
62
|
-
version: data.product.version,
|
|
63
|
-
}, { getState }));
|
|
64
|
-
});
|
|
65
|
-
return Promise.all(promises);
|
|
66
|
-
});
|
|
67
31
|
export const fetchStockQtyIndicator = createAsyncThunk('stock_productIndicators/fetchStockQtyIndicator', async function (data, { getState }) {
|
|
68
32
|
return handlerApiCall({
|
|
69
33
|
fetchFunction: _fetchStockQtyIndicator,
|
|
@@ -101,11 +65,8 @@ export const fetchAvailableStockIndicator = createAsyncThunk('stock_productIndic
|
|
|
101
65
|
});
|
|
102
66
|
});
|
|
103
67
|
const initialState = {
|
|
104
|
-
loading: false,
|
|
105
68
|
loadingProductIndicators: false,
|
|
106
69
|
productIndicators: {},
|
|
107
|
-
listAvailabilty: [],
|
|
108
|
-
listAvailabiltyDistribution: [],
|
|
109
70
|
loadingStockQty: false,
|
|
110
71
|
moreLoadingStockQty: false,
|
|
111
72
|
isListEndStockQty: false,
|
|
@@ -158,20 +119,6 @@ const productIndicators = createSlice({
|
|
|
158
119
|
state.loadingProductIndicators = false;
|
|
159
120
|
state.productIndicators = action.payload;
|
|
160
121
|
});
|
|
161
|
-
builder.addCase(fetchProductsAvailability.pending, state => {
|
|
162
|
-
state.loading = true;
|
|
163
|
-
});
|
|
164
|
-
builder.addCase(fetchProductsAvailability.fulfilled, (state, action) => {
|
|
165
|
-
state.loading = false;
|
|
166
|
-
state.listAvailabilty = action.payload;
|
|
167
|
-
});
|
|
168
|
-
builder.addCase(fetchProductDistribution.pending, state => {
|
|
169
|
-
state.loading = true;
|
|
170
|
-
});
|
|
171
|
-
builder.addCase(fetchProductDistribution.fulfilled, (state, action) => {
|
|
172
|
-
state.loading = false;
|
|
173
|
-
state.listAvailabiltyDistribution = action.payload;
|
|
174
|
-
});
|
|
175
122
|
},
|
|
176
123
|
});
|
|
177
124
|
export const productIndicatorsReducer = productIndicators.reducer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"productIndicatorsSlice.js","sourceRoot":"","sources":["../../src/features/productIndicatorsSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,4BAA4B,EAC5B,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,yBAAyB,EAAC,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EACL,4BAA4B,IAAI,6BAA6B,EAC7D,8BAA8B,IAAI,+BAA+B,EACjE,0BAA0B,IAAI,2BAA2B,EACzD,sBAAsB,IAAI,uBAAuB,GAClD,MAAM,+BAA+B,CAAC;AAEvC,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CACpD,gCAAgC,EAChC,KAAK,WAAW,IAAI,EAAE,EAAC,QAAQ,EAAC;IAC9B,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,yBAAyB;QACxC,IAAI;QACJ,MAAM,EAAE,+CAA+C;QACvD,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,KAAK,EAAC;KAC1C,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"productIndicatorsSlice.js","sourceRoot":"","sources":["../../src/features/productIndicatorsSlice.js"],"names":[],"mappings":"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"}
|
|
@@ -8,21 +8,9 @@ export const fetchProductVariants: import("@reduxjs/toolkit").AsyncThunk<any, vo
|
|
|
8
8
|
fulfilledMeta?: unknown;
|
|
9
9
|
rejectedMeta?: unknown;
|
|
10
10
|
}>;
|
|
11
|
-
export const fetchProductsAttributes: import("@reduxjs/toolkit").AsyncThunk<any[], void, {
|
|
12
|
-
state?: unknown;
|
|
13
|
-
dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction>;
|
|
14
|
-
extra?: unknown;
|
|
15
|
-
rejectValue?: unknown;
|
|
16
|
-
serializedErrorType?: unknown;
|
|
17
|
-
pendingMeta?: unknown;
|
|
18
|
-
fulfilledMeta?: unknown;
|
|
19
|
-
rejectedMeta?: unknown;
|
|
20
|
-
}>;
|
|
21
11
|
export const productVariantReducer: import("redux").Reducer<{
|
|
22
12
|
loadingProductList: boolean;
|
|
23
13
|
moreLoading: boolean;
|
|
24
14
|
isListEnd: boolean;
|
|
25
15
|
productListVariables: any[];
|
|
26
|
-
loading: boolean;
|
|
27
|
-
listProductsAttributes: any[];
|
|
28
16
|
}>;
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
|
|
19
19
|
import { generateInifiniteScrollCases, handlerApiCall, } from '@axelor/aos-mobile-core';
|
|
20
|
-
import {
|
|
20
|
+
import { fetchVariants } from '../api/product-api';
|
|
21
21
|
export const fetchProductVariants = createAsyncThunk('product/fetchProductVariant', async function (productVariantId, { getState }) {
|
|
22
22
|
return handlerApiCall({
|
|
23
23
|
fetchFunction: fetchVariants,
|
|
@@ -27,32 +27,11 @@ export const fetchProductVariants = createAsyncThunk('product/fetchProductVarian
|
|
|
27
27
|
responseOptions: { isArrayResponse: true },
|
|
28
28
|
});
|
|
29
29
|
});
|
|
30
|
-
var getProductAttributes = async (data, { getState }) => {
|
|
31
|
-
return handlerApiCall({
|
|
32
|
-
fetchFunction: fetchVariantAttributes,
|
|
33
|
-
data,
|
|
34
|
-
action: 'Stock_SliceAction_FetchProductVariantAttributes',
|
|
35
|
-
getState,
|
|
36
|
-
responseOptions: { isArrayResponse: true },
|
|
37
|
-
});
|
|
38
|
-
};
|
|
39
|
-
async function fetchData(data, { getState }) {
|
|
40
|
-
return await getProductAttributes(data, { getState });
|
|
41
|
-
}
|
|
42
|
-
export const fetchProductsAttributes = createAsyncThunk('product/fetchProductsAttributes', async function (data, { getState }) {
|
|
43
|
-
let promises = [];
|
|
44
|
-
data.productList.forEach(product => {
|
|
45
|
-
promises.push(fetchData({ productVariantId: product.id, version: product.version }, { getState }));
|
|
46
|
-
});
|
|
47
|
-
return Promise.all(promises);
|
|
48
|
-
});
|
|
49
30
|
const initialState = {
|
|
50
31
|
loadingProductList: false,
|
|
51
32
|
moreLoading: false,
|
|
52
33
|
isListEnd: false,
|
|
53
34
|
productListVariables: [],
|
|
54
|
-
loading: false,
|
|
55
|
-
listProductsAttributes: [],
|
|
56
35
|
};
|
|
57
36
|
const productSlice = createSlice({
|
|
58
37
|
name: 'productVariant',
|
|
@@ -64,13 +43,6 @@ const productSlice = createSlice({
|
|
|
64
43
|
isListEnd: 'isListEnd',
|
|
65
44
|
list: 'productListVariables',
|
|
66
45
|
});
|
|
67
|
-
builder.addCase(fetchProductsAttributes.pending, (state, action) => {
|
|
68
|
-
state.loading = true;
|
|
69
|
-
});
|
|
70
|
-
builder.addCase(fetchProductsAttributes.fulfilled, (state, action) => {
|
|
71
|
-
state.loading = false;
|
|
72
|
-
state.listProductsAttributes = action.payload;
|
|
73
|
-
});
|
|
74
46
|
},
|
|
75
47
|
});
|
|
76
48
|
export const productVariantReducer = productSlice.reducer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"productVariantSlice.js","sourceRoot":"","sources":["../../src/features/productVariantSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,4BAA4B,EAC5B,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"productVariantSlice.js","sourceRoot":"","sources":["../../src/features/productVariantSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,4BAA4B,EAC5B,cAAc,GACf,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAClD,6BAA6B,EAC7B,KAAK,WAAW,gBAAgB,EAAE,EAAC,QAAQ,EAAC;IAC1C,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,aAAa;QAC5B,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,wCAAwC;QAChD,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,kBAAkB,EAAE,KAAK;IACzB,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,KAAK;IAChB,oBAAoB,EAAE,EAAE;CACzB,CAAC;AAEF,MAAM,YAAY,GAAG,WAAW,CAAC;IAC/B,IAAI,EAAE,gBAAgB;IACtB,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,4BAA4B,CAAC,OAAO,EAAE,oBAAoB,EAAE;YAC1D,OAAO,EAAE,oBAAoB;YAC7B,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,sBAAsB;SAC7B,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC,OAAO,CAAC"}
|
package/lib/hooks/index.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export { useCustomerLinesWithRacks } from "./customer-delivery-lines";
|
|
2
2
|
export { useInternalLinesWithRacks } from "./internal-move-lines";
|
|
3
|
-
export { useStockListWithAvailability } from "./stock-list-availability";
|
|
4
3
|
export { useStockLinesCheckQty } from "./stock-move-lines";
|
|
5
4
|
export { useSupplierLinesWithRacks } from "./supplier-arrival-lines";
|
package/lib/hooks/index.js
CHANGED
|
@@ -17,7 +17,6 @@
|
|
|
17
17
|
*/
|
|
18
18
|
export { useCustomerLinesWithRacks } from './customer-delivery-lines';
|
|
19
19
|
export { useInternalLinesWithRacks } from './internal-move-lines';
|
|
20
|
-
export { useStockListWithAvailability } from './stock-list-availability';
|
|
21
20
|
export { useStockLinesCheckQty } from './stock-move-lines';
|
|
22
21
|
export { useSupplierLinesWithRacks } from './supplier-arrival-lines';
|
|
23
22
|
//# sourceMappingURL=index.js.map
|
package/lib/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAC,yBAAyB,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAC,yBAAyB,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAC,yBAAyB,EAAC,MAAM,0BAA0B,CAAC"}
|
|
@@ -15,18 +15,14 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, {
|
|
18
|
+
import React, { useState, useCallback } from 'react';
|
|
19
19
|
import { Screen } from '@axelor/aos-mobile-ui';
|
|
20
|
-
import { displayItemName, SearchListView,
|
|
20
|
+
import { displayItemName, SearchListView, useSelector, useTranslator, } from '@axelor/aos-mobile-core';
|
|
21
21
|
import { ProductCard } from '../../components';
|
|
22
22
|
import { searchProducts } from '../../features/productSlice';
|
|
23
|
-
import { fetchProductsAvailability } from '../../features/productIndicatorsSlice';
|
|
24
23
|
const productScanKey = 'product_product-list';
|
|
25
24
|
const ProductListScreen = ({ navigation }) => {
|
|
26
25
|
const I18n = useTranslator();
|
|
27
|
-
const dispatch = useDispatch();
|
|
28
|
-
const { activeCompany } = useSelector(state => state.user.user);
|
|
29
|
-
const { listAvailabilty } = useSelector(state => state.productIndicators);
|
|
30
26
|
const { loadingProduct, moreLoadingProduct, isListEndProduct, productList } = useSelector(state => state.product);
|
|
31
27
|
const [navigate, setNavigate] = useState(false);
|
|
32
28
|
const showProductDetails = useCallback(product => {
|
|
@@ -35,17 +31,8 @@ const ProductListScreen = ({ navigation }) => {
|
|
|
35
31
|
navigation.navigate('ProductStockDetailsScreen', { product: product });
|
|
36
32
|
}
|
|
37
33
|
}, [navigation]);
|
|
38
|
-
useEffect(() => {
|
|
39
|
-
if (productList != null) {
|
|
40
|
-
dispatch(fetchProductsAvailability({
|
|
41
|
-
productList: productList,
|
|
42
|
-
companyId: activeCompany?.id,
|
|
43
|
-
stockLocationId: null,
|
|
44
|
-
}));
|
|
45
|
-
}
|
|
46
|
-
}, [activeCompany, dispatch, productList]);
|
|
47
34
|
return (<Screen removeSpaceOnTop={true}>
|
|
48
|
-
<SearchListView list={productList} loading={loadingProduct} moreLoading={moreLoadingProduct} isListEnd={isListEndProduct} sliceFunction={searchProducts} onChangeSearchValue={showProductDetails} displaySearchValue={displayItemName} searchPlaceholder={I18n.t('Stock_Product')} searchNavigate={navigate} scanKeySearch={productScanKey} expandableFilter={false} renderListItem={({ item
|
|
35
|
+
<SearchListView list={productList} loading={loadingProduct} moreLoading={moreLoadingProduct} isListEnd={isListEndProduct} sliceFunction={searchProducts} onChangeSearchValue={showProductDetails} displaySearchValue={displayItemName} searchPlaceholder={I18n.t('Stock_Product')} searchNavigate={navigate} scanKeySearch={productScanKey} expandableFilter={false} renderListItem={({ item }) => (<ProductCard key={item.id} productId={item.id} productVersion={item.version} name={item.name} code={item.code} picture={item.picture} onPress={() => showProductDetails(item)}/>)}/>
|
|
49
36
|
</Screen>);
|
|
50
37
|
};
|
|
51
38
|
export default ProductListScreen;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductListScreen.js","sourceRoot":"","sources":["../../../src/screens/products/ProductListScreen.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,
|
|
1
|
+
{"version":3,"file":"ProductListScreen.js","sourceRoot":"","sources":["../../../src/screens/products/ProductListScreen.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAE,WAAW,EAAC,MAAM,OAAO,CAAC;AACnD,OAAO,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EACL,eAAe,EACf,cAAc,EACd,WAAW,EACX,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,cAAc,EAAC,MAAM,6BAA6B,CAAC;AAE3D,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAE9C,MAAM,iBAAiB,GAAG,CAAC,EAAC,UAAU,EAAC,EAAE,EAAE;IACzC,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,MAAM,EAAC,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,WAAW,EAAC,GACvE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,MAAM,kBAAkB,GAAG,WAAW,CACpC,OAAO,CAAC,EAAE;QACR,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACjC,UAAU,CAAC,QAAQ,CAAC,2BAA2B,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;SACtE;IACH,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,OAAO,CACL,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAC7B;MAAA,CAAC,cAAc,CACb,IAAI,CAAC,CAAC,WAAW,CAAC,CAClB,OAAO,CAAC,CAAC,cAAc,CAAC,CACxB,WAAW,CAAC,CAAC,kBAAkB,CAAC,CAChC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAC5B,aAAa,CAAC,CAAC,cAAc,CAAC,CAC9B,mBAAmB,CAAC,CAAC,kBAAkB,CAAC,CACxC,kBAAkB,CAAC,CAAC,eAAe,CAAC,CACpC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAC3C,cAAc,CAAC,CAAC,QAAQ,CAAC,CACzB,aAAa,CAAC,CAAC,cAAc,CAAC,CAC9B,gBAAgB,CAAC,CAAC,KAAK,CAAC,CACxB,cAAc,CAAC,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,CAC1B,CAAC,WAAW,CACV,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACnB,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAC7B,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CACtB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,EACxC,CACH,CAAC,EAEN;IAAA,EAAE,MAAM,CAAC,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -15,19 +15,17 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, { useCallback,
|
|
18
|
+
import React, { useCallback, useMemo } from 'react';
|
|
19
19
|
import { Screen, ScrollList } from '@axelor/aos-mobile-ui';
|
|
20
20
|
import { useDispatch, useSelector, useTranslator } from '@axelor/aos-mobile-core';
|
|
21
21
|
import { ProductVariantCard } from '../../components';
|
|
22
|
-
import {
|
|
23
|
-
import { fetchProductsAvailability } from '../../features/productIndicatorsSlice';
|
|
22
|
+
import { fetchProductVariants } from '../../features/productVariantSlice';
|
|
24
23
|
const ProductListVariantScreen = ({ route, navigation }) => {
|
|
25
24
|
const product = route.params.product;
|
|
26
25
|
const companyID = route.params.companyID;
|
|
27
26
|
const stockLocationId = route.params.stockLocationId;
|
|
28
27
|
const parentProductId = useMemo(() => product?.parentProduct?.id, [product?.parentProduct?.id]);
|
|
29
|
-
const { loadingProductList, moreLoading, isListEnd, productListVariables
|
|
30
|
-
const { listAvailabilty } = useSelector(state => state.productIndicators);
|
|
28
|
+
const { loadingProductList, moreLoading, isListEnd, productListVariables } = useSelector(state => state.productVariant);
|
|
31
29
|
const I18n = useTranslator();
|
|
32
30
|
const dispatch = useDispatch();
|
|
33
31
|
const fetchVariantsAPI = useCallback(page => {
|
|
@@ -38,21 +36,11 @@ const ProductListVariantScreen = ({ route, navigation }) => {
|
|
|
38
36
|
}));
|
|
39
37
|
}
|
|
40
38
|
}, [dispatch, parentProductId]);
|
|
41
|
-
useEffect(() => {
|
|
42
|
-
if (productListVariables != null) {
|
|
43
|
-
dispatch(fetchProductsAvailability({
|
|
44
|
-
productList: productListVariables,
|
|
45
|
-
companyId: companyID,
|
|
46
|
-
stockLocationId: stockLocationId,
|
|
47
|
-
}));
|
|
48
|
-
dispatch(fetchProductsAttributes({ productList: productListVariables }));
|
|
49
|
-
}
|
|
50
|
-
}, [companyID, dispatch, productListVariables, stockLocationId]);
|
|
51
39
|
const navigateToProductVariable = productVar => {
|
|
52
40
|
navigation.navigate('ProductStockDetailsScreen', { product: productVar });
|
|
53
41
|
};
|
|
54
42
|
return (<Screen>
|
|
55
|
-
<ScrollList loadingList={loadingProductList} data={productListVariables} renderItem={({ item
|
|
43
|
+
<ScrollList loadingList={loadingProductList} data={productListVariables} renderItem={({ item }) => (<ProductVariantCard key={item.id} name={item.name} code={item.code} productId={item.id} productVersion={item.version} availabiltyData={{ stockLocationId, companyId: companyID }} picture={item.picture} onPress={() => navigateToProductVariable(item)}/>)} fetchData={fetchVariantsAPI} moreLoading={moreLoading} isListEnd={isListEnd} translator={I18n.t}/>
|
|
56
44
|
</Screen>);
|
|
57
45
|
};
|
|
58
46
|
export default ProductListVariantScreen;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductListVariantScreen.js","sourceRoot":"","sources":["../../../src/screens/products/ProductListVariantScreen.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"ProductListVariantScreen.js","sourceRoot":"","sources":["../../../src/screens/products/ProductListVariantScreen.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,OAAO,EAAC,MAAM,OAAO,CAAC;AAClD,OAAO,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAC,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAC,oBAAoB,EAAC,MAAM,oCAAoC,CAAC;AAExE,MAAM,wBAAwB,GAAG,CAAC,EAAC,KAAK,EAAE,UAAU,EAAC,EAAE,EAAE;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;IACzC,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC;IACrD,MAAM,eAAe,GAAG,OAAO,CAC7B,GAAG,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,EAChC,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,CAAC,CAC7B,CAAC;IACF,MAAM,EAAC,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,oBAAoB,EAAC,GACtE,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,gBAAgB,GAAG,WAAW,CAClC,IAAI,CAAC,EAAE;QACL,IAAI,eAAe,EAAE;YACnB,QAAQ,CACN,oBAAoB,CAAC;gBACnB,sBAAsB,EAAE,eAAe;gBACvC,IAAI,EAAE,IAAI;aACX,CAAC,CACH,CAAC;SACH;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,eAAe,CAAC,CAC5B,CAAC;IAEF,MAAM,yBAAyB,GAAG,UAAU,CAAC,EAAE;QAC7C,UAAU,CAAC,QAAQ,CAAC,2BAA2B,EAAE,EAAC,OAAO,EAAE,UAAU,EAAC,CAAC,CAAC;IAC1E,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,MAAM,CACL;MAAA,CAAC,UAAU,CACT,WAAW,CAAC,CAAC,kBAAkB,CAAC,CAChC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAC3B,UAAU,CAAC,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,CACtB,CAAC,kBAAkB,CACjB,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACb,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CACnB,cAAc,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAC7B,eAAe,CAAC,CAAC,EAAC,eAAe,EAAE,SAAS,EAAE,SAAS,EAAC,CAAC,CACzD,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CACtB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,EAC/C,CACH,CAAC,CACF,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAC5B,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAEvB;IAAA,EAAE,MAAM,CAAC,CACV,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
|
|
@@ -21,7 +21,6 @@ import { Screen, ScrollList } from '@axelor/aos-mobile-ui';
|
|
|
21
21
|
import { fetchProductWithId } from '../../features/productSlice';
|
|
22
22
|
import { fetchAvailableStockIndicator, fetchPurchaseOrderQtyIndicator, fetchSaleOrderQtyIndicator, fetchStockQtyIndicator, } from '../../features/productIndicatorsSlice';
|
|
23
23
|
import { AvailableStockIndicatorCard, OrderQtyIndicatorCard, StockQtyIndicatorCard, } from '../../components';
|
|
24
|
-
import { useStockListWithAvailability } from '../../hooks';
|
|
25
24
|
import { StockIndicator } from '../../types';
|
|
26
25
|
const ProductStockIndicatorDetails = ({ route }) => {
|
|
27
26
|
const { type: indicatorType, productId, stockLocationId, companyId, } = route?.params ?? {};
|
|
@@ -30,8 +29,7 @@ const ProductStockIndicatorDetails = ({ route }) => {
|
|
|
30
29
|
const navigation = useNavigation();
|
|
31
30
|
const dispatch = useDispatch();
|
|
32
31
|
const { productFromId: product } = useSelector(state => state.product);
|
|
33
|
-
const { loadingStockQty, moreLoadingStockQty, isListEndStockQty, stockQtyList, loadingSaleOrderQty, moreLoadingSaleOrderQty, isListEndSaleOrderQty, saleOrderQtyList, loadingPurchaseOrderQty, moreLoadingPurchaseOrderQty, isListEndPurchaseOrderQty, purchaseOrderQtyList, loadingAvailableStock, moreLoadingAvailableStock, isListEndAvailableStock, } = useSelector((state) => state.productIndicators);
|
|
34
|
-
const { availableStockList } = useStockListWithAvailability(companyId, product);
|
|
32
|
+
const { loadingStockQty, moreLoadingStockQty, isListEndStockQty, stockQtyList, loadingSaleOrderQty, moreLoadingSaleOrderQty, isListEndSaleOrderQty, saleOrderQtyList, loadingPurchaseOrderQty, moreLoadingPurchaseOrderQty, isListEndPurchaseOrderQty, purchaseOrderQtyList, loadingAvailableStock, moreLoadingAvailableStock, isListEndAvailableStock, availableStockList, } = useSelector((state) => state.productIndicators);
|
|
35
33
|
useEffect(() => {
|
|
36
34
|
if (productId != null && productId !== product?.id) {
|
|
37
35
|
dispatch(fetchProductWithId(productId));
|
|
@@ -129,13 +127,14 @@ const ProductStockIndicatorDetails = ({ route }) => {
|
|
|
129
127
|
moreLoading: moreLoadingAvailableStock,
|
|
130
128
|
isListEnd: isListEndAvailableStock,
|
|
131
129
|
fetchData: fetchIndicatorAPI,
|
|
132
|
-
renderItem: ({ item }) => <AvailableStockIndicatorCard {...item}
|
|
130
|
+
renderItem: ({ item }) => (<AvailableStockIndicatorCard {...item} companyId={companyId}/>),
|
|
133
131
|
};
|
|
134
132
|
default:
|
|
135
133
|
return null;
|
|
136
134
|
}
|
|
137
135
|
}, [
|
|
138
136
|
availableStockList,
|
|
137
|
+
companyId,
|
|
139
138
|
fetchIndicatorAPI,
|
|
140
139
|
fetchStockQtyIndicatorAPI,
|
|
141
140
|
handleOnPressStockQty,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductStockIndicatorDetails.js","sourceRoot":"","sources":["../../../src/screens/products/ProductStockIndicatorDetails.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAC,MAAM,OAAO,CAAC;AAC7D,OAAO,EACL,WAAW,EACX,aAAa,EACb,WAAW,EACX,aAAa,EACb,QAAQ,GACT,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAC,MAAM,EAAE,UAAU,EAAC,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"ProductStockIndicatorDetails.js","sourceRoot":"","sources":["../../../src/screens/products/ProductStockIndicatorDetails.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@axelor/aos-mobile-stock",
|
|
3
|
-
"version": "8.2.
|
|
3
|
+
"version": "8.2.4",
|
|
4
4
|
"author": "Axelor",
|
|
5
5
|
"license": "AGPL-3.0-only",
|
|
6
6
|
"publishConfig": {
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"react-native": "0.73.9"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@axelor/aos-mobile-ui": "8.2.
|
|
31
|
-
"@axelor/aos-mobile-core": "8.2.
|
|
30
|
+
"@axelor/aos-mobile-ui": "8.2.4",
|
|
31
|
+
"@axelor/aos-mobile-core": "8.2.4",
|
|
32
32
|
"@reduxjs/toolkit": "^2.2.7"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Axelor Business Solutions
|
|
3
|
-
*
|
|
4
|
-
* Copyright (C) 2024 Axelor (<http://axelor.com>).
|
|
5
|
-
*
|
|
6
|
-
* This program is free software: you can redistribute it and/or modify
|
|
7
|
-
* it under the terms of the GNU Affero General Public License, version 3,
|
|
8
|
-
* as published by the Free Software Foundation.
|
|
9
|
-
*
|
|
10
|
-
* This program is distributed in the hope that it will be useful,
|
|
11
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
-
* GNU Affero General Public License for more details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License
|
|
16
|
-
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import { useEffect, useMemo } from 'react';
|
|
19
|
-
import { useDispatch, useSelector } from '@axelor/aos-mobile-core';
|
|
20
|
-
import { fetchProductDistribution } from '../features/productIndicatorsSlice';
|
|
21
|
-
export const useStockListWithAvailability = (companyId, product) => {
|
|
22
|
-
const dispatch = useDispatch();
|
|
23
|
-
const { user } = useSelector(state => state.user);
|
|
24
|
-
const { availableStockList, listAvailabiltyDistribution } = useSelector(state => state.productIndicators);
|
|
25
|
-
useEffect(() => {
|
|
26
|
-
if (availableStockList != null) {
|
|
27
|
-
dispatch(fetchProductDistribution({
|
|
28
|
-
stockLocationList: availableStockList?.map(_item => _item.stockLocation),
|
|
29
|
-
product: product,
|
|
30
|
-
companyId: companyId || user.activeCompany?.id,
|
|
31
|
-
}));
|
|
32
|
-
}
|
|
33
|
-
}, [
|
|
34
|
-
availableStockList,
|
|
35
|
-
dispatch,
|
|
36
|
-
product,
|
|
37
|
-
companyId,
|
|
38
|
-
user.activeCompany?.id,
|
|
39
|
-
]);
|
|
40
|
-
const updatedList = useMemo(() => {
|
|
41
|
-
return availableStockList?.map((item, index) => {
|
|
42
|
-
return {
|
|
43
|
-
...item,
|
|
44
|
-
availableStock: listAvailabiltyDistribution?.[index]?.availableStock,
|
|
45
|
-
};
|
|
46
|
-
});
|
|
47
|
-
}, [availableStockList, listAvailabiltyDistribution]);
|
|
48
|
-
return useMemo(() => ({
|
|
49
|
-
availableStockList: updatedList,
|
|
50
|
-
}), [updatedList]);
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=stock-list-availability.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stock-list-availability.js","sourceRoot":"","sources":["../../src/hooks/stock-list-availability.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,MAAM,OAAO,CAAC;AACzC,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAC,wBAAwB,EAAC,MAAM,oCAAoC,CAAC;AAE5E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;IACjE,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,EAAC,IAAI,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,EAAC,kBAAkB,EAAE,2BAA2B,EAAC,GAAG,WAAW,CACnE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CACjC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,kBAAkB,IAAI,IAAI,EAAE;YAC9B,QAAQ,CACN,wBAAwB,CAAC;gBACvB,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,CACxC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAC7B;gBACD,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;aAC/C,CAAC,CACH,CAAC;SACH;IACH,CAAC,EAAE;QACD,kBAAkB;QAClB,QAAQ;QACR,OAAO;QACP,SAAS;QACT,IAAI,CAAC,aAAa,EAAE,EAAE;KACvB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,OAAO,kBAAkB,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC7C,OAAO;gBACL,GAAG,IAAI;gBACP,cAAc,EAAE,2BAA2B,EAAE,CAAC,KAAK,CAAC,EAAE,cAAc;aACrE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAC,CAAC;IAEtD,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,kBAAkB,EAAE,WAAW;KAChC,CAAC,EACF,CAAC,WAAW,CAAC,CACd,CAAC;AACJ,CAAC,CAAC"}
|