@wlloyalty/wll-react-sdk 1.0.111 → 1.0.113
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/native.js +103 -88
- package/dist/native.js.map +1 -1
- package/dist/types/hooks/useGroupRefresh.d.ts +8 -0
- package/dist/types/hooks/useInitialGroupFetch.d.ts +10 -0
- package/dist/web.js +122 -99
- package/dist/web.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TGroup } from '../types/group';
|
|
2
|
+
type UseGroupRefreshProps = {
|
|
3
|
+
id: string;
|
|
4
|
+
enabled?: boolean;
|
|
5
|
+
setGroupData: (g: TGroup) => void;
|
|
6
|
+
};
|
|
7
|
+
export declare const useGroupRefresh: ({ id, enabled, setGroupData, }: UseGroupRefreshProps) => void;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { TGroup } from '../types/group';
|
|
2
|
+
type UseInitialGroupFetchProps = {
|
|
3
|
+
id: string;
|
|
4
|
+
setGroupData: (group: TGroup) => void;
|
|
5
|
+
};
|
|
6
|
+
export declare const useInitialGroupFetch: ({ id, setGroupData, }: UseInitialGroupFetchProps) => {
|
|
7
|
+
isLoading: boolean;
|
|
8
|
+
error: string | null;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
package/dist/web.js
CHANGED
|
@@ -20595,6 +20595,114 @@ var ContentTile = Object.assign(ContentTileRoot, {
|
|
|
20595
20595
|
});
|
|
20596
20596
|
var ContentTile$1 = withTileFetching(ContentTile);
|
|
20597
20597
|
|
|
20598
|
+
var useGroupRefresh = function (_a) {
|
|
20599
|
+
var id = _a.id,
|
|
20600
|
+
_b = _a.enabled,
|
|
20601
|
+
enabled = _b === void 0 ? false : _b,
|
|
20602
|
+
setGroupData = _a.setGroupData;
|
|
20603
|
+
var sdk = useWllSdk();
|
|
20604
|
+
React.useEffect(function () {
|
|
20605
|
+
if (!enabled || !(sdk === null || sdk === void 0 ? void 0 : sdk.subscribeToDataChange)) {
|
|
20606
|
+
return;
|
|
20607
|
+
}
|
|
20608
|
+
var unsubscribe = sdk.subscribeToDataChange('GROUP_DATA_CHANGED', function () {
|
|
20609
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
20610
|
+
var res, err_1;
|
|
20611
|
+
return __generator(this, function (_a) {
|
|
20612
|
+
switch (_a.label) {
|
|
20613
|
+
case 0:
|
|
20614
|
+
if (!id || !sdk || !sdk.refreshGroup) {
|
|
20615
|
+
return [2 /*return*/];
|
|
20616
|
+
}
|
|
20617
|
+
_a.label = 1;
|
|
20618
|
+
case 1:
|
|
20619
|
+
_a.trys.push([1, 3,, 4]);
|
|
20620
|
+
return [4 /*yield*/, sdk.refreshGroup(id)];
|
|
20621
|
+
case 2:
|
|
20622
|
+
res = _a.sent();
|
|
20623
|
+
if ((res === null || res === void 0 ? void 0 : res.status) === 'success' && res.data) {
|
|
20624
|
+
setGroupData(res.data);
|
|
20625
|
+
}
|
|
20626
|
+
return [3 /*break*/, 4];
|
|
20627
|
+
case 3:
|
|
20628
|
+
err_1 = _a.sent();
|
|
20629
|
+
console.error('Error during silent refresh:', err_1);
|
|
20630
|
+
return [3 /*break*/, 4];
|
|
20631
|
+
case 4:
|
|
20632
|
+
return [2 /*return*/];
|
|
20633
|
+
}
|
|
20634
|
+
});
|
|
20635
|
+
});
|
|
20636
|
+
});
|
|
20637
|
+
return function () {
|
|
20638
|
+
unsubscribe();
|
|
20639
|
+
};
|
|
20640
|
+
}, [id, sdk, enabled, setGroupData]);
|
|
20641
|
+
};
|
|
20642
|
+
|
|
20643
|
+
var useInitialGroupFetch = function (_a) {
|
|
20644
|
+
var id = _a.id,
|
|
20645
|
+
setGroupData = _a.setGroupData;
|
|
20646
|
+
var sdk = useWllSdk();
|
|
20647
|
+
var _b = React.useState(true),
|
|
20648
|
+
isLoading = _b[0],
|
|
20649
|
+
setIsLoading = _b[1];
|
|
20650
|
+
var _c = React.useState(null),
|
|
20651
|
+
error = _c[0],
|
|
20652
|
+
setError = _c[1];
|
|
20653
|
+
React.useEffect(function () {
|
|
20654
|
+
var cancelled = false;
|
|
20655
|
+
var fetchGroup = function () {
|
|
20656
|
+
return __awaiter(void 0, void 0, void 0, function () {
|
|
20657
|
+
var response;
|
|
20658
|
+
var _b;
|
|
20659
|
+
return __generator(this, function (_c) {
|
|
20660
|
+
switch (_c.label) {
|
|
20661
|
+
case 0:
|
|
20662
|
+
if (!id || !(sdk === null || sdk === void 0 ? void 0 : sdk.refreshGroup)) {
|
|
20663
|
+
setError('Unable to fetch group data: invalid configuration');
|
|
20664
|
+
setIsLoading(false);
|
|
20665
|
+
return [2 /*return*/];
|
|
20666
|
+
}
|
|
20667
|
+
setIsLoading(true);
|
|
20668
|
+
setError(null);
|
|
20669
|
+
_c.label = 1;
|
|
20670
|
+
case 1:
|
|
20671
|
+
_c.trys.push([1, 3, 4, 5]);
|
|
20672
|
+
return [4 /*yield*/, sdk.refreshGroup(id)];
|
|
20673
|
+
case 2:
|
|
20674
|
+
response = _c.sent();
|
|
20675
|
+
if (cancelled) return [2 /*return*/];
|
|
20676
|
+
if ((response === null || response === void 0 ? void 0 : response.status) === 'success' && response.data) {
|
|
20677
|
+
setGroupData(response.data);
|
|
20678
|
+
} else {
|
|
20679
|
+
setError((_b = response === null || response === void 0 ? void 0 : response.error) !== null && _b !== void 0 ? _b : 'Failed to fetch group data');
|
|
20680
|
+
}
|
|
20681
|
+
return [3 /*break*/, 5];
|
|
20682
|
+
case 3:
|
|
20683
|
+
_c.sent();
|
|
20684
|
+
if (!cancelled) setError('An unexpected error occurred.');
|
|
20685
|
+
return [3 /*break*/, 5];
|
|
20686
|
+
case 4:
|
|
20687
|
+
if (!cancelled) setIsLoading(false);
|
|
20688
|
+
return [7 /*endfinally*/];
|
|
20689
|
+
case 5:
|
|
20690
|
+
return [2 /*return*/];
|
|
20691
|
+
}
|
|
20692
|
+
});
|
|
20693
|
+
});
|
|
20694
|
+
};
|
|
20695
|
+
fetchGroup();
|
|
20696
|
+
return function () {
|
|
20697
|
+
cancelled = true;
|
|
20698
|
+
};
|
|
20699
|
+
}, [id, sdk, setGroupData]);
|
|
20700
|
+
return {
|
|
20701
|
+
isLoading: isLoading,
|
|
20702
|
+
error: error
|
|
20703
|
+
};
|
|
20704
|
+
};
|
|
20705
|
+
|
|
20598
20706
|
exports.SectionType = void 0;
|
|
20599
20707
|
(function (SectionType) {
|
|
20600
20708
|
SectionType["Grid"] = "GRID";
|
|
@@ -21313,108 +21421,24 @@ var useGroupContext = function () {
|
|
|
21313
21421
|
* @returns {Object} Object containing group data, loading state, and any error
|
|
21314
21422
|
*/
|
|
21315
21423
|
var useGroupData = function (id) {
|
|
21316
|
-
var sdk = useWllSdk();
|
|
21317
21424
|
var _a = React.useState(null),
|
|
21318
21425
|
groupData = _a[0],
|
|
21319
21426
|
setGroupData = _a[1];
|
|
21320
|
-
var _b =
|
|
21321
|
-
|
|
21322
|
-
|
|
21323
|
-
|
|
21324
|
-
isLoading =
|
|
21325
|
-
|
|
21326
|
-
|
|
21327
|
-
|
|
21328
|
-
|
|
21329
|
-
|
|
21330
|
-
|
|
21331
|
-
var response, err_1;
|
|
21332
|
-
return __generator(this, function (_a) {
|
|
21333
|
-
switch (_a.label) {
|
|
21334
|
-
case 0:
|
|
21335
|
-
if (!id || !sdk || !sdk.getGroupByID) {
|
|
21336
|
-
setError('Unable to fetch group data: invalid configuration');
|
|
21337
|
-
setIsLoading(false);
|
|
21338
|
-
setIsInitialFetchDone(true);
|
|
21339
|
-
return [2 /*return*/];
|
|
21340
|
-
}
|
|
21341
|
-
setIsLoading(true);
|
|
21342
|
-
setError(null);
|
|
21343
|
-
_a.label = 1;
|
|
21344
|
-
case 1:
|
|
21345
|
-
_a.trys.push([1, 3, 4, 5]);
|
|
21346
|
-
return [4 /*yield*/, sdk.refreshGroup(id)];
|
|
21347
|
-
case 2:
|
|
21348
|
-
response = _a.sent();
|
|
21349
|
-
if (response && response.status === 'success' && response.data) {
|
|
21350
|
-
setGroupData(response.data);
|
|
21351
|
-
} else {
|
|
21352
|
-
setError(response && response.error || 'Failed to fetch group data.');
|
|
21353
|
-
}
|
|
21354
|
-
return [3 /*break*/, 5];
|
|
21355
|
-
case 3:
|
|
21356
|
-
err_1 = _a.sent();
|
|
21357
|
-
setError('Failed to fetch group data. Please try again later.');
|
|
21358
|
-
console.error('Error fetching group:', err_1);
|
|
21359
|
-
return [3 /*break*/, 5];
|
|
21360
|
-
case 4:
|
|
21361
|
-
setIsLoading(false);
|
|
21362
|
-
setIsInitialFetchDone(true);
|
|
21363
|
-
return [7 /*endfinally*/];
|
|
21364
|
-
case 5:
|
|
21365
|
-
return [2 /*return*/];
|
|
21366
|
-
}
|
|
21367
|
-
});
|
|
21368
|
-
});
|
|
21369
|
-
}, [id, sdk]);
|
|
21370
|
-
var silentRefresh = React.useCallback(function () {
|
|
21371
|
-
return __awaiter(void 0, void 0, void 0, function () {
|
|
21372
|
-
var response, err_2;
|
|
21373
|
-
return __generator(this, function (_a) {
|
|
21374
|
-
switch (_a.label) {
|
|
21375
|
-
case 0:
|
|
21376
|
-
if (!id || !sdk || !sdk.getGroupByID || !isInitialFetchDone) {
|
|
21377
|
-
return [2 /*return*/];
|
|
21378
|
-
}
|
|
21379
|
-
_a.label = 1;
|
|
21380
|
-
case 1:
|
|
21381
|
-
_a.trys.push([1, 3,, 4]);
|
|
21382
|
-
return [4 /*yield*/, sdk.refreshGroup(id)];
|
|
21383
|
-
case 2:
|
|
21384
|
-
response = _a.sent();
|
|
21385
|
-
if (response && response.status === 'success' && response.data) {
|
|
21386
|
-
setGroupData(response.data);
|
|
21387
|
-
}
|
|
21388
|
-
return [3 /*break*/, 4];
|
|
21389
|
-
case 3:
|
|
21390
|
-
err_2 = _a.sent();
|
|
21391
|
-
console.error('Error during silent refresh:', err_2);
|
|
21392
|
-
return [3 /*break*/, 4];
|
|
21393
|
-
case 4:
|
|
21394
|
-
return [2 /*return*/];
|
|
21395
|
-
}
|
|
21396
|
-
});
|
|
21397
|
-
});
|
|
21398
|
-
}, [id, sdk, isInitialFetchDone]);
|
|
21399
|
-
var refreshGroup = React.useCallback(function () {
|
|
21400
|
-
return silentRefresh();
|
|
21401
|
-
}, [silentRefresh]);
|
|
21402
|
-
React.useEffect(function () {
|
|
21403
|
-
if (sdk) {
|
|
21404
|
-
initialFetch();
|
|
21405
|
-
var unsubscribeGroup_1 = sdk.subscribeToDataChange('GROUP_DATA_CHANGED', function () {
|
|
21406
|
-
silentRefresh();
|
|
21407
|
-
});
|
|
21408
|
-
return function () {
|
|
21409
|
-
unsubscribeGroup_1();
|
|
21410
|
-
};
|
|
21411
|
-
}
|
|
21412
|
-
}, [initialFetch, id, sdk, silentRefresh]);
|
|
21427
|
+
var _b = useInitialGroupFetch({
|
|
21428
|
+
id: id,
|
|
21429
|
+
setGroupData: setGroupData
|
|
21430
|
+
}),
|
|
21431
|
+
isLoading = _b.isLoading,
|
|
21432
|
+
error = _b.error;
|
|
21433
|
+
useGroupRefresh({
|
|
21434
|
+
id: id,
|
|
21435
|
+
enabled: Boolean(groupData),
|
|
21436
|
+
setGroupData: setGroupData
|
|
21437
|
+
});
|
|
21413
21438
|
return {
|
|
21414
21439
|
groupData: groupData,
|
|
21415
21440
|
isLoading: isLoading,
|
|
21416
|
-
error: error
|
|
21417
|
-
refreshGroup: refreshGroup
|
|
21441
|
+
error: error
|
|
21418
21442
|
};
|
|
21419
21443
|
};
|
|
21420
21444
|
/**
|
|
@@ -21495,7 +21519,7 @@ var Group = function (_a) {
|
|
|
21495
21519
|
return /*#__PURE__*/React.createElement(View$2, {
|
|
21496
21520
|
style: {
|
|
21497
21521
|
flex: 1,
|
|
21498
|
-
padding: theme.sizes.lg
|
|
21522
|
+
padding: IS_MOBILE ? theme.sizes.lg : undefined
|
|
21499
21523
|
},
|
|
21500
21524
|
accessible: true,
|
|
21501
21525
|
accessibilityLabel: "Loading group data"
|
|
@@ -22501,8 +22525,7 @@ var useRoundupTileStyles = function (isFullSize) {
|
|
|
22501
22525
|
justifyContent: 'space-between'
|
|
22502
22526
|
},
|
|
22503
22527
|
contentContainer: {
|
|
22504
|
-
width: '100%'
|
|
22505
|
-
marginTop: isFullSize ? useResponsiveValue(theme.sizes.xxl, theme.sizes.md, isDesktop, isTablet) : 0
|
|
22528
|
+
width: '100%'
|
|
22506
22529
|
},
|
|
22507
22530
|
contentColumn: {
|
|
22508
22531
|
flexGrow: 1
|