Skip to content

Commit

Permalink
fix: check for mode on actions and reactions
Browse files Browse the repository at this point in the history
  • Loading branch information
jacques-trixta committed Dec 2, 2020
1 parent 37addaf commit 7795de9
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 20 deletions.
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@trixta/trixta-js",
"version": "3.3.4-beta.0",
"version": "3.3.5-beta.0",
"description": "Javascript library to integrate Trixta",
"main": "lib/bundle.cjs.js",
"module": "lib/bundle.esm.js",
Expand Down
22 changes: 10 additions & 12 deletions src/React/reducers/tests/reducers.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -528,10 +528,10 @@ describe('Trixta Reducers', () => {

const expectedResult = produce(state, (draft) => {
const keyName = get(action, 'data.keyName', null);
const mode = get(state.actions, `${keyName}.mode`, false);

const { mode } = state.actions[keyName];
if (!get(action, 'data.clearResponse', false)) {
if (draft.actions[keyName].instances) {
if (draft.actions[keyName].instances && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
draft.actions[keyName].instances[0] = {
Expand Down Expand Up @@ -626,10 +626,10 @@ describe('Trixta Reducers', () => {

const expectedResult = produce(state, (draft) => {
const keyName = get(action, 'data.keyName', null);
const mode = get(state.actions, `${keyName}.mode`, false);

const { mode } = state.actions[keyName];
if (!get(action, 'data.clearResponse', false)) {
if (draft.actions[keyName].instances) {
if (draft.actions[keyName].instances && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
draft.actions[keyName].instances[0] = {
Expand Down Expand Up @@ -1042,8 +1042,7 @@ describe('Trixta Reducers', () => {
});
const ref = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.ref, false);
const loadingStatusKey = `${roleName}:${reactionName}:${ref}`;

const { mode } = state.reactions[keyName];
const mode = get(state.reactions, `${keyName}.mode`, false);
const isExpired = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.status, '') === 'expired';
const isRequestForResponse = reaction.type === TRIXTA_FIELDS.requestForResponse;
if (isRequestForResponse) {
Expand All @@ -1062,7 +1061,7 @@ describe('Trixta Reducers', () => {
draft.reactions[keyName].instances[TRIXTA_FIELDS.requestForResponse].splice(index, 1);
delete draft.loadingStatus[loadingStatusKey];
}
} else if (draft.reactions[keyName]) {
} else if (draft.reactions[keyName] && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
if (isRequestForResponse) {
Expand Down Expand Up @@ -1242,7 +1241,7 @@ describe('Trixta Reducers', () => {
const ref = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.ref, false);
const loadingStatusKey = `${roleName}:${reactionName}:${ref}`;

const { mode } = state.reactions[keyName];
const mode = get(state.reactions, `${keyName}.mode`, false);
const isExpired = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.status, '') === 'expired';
const isRequestForResponse = reaction.type === TRIXTA_FIELDS.requestForResponse;
if (isRequestForResponse) {
Expand All @@ -1261,7 +1260,7 @@ describe('Trixta Reducers', () => {
draft.reactions[keyName].instances[TRIXTA_FIELDS.requestForResponse].splice(index, 1);
delete draft.loadingStatus[loadingStatusKey];
}
} else if (draft.reactions[keyName]) {
} else if (draft.reactions[keyName] && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
if (isRequestForResponse) {
Expand Down Expand Up @@ -1457,8 +1456,7 @@ describe('Trixta Reducers', () => {
});
const ref = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.ref, false);
const loadingStatusKey = `${roleName}:${reactionName}:${ref}`;

const { mode } = state.reactions[keyName];
const mode = get(state.reactions, `${keyName}.mode`, false);
const isExpired = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.status, '') === 'expired';
const isRequestForResponse = reaction.type === TRIXTA_FIELDS.requestForResponse;
if (isRequestForResponse) {
Expand All @@ -1477,7 +1475,7 @@ describe('Trixta Reducers', () => {
draft.reactions[keyName].instances[TRIXTA_FIELDS.requestForResponse].splice(index, 1);
delete draft.loadingStatus[loadingStatusKey];
}
} else if (draft.reactions[keyName]) {
} else if (draft.reactions[keyName] && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
if (isRequestForResponse) {
Expand Down
14 changes: 8 additions & 6 deletions src/React/reducers/trixtaReducer.js
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ export const trixtaReducer = (state = initialState, action) =>
const ref = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.ref, false);
const loadingStatusKey = `${roleName}:${reactionName}:${ref}`;

const { mode } = state.reactions[keyName];
const mode = get(state.reactions, `${keyName}.mode`, false);
const isExpired = get(reaction, ROLE_REACTION_RESPONSE_FIELDS.status, '') === 'expired';
const isRequestForResponse = reaction.type === TRIXTA_FIELDS.requestForResponse;
if (isRequestForResponse) {
Expand All @@ -186,7 +186,7 @@ export const trixtaReducer = (state = initialState, action) =>
draft.reactions[keyName].instances[TRIXTA_FIELDS.requestForResponse].splice(index, 1);
delete draft.loadingStatus[loadingStatusKey];
}
} else if (draft.reactions[keyName]) {
} else if (draft.reactions[keyName] && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
if (isRequestForResponse) {
Expand Down Expand Up @@ -274,9 +274,10 @@ export const trixtaReducer = (state = initialState, action) =>
case UPDATE_TRIXTA_ACTION_RESPONSE:
{
const keyName = get(action, 'data.keyName', null);
const { mode } = state.actions[keyName];
const mode = get(state.actions, `${keyName}.mode`, false);

if (!get(action, 'data.clearResponse', false)) {
if (draft.actions[keyName].instances) {
if (draft.actions[keyName].instances && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
draft.actions[keyName].instances[0] = {
Expand Down Expand Up @@ -315,8 +316,9 @@ export const trixtaReducer = (state = initialState, action) =>
name: actionName,
role: roleName,
});
const { mode } = state.actions[keyName];
if (draft.actions[keyName].instances) {

const mode = get(state.actions, `${keyName}.mode`, false);
if (draft.actions[keyName].instances && mode) {
switch (mode[TRIXTA_MODE_TYPE_FIELDS.type]) {
case TRIXTA_MODE_TYPE.replace:
draft.actions[keyName].instances[0] = {
Expand Down

0 comments on commit 7795de9

Please sign in to comment.