Chore: moves localstorage helper as a shared utility (#6838)
* Chore: moves localstorage helper as a shared utility and refactors constants * Refactors constants file * Fixes merge conflicts * Delete constants.js --------- Co-authored-by: Sivin Varghese <64252451+iamsivin@users.noreply.github.com>
This commit is contained in:
parent
17ff1f11a7
commit
09ce85b30d
@ -1,5 +1,5 @@
|
|||||||
/* global axios */
|
/* global axios */
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
|
|
||||||
export const getTestimonialContent = () => {
|
export const getTestimonialContent = () => {
|
||||||
return axios.get(wootConstants.TESTIMONIAL_URL);
|
return axios.get(wootConstants.TESTIMONIAL_URL);
|
||||||
|
|||||||
@ -173,7 +173,7 @@ import ConversationCard from './widgets/conversation/ConversationCard';
|
|||||||
import timeMixin from '../mixins/time';
|
import timeMixin from '../mixins/time';
|
||||||
import eventListenerMixins from 'shared/mixins/eventListenerMixins';
|
import eventListenerMixins from 'shared/mixins/eventListenerMixins';
|
||||||
import conversationMixin from '../mixins/conversations';
|
import conversationMixin from '../mixins/conversations';
|
||||||
import wootConstants from '../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import advancedFilterTypes from './widgets/conversation/advancedFilterItems';
|
import advancedFilterTypes from './widgets/conversation/advancedFilterItems';
|
||||||
import filterQueryGenerator from '../helper/filterQueryGenerator.js';
|
import filterQueryGenerator from '../helper/filterQueryGenerator.js';
|
||||||
import AddCustomViews from 'dashboard/routes/dashboard/customviews/AddCustomViews';
|
import AddCustomViews from 'dashboard/routes/dashboard/customviews/AddCustomViews';
|
||||||
|
|||||||
@ -12,7 +12,8 @@
|
|||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import Banner from 'dashboard/components/ui/Banner.vue';
|
import Banner from 'dashboard/components/ui/Banner.vue';
|
||||||
import { LocalStorage, LOCAL_STORAGE_KEYS } from '../../helper/localStorage';
|
import { LOCAL_STORAGE_KEYS } from 'dashboard/constants/localStorage';
|
||||||
|
import { LocalStorage } from 'shared/helpers/localStorage';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import adminMixin from 'dashboard/mixins/isAdmin';
|
import adminMixin from 'dashboard/mixins/isAdmin';
|
||||||
import { hasAnUpdateAvailable } from './versionCheckHelper';
|
import { hasAnUpdateAvailable } from './versionCheckHelper';
|
||||||
|
|||||||
@ -126,7 +126,7 @@ import WootDropdownSubMenu from 'shared/components/ui/dropdown/DropdownSubMenu.v
|
|||||||
import WootDropdownMenu from 'shared/components/ui/dropdown/DropdownMenu.vue';
|
import WootDropdownMenu from 'shared/components/ui/dropdown/DropdownMenu.vue';
|
||||||
import WootDropdownDivider from 'shared/components/ui/dropdown/DropdownDivider';
|
import WootDropdownDivider from 'shared/components/ui/dropdown/DropdownDivider';
|
||||||
|
|
||||||
import wootConstants from '../../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import {
|
import {
|
||||||
CMD_REOPEN_CONVERSATION,
|
CMD_REOPEN_CONVERSATION,
|
||||||
CMD_RESOLVE_CONVERSATION,
|
CMD_RESOLVE_CONVERSATION,
|
||||||
|
|||||||
@ -52,7 +52,7 @@ import WootDropdownMenu from 'shared/components/ui/dropdown/DropdownMenu';
|
|||||||
import WootDropdownHeader from 'shared/components/ui/dropdown/DropdownHeader';
|
import WootDropdownHeader from 'shared/components/ui/dropdown/DropdownHeader';
|
||||||
import WootDropdownDivider from 'shared/components/ui/dropdown/DropdownDivider';
|
import WootDropdownDivider from 'shared/components/ui/dropdown/DropdownDivider';
|
||||||
import AvailabilityStatusBadge from '../widgets/conversation/AvailabilityStatusBadge';
|
import AvailabilityStatusBadge from '../widgets/conversation/AvailabilityStatusBadge';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
|
|
||||||
const { AVAILABILITY_STATUS_KEYS } = wootConstants;
|
const { AVAILABILITY_STATUS_KEYS } = wootConstants;
|
||||||
|
|
||||||
|
|||||||
@ -41,7 +41,7 @@ import PrimaryNavItem from './PrimaryNavItem';
|
|||||||
import OptionsMenu from './OptionsMenu';
|
import OptionsMenu from './OptionsMenu';
|
||||||
import AgentDetails from './AgentDetails';
|
import AgentDetails from './AgentDetails';
|
||||||
import NotificationBell from './NotificationBell';
|
import NotificationBell from './NotificationBell';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import { frontendURL } from 'dashboard/helper/URLHelper';
|
import { frontendURL } from 'dashboard/helper/URLHelper';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
</woot-tabs>
|
</woot-tabs>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import wootConstants from '../../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import eventListenerMixins from 'shared/mixins/eventListenerMixins';
|
import eventListenerMixins from 'shared/mixins/eventListenerMixins';
|
||||||
import { hasPressedAltAndNKey } from 'shared/helpers/KeyboardHelpers';
|
import { hasPressedAltAndNKey } from 'shared/helpers/KeyboardHelpers';
|
||||||
|
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import wootConstants from '../../../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import eventListenerMixins from 'shared/mixins/eventListenerMixins';
|
import eventListenerMixins from 'shared/mixins/eventListenerMixins';
|
||||||
import { hasPressedAltAndBKey } from 'shared/helpers/KeyboardHelpers';
|
import { hasPressedAltAndBKey } from 'shared/helpers/KeyboardHelpers';
|
||||||
|
|
||||||
|
|||||||
@ -63,7 +63,7 @@ import inboxMixin from 'shared/mixins/inboxMixin';
|
|||||||
import InboxName from '../InboxName';
|
import InboxName from '../InboxName';
|
||||||
import MoreActions from './MoreActions';
|
import MoreActions from './MoreActions';
|
||||||
import Thumbnail from '../Thumbnail';
|
import Thumbnail from '../Thumbnail';
|
||||||
import wootConstants from '../../../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import { conversationListPageURL } from 'dashboard/helper/URLHelper';
|
import { conversationListPageURL } from 'dashboard/helper/URLHelper';
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
|
|||||||
@ -174,9 +174,10 @@ import inboxMixin from 'shared/mixins/inboxMixin';
|
|||||||
import uiSettingsMixin from 'dashboard/mixins/uiSettings';
|
import uiSettingsMixin from 'dashboard/mixins/uiSettings';
|
||||||
import { DirectUpload } from 'activestorage';
|
import { DirectUpload } from 'activestorage';
|
||||||
import { frontendURL } from '../../../helper/URLHelper';
|
import { frontendURL } from '../../../helper/URLHelper';
|
||||||
import { LocalStorage, LOCAL_STORAGE_KEYS } from '../../../helper/localStorage';
|
import { LOCAL_STORAGE_KEYS } from 'dashboard/constants/localStorage';
|
||||||
|
import { LocalStorage } from 'shared/helpers/localStorage';
|
||||||
import { trimContent, debounce } from '@chatwoot/utils';
|
import { trimContent, debounce } from '@chatwoot/utils';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import { isEditorHotKeyEnabled } from 'dashboard/mixins/uiSettings';
|
import { isEditorHotKeyEnabled } from 'dashboard/mixins/uiSettings';
|
||||||
import { CONVERSATION_EVENTS } from '../../../helper/AnalyticsHelper/events';
|
import { CONVERSATION_EVENTS } from '../../../helper/AnalyticsHelper/events';
|
||||||
import rtlMixin from 'shared/mixins/rtlMixin';
|
import rtlMixin from 'shared/mixins/rtlMixin';
|
||||||
|
|||||||
@ -69,7 +69,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import MenuItem from './menuItem.vue';
|
import MenuItem from './menuItem.vue';
|
||||||
import MenuItemWithSubmenu from './menuItemWithSubmenu.vue';
|
import MenuItemWithSubmenu from './menuItemWithSubmenu.vue';
|
||||||
import wootConstants from 'dashboard/constants.js';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import snoozeTimesMixin from 'dashboard/mixins/conversation/snoozeTimesMixin';
|
import snoozeTimesMixin from 'dashboard/mixins/conversation/snoozeTimesMixin';
|
||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import AgentLoadingPlaceholder from './agentLoadingPlaceholder.vue';
|
import AgentLoadingPlaceholder from './agentLoadingPlaceholder.vue';
|
||||||
|
|||||||
5
app/javascript/dashboard/constants/localStorage.js
Normal file
5
app/javascript/dashboard/constants/localStorage.js
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
export const LOCAL_STORAGE_KEYS = {
|
||||||
|
DISMISSED_UPDATES: 'dismissedUpdates',
|
||||||
|
WIDGET_BUILDER: 'widgetBubble_',
|
||||||
|
DRAFT_MESSAGES: 'draftMessages',
|
||||||
|
};
|
||||||
@ -1,4 +1,4 @@
|
|||||||
import { DEFAULT_REDIRECT_URL } from '../constants';
|
import { DEFAULT_REDIRECT_URL } from 'dashboard/constants/globals';
|
||||||
|
|
||||||
export const frontendURL = (path, params) => {
|
export const frontendURL = (path, params) => {
|
||||||
const stringifiedParams = params ? `?${new URLSearchParams(params)}` : '';
|
const stringifiedParams = params ? `?${new URLSearchParams(params)}` : '';
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import LoadingState from '../../components/widgets/LoadingState';
|
import LoadingState from '../../components/widgets/LoadingState';
|
||||||
import Auth from '../../api/auth';
|
import Auth from '../../api/auth';
|
||||||
import { DEFAULT_REDIRECT_URL } from '../../constants';
|
import { DEFAULT_REDIRECT_URL } from 'dashboard/constants/globals';
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
LoadingState,
|
LoadingState,
|
||||||
|
|||||||
@ -49,7 +49,7 @@ import { required, minLength } from 'vuelidate/lib/validators';
|
|||||||
import Auth from '../../api/auth';
|
import Auth from '../../api/auth';
|
||||||
|
|
||||||
import WootSubmitButton from '../../components/buttons/FormSubmitButton';
|
import WootSubmitButton from '../../components/buttons/FormSubmitButton';
|
||||||
import { DEFAULT_REDIRECT_URL } from '../../constants';
|
import { DEFAULT_REDIRECT_URL } from 'dashboard/constants/globals';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
|
|||||||
@ -82,7 +82,7 @@ import Auth from '../../../../api/auth';
|
|||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import globalConfigMixin from 'shared/mixins/globalConfigMixin';
|
import globalConfigMixin from 'shared/mixins/globalConfigMixin';
|
||||||
import alertMixin from 'shared/mixins/alertMixin';
|
import alertMixin from 'shared/mixins/alertMixin';
|
||||||
import { DEFAULT_REDIRECT_URL } from '../../../../constants';
|
import { DEFAULT_REDIRECT_URL } from 'dashboard/constants/globals';
|
||||||
import VueHcaptcha from '@hcaptcha/vue-hcaptcha';
|
import VueHcaptcha from '@hcaptcha/vue-hcaptcha';
|
||||||
import AuthInput from '../AuthInput.vue';
|
import AuthInput from '../AuthInput.vue';
|
||||||
import AuthSubmitButton from '../AuthSubmitButton.vue';
|
import AuthSubmitButton from '../AuthSubmitButton.vue';
|
||||||
|
|||||||
@ -47,7 +47,7 @@ import AccountSelector from 'dashboard/components/layout/sidebarComponents/Accou
|
|||||||
import AddLabelModal from 'dashboard/routes/dashboard/settings/labels/AddLabel';
|
import AddLabelModal from 'dashboard/routes/dashboard/settings/labels/AddLabel';
|
||||||
import NotificationPanel from 'dashboard/routes/dashboard/notifications/components/NotificationPanel';
|
import NotificationPanel from 'dashboard/routes/dashboard/notifications/components/NotificationPanel';
|
||||||
import uiSettingsMixin from 'dashboard/mixins/uiSettings';
|
import uiSettingsMixin from 'dashboard/mixins/uiSettings';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { mapGetters } from 'vuex';
|
import { mapGetters } from 'vuex';
|
||||||
import wootConstants from '../../../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import {
|
import {
|
||||||
CMD_MUTE_CONVERSATION,
|
CMD_MUTE_CONVERSATION,
|
||||||
CMD_REOPEN_CONVERSATION,
|
CMD_REOPEN_CONVERSATION,
|
||||||
|
|||||||
@ -32,7 +32,7 @@ import ConversationBox from '../../../components/widgets/conversation/Conversati
|
|||||||
import PopOverSearch from './search/PopOverSearch';
|
import PopOverSearch from './search/PopOverSearch';
|
||||||
import uiSettingsMixin from 'dashboard/mixins/uiSettings';
|
import uiSettingsMixin from 'dashboard/mixins/uiSettings';
|
||||||
import { BUS_EVENTS } from 'shared/constants/busEvents';
|
import { BUS_EVENTS } from 'shared/constants/busEvents';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
|
|||||||
@ -107,7 +107,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import alertMixin from 'shared/mixins/alertMixin';
|
import alertMixin from 'shared/mixins/alertMixin';
|
||||||
import { mixin as clickaway } from 'vue-clickaway';
|
import { mixin as clickaway } from 'vue-clickaway';
|
||||||
import wootConstants from 'dashboard/constants.js';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import { PORTALS_EVENTS } from '../../../../../helper/AnalyticsHelper/events';
|
import { PORTALS_EVENTS } from '../../../../../helper/AnalyticsHelper/events';
|
||||||
|
|
||||||
const { ARTICLE_STATUS_TYPES } = wootConstants;
|
const { ARTICLE_STATUS_TYPES } = wootConstants;
|
||||||
|
|||||||
@ -51,7 +51,7 @@ import ArticleSettings from './ArticleSettings';
|
|||||||
import Spinner from 'shared/components/Spinner';
|
import Spinner from 'shared/components/Spinner';
|
||||||
import portalMixin from '../../mixins/portalMixin';
|
import portalMixin from '../../mixins/portalMixin';
|
||||||
import alertMixin from 'shared/mixins/alertMixin';
|
import alertMixin from 'shared/mixins/alertMixin';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import { buildPortalArticleURL } from 'dashboard/helper/portalHelper';
|
import { buildPortalArticleURL } from 'dashboard/helper/portalHelper';
|
||||||
import { PORTALS_EVENTS } from '../../../../../helper/AnalyticsHelper/events';
|
import { PORTALS_EVENTS } from '../../../../../helper/AnalyticsHelper/events';
|
||||||
|
|
||||||
|
|||||||
@ -82,7 +82,7 @@ import { mapGetters } from 'vuex';
|
|||||||
import WootSubmitButton from '../../../../components/buttons/FormSubmitButton';
|
import WootSubmitButton from '../../../../components/buttons/FormSubmitButton';
|
||||||
import Modal from '../../../../components/Modal';
|
import Modal from '../../../../components/Modal';
|
||||||
import Auth from '../../../../api/auth';
|
import Auth from '../../../../api/auth';
|
||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
|
|
||||||
const { AVAILABILITY_STATUS_KEYS } = wootConstants;
|
const { AVAILABILITY_STATUS_KEYS } = wootConstants;
|
||||||
|
|
||||||
|
|||||||
@ -158,10 +158,8 @@ import Widget from 'dashboard/modules/widget-preview/components/Widget';
|
|||||||
import InputRadioGroup from './components/InputRadioGroup';
|
import InputRadioGroup from './components/InputRadioGroup';
|
||||||
import alertMixin from 'shared/mixins/alertMixin';
|
import alertMixin from 'shared/mixins/alertMixin';
|
||||||
import { required } from 'vuelidate/lib/validators';
|
import { required } from 'vuelidate/lib/validators';
|
||||||
import {
|
import { LOCAL_STORAGE_KEYS } from 'dashboard/constants/localStorage';
|
||||||
LocalStorage,
|
import { LocalStorage } from 'shared/helpers/localStorage';
|
||||||
LOCAL_STORAGE_KEYS,
|
|
||||||
} from 'dashboard/helper/localStorage';
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
|
|||||||
@ -3,7 +3,7 @@ import types from '../../mutation-types';
|
|||||||
import getters, { getSelectedChatConversation } from './getters';
|
import getters, { getSelectedChatConversation } from './getters';
|
||||||
import actions from './actions';
|
import actions from './actions';
|
||||||
import { findPendingMessageIndex } from './helpers';
|
import { findPendingMessageIndex } from './helpers';
|
||||||
import wootConstants from '../../../constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
import { BUS_EVENTS } from '../../../../shared/constants/busEvents';
|
import { BUS_EVENTS } from '../../../../shared/constants/busEvents';
|
||||||
|
|
||||||
const state = {
|
const state = {
|
||||||
|
|||||||
@ -7,7 +7,8 @@ import {
|
|||||||
CHATWOOT_RESET,
|
CHATWOOT_RESET,
|
||||||
CHATWOOT_SET_USER,
|
CHATWOOT_SET_USER,
|
||||||
} from '../../helper/scriptHelpers';
|
} from '../../helper/scriptHelpers';
|
||||||
import { LocalStorage, LOCAL_STORAGE_KEYS } from '../../helper/localStorage';
|
import { LOCAL_STORAGE_KEYS } from 'dashboard/constants/localStorage';
|
||||||
|
import { LocalStorage } from 'shared/helpers/localStorage';
|
||||||
|
|
||||||
Cookies.defaults = { sameSite: 'Lax' };
|
Cookies.defaults = { sameSite: 'Lax' };
|
||||||
|
|
||||||
|
|||||||
@ -18,7 +18,7 @@ import createAxios from '../dashboard/helper/APIHelper';
|
|||||||
import commonHelpers, { isJSONValid } from '../dashboard/helper/commons';
|
import commonHelpers, { isJSONValid } from '../dashboard/helper/commons';
|
||||||
import router, { initalizeRouter } from '../dashboard/routes';
|
import router, { initalizeRouter } from '../dashboard/routes';
|
||||||
import store from '../dashboard/store';
|
import store from '../dashboard/store';
|
||||||
import constants from '../dashboard/constants';
|
import constants from 'dashboard/constants/globals';
|
||||||
import * as Sentry from '@sentry/vue';
|
import * as Sentry from '@sentry/vue';
|
||||||
import 'vue-easytable/libs/theme-default/index.css';
|
import 'vue-easytable/libs/theme-default/index.css';
|
||||||
import { Integrations } from '@sentry/tracing';
|
import { Integrations } from '@sentry/tracing';
|
||||||
|
|||||||
@ -1,9 +1,3 @@
|
|||||||
export const LOCAL_STORAGE_KEYS = {
|
|
||||||
DISMISSED_UPDATES: 'dismissedUpdates',
|
|
||||||
WIDGET_BUILDER: 'widgetBubble_',
|
|
||||||
DRAFT_MESSAGES: 'draftMessages',
|
|
||||||
};
|
|
||||||
|
|
||||||
export const LocalStorage = {
|
export const LocalStorage = {
|
||||||
clearAll() {
|
clearAll() {
|
||||||
window.localStorage.clear();
|
window.localStorage.clear();
|
||||||
@ -1,4 +1,4 @@
|
|||||||
import wootConstants from 'dashboard/constants';
|
import wootConstants from 'dashboard/constants/globals';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user