HEX
Server: LiteSpeed
System: Linux premium263.web-hosting.com 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: eastcjee (525)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: /home/eastcjee/public_html/wp-content/plugins/presto-player/src/admin/settings/store/reducer.js
const { combineReducers } = wp.data;

const settingsReducer = (state = {}, action) => {
  switch (action.type) {
    case "SET_SETTINGS":
      return action.settings;

    case "UPDATE_SETTING":
      return {
        ...state,
        [`presto_player_${action.optionName}`]: {
          ...state[`presto_player_${action.optionName}`],
          [action.name]: action.value,
        },
      };
  }
  return state;
};

const uiReducer = (state = { notices: [], saving: false }, action) => {
  switch (action.type) {
    case "SET_SAVING":
      return {
        ...state,
        saving: action.value,
      };
    case "SET_NOTICE":
      return {
        ...state,
        notices: [
          ...state.notices,
          { id: state.notices.length, ...action.notice },
        ],
      };
    case "REMOVE_NOTICE":
      return {
        ...state,
        notices: state.notices.filter((notice) => notice.id !== action.id),
      };
  }
  return state;
};

export default combineReducers({
  settingsReducer,
  uiReducer,
});