mirror of
https://github.com/lingble/chatwoot.git
synced 2025-10-30 18:47:51 +00:00
# Pull Request Template ## Description This PR will replace the usage of `configMixin` with the `useConfig` composable. **Files updated** 1. dashboard/components/layout/sidebarComponents/SecondaryNavItem.vue 2. dashboard/components/widgets/conversation/MessagesView.vue 3. dashboard/routes/dashboard/settings/inbox/Settings.vue **(Not used)** 4. dashboard/routes/dashboard/settings/inbox/FinishSetup.vue **(Not used)** 5. dashboard/routes/dashboard/settings/inbox/settingsPage/CollaboratorsPage.vue 6. dashboard/routes/dashboard/settings/profile/NotificationPreferences.vue **(Not used)** 7. dashboard/routes/dashboard/settings/profile/AudioNotifications.vue **(Not used)** 8. dashboard/routes/dashboard/settings/sla/Index.vue **(Not used)** 9. dashboard/routes/dashboard/settings/account/Index.vue 10. survey/views/Response.vue **(Not used)** Fixes https://linear.app/chatwoot/issue/CW-3464/rewrite-configmixin-mixin-to-a-composable ## Type of change - [x] New feature (non-breaking change which adds functionality) ## How Has This Been Tested? Test in the component related pages ## Checklist: - [x] My code follows the style guidelines of this project - [x] I have performed a self-review of my code - [x] I have commented on my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [x] I have added tests that prove my fix is effective or that my feature works - [x] New and existing unit tests pass locally with my changes - [ ] Any dependent changes have been merged and published in downstream modules
47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
/**
|
|
* A function that provides access to various configuration values.
|
|
* @returns {Object} An object containing configuration values.
|
|
*/
|
|
export function useConfig() {
|
|
const config = window.chatwootConfig || {};
|
|
|
|
/**
|
|
* The host URL of the Chatwoot instance.
|
|
* @type {string|undefined}
|
|
*/
|
|
const hostURL = config.hostURL;
|
|
|
|
/**
|
|
* The VAPID public key for web push notifications.
|
|
* @type {string|undefined}
|
|
*/
|
|
const vapidPublicKey = config.vapidPublicKey;
|
|
|
|
/**
|
|
* An array of enabled languages in the Chatwoot instance.
|
|
* @type {string[]|undefined}
|
|
*/
|
|
const enabledLanguages = config.enabledLanguages;
|
|
|
|
/**
|
|
* Indicates whether the current instance is an enterprise version.
|
|
* @type {boolean}
|
|
*/
|
|
const isEnterprise = config.isEnterprise === 'true';
|
|
|
|
/**
|
|
* The name of the enterprise plan, if applicable.
|
|
* Returns "community" or "enterprise"
|
|
* @type {string|undefined}
|
|
*/
|
|
const enterprisePlanName = config.enterprisePlanName;
|
|
|
|
return {
|
|
hostURL,
|
|
vapidPublicKey,
|
|
enabledLanguages,
|
|
isEnterprise,
|
|
enterprisePlanName,
|
|
};
|
|
}
|