PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / trunk
GiveWP – Donation Plugin and Fundraising Platform vtrunk
4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / DonationForms / resources / app / store / donation-summary / reducer.ts
give / src / DonationForms / resources / app / store / donation-summary Last commit date
index.tsx 2 years ago reducer.ts 2 years ago
reducer.ts
73 lines
1 import {DonationSummaryLineItem} from '@givewp/forms/app/store/donation-summary/index';
2
3 const ADD_ITEM = 'add_item';
4 const REMOVE_ITEM = 'remove_item';
5 const ADD_AMOUNT_TO_TOTAL = 'add_amount_to_total';
6 const REMOVE_AMOUNT_FROM_TOTAL = 'remove_amount_from_total';
7
8 /**
9 * @since 3.0.0
10 */
11 export default function reducer(draft, action) {
12 switch (action.type) {
13 case ADD_ITEM:
14 draft.items[action.item.id] = action.item;
15 break;
16
17 case REMOVE_ITEM:
18 delete draft.items[action.itemId];
19 break;
20
21 case ADD_AMOUNT_TO_TOTAL:
22 draft.totals[action.itemId] = action.amount;
23 break;
24
25 case REMOVE_AMOUNT_FROM_TOTAL:
26 delete draft.totals[action.itemId];
27 break;
28 default:
29 break;
30 }
31 }
32
33 /**
34 * @since 3.0.0
35 */
36 export function addItem(item: DonationSummaryLineItem) {
37 return {
38 type: ADD_ITEM,
39 item,
40 };
41 }
42
43 /**
44 * @since 3.0.0
45 */
46 export function addAmountToTotal(itemId: string, amount: number) {
47 return {
48 type: ADD_AMOUNT_TO_TOTAL,
49 itemId,
50 amount,
51 };
52 }
53
54 /**
55 * @since 3.0.0
56 */
57 export function removeAmountFromTotal(itemId: string) {
58 return {
59 type: REMOVE_AMOUNT_FROM_TOTAL,
60 itemId,
61 };
62 }
63
64 /**
65 * @since 3.0.0
66 */
67 export function removeItem(itemId: string) {
68 return {
69 type: REMOVE_ITEM,
70 itemId,
71 };
72 }
73