diff --git a/packages/desktop-client/src/components/manager/ConfigServer.js b/packages/desktop-client/src/components/manager/ConfigServer.js index d00f0e5636c2bf6c2afb554439856a97639032d7..30afb69c229128d615bd8dcbc1c50bf381245be6 100644 --- a/packages/desktop-client/src/components/manager/ConfigServer.js +++ b/packages/desktop-client/src/components/manager/ConfigServer.js @@ -12,10 +12,7 @@ import { } from 'loot-design/src/components/common'; import { useSetThemeColor } from 'loot-design/src/components/hooks'; import { colors } from 'loot-design/src/style'; -import { - isDevelopmentEnvironment, - isPreviewEnvironment, -} from 'loot-design/src/util/environment'; +import { isNonProductionEnvironment } from 'loot-design/src/util/environment'; import { useServerURL, useSetServerURL } from '../ServerContext'; @@ -193,7 +190,7 @@ export default function ConfigServer() { Don't use a server </Button> - {(isDevelopmentEnvironment() || isPreviewEnvironment()) && ( + {isNonProductionEnvironment() && ( <Button primary style={{ marginLeft: 15 }} diff --git a/packages/desktop-client/src/components/modals/ManageRulesModal.js b/packages/desktop-client/src/components/modals/ManageRulesModal.js index 30d544f21780287db122ab7f6402d05ec6b475a8..5d10c35570ae0ad43cb1494bbfb0b725d194de51 100644 --- a/packages/desktop-client/src/components/modals/ManageRulesModal.js +++ b/packages/desktop-client/src/components/modals/ManageRulesModal.js @@ -2,17 +2,14 @@ import React, { useState } from 'react'; import { useLocation } from 'react-router-dom-v5-compat'; import { Modal } from 'loot-design/src/components/common'; -import { - isDevelopmentEnvironment, - isPreviewEnvironment, -} from 'loot-design/src/util/environment'; +import { isNonProductionEnvironment } from 'loot-design/src/util/environment'; import ManageRules from '../ManageRules'; export default function ManageRulesModal({ modalProps, payeeId }) { let [loading, setLoading] = useState(true); let location = useLocation(); - if (isDevelopmentEnvironment() || isPreviewEnvironment()) { + if (isNonProductionEnvironment()) { if (location.pathname !== '/payees') { throw new Error( `Possibly invalid use of ManageRulesModal, add the current url '${location.pathname}' to the allowlist if you're confident the modal can never appear on top of the '/rules' page.`, diff --git a/packages/desktop-client/src/hooks/useFeatureFlag.js b/packages/desktop-client/src/hooks/useFeatureFlag.js index 27920fe18970b430a7c639838066068425233387..702de577ccfad7f9796ca9f6befedabb6c0a6e88 100644 --- a/packages/desktop-client/src/hooks/useFeatureFlag.js +++ b/packages/desktop-client/src/hooks/useFeatureFlag.js @@ -1,12 +1,9 @@ import { useSelector } from 'react-redux'; -import { - isDevelopmentEnvironment, - isPreviewEnvironment, -} from 'loot-design/src/util/environment'; +import { isNonProductionEnvironment } from 'loot-design/src/util/environment'; const DEFAULT_FEATURE_FLAG_STATE = { - newAutocomplete: isDevelopmentEnvironment() || isPreviewEnvironment(), + newAutocomplete: isNonProductionEnvironment(), syncAccount: false, goalTemplatesEnabled: false, }; diff --git a/packages/loot-core/src/server/main.js b/packages/loot-core/src/server/main.js index 38f87ab22db54d730b240fb02ff9cbb2342c34f1..d81348c105ba442101a19a84b17ba8cd7518bbfd 100644 --- a/packages/loot-core/src/server/main.js +++ b/packages/loot-core/src/server/main.js @@ -1,6 +1,8 @@ import './polyfills'; import injectAPI from '@actual-app/api/injected'; +import { isNonProductionEnvironment } from 'loot-design/src/util/environment'; + import { createTestBudget } from '../mocks/budget'; import { captureException, captureBreadcrumb } from '../platform/exceptions'; import asyncStorage from '../platform/server/asyncStorage'; @@ -1265,7 +1267,7 @@ handlers['nordigen-get-banks'] = async function (country) { return post( getServer().NORDIGEN_SERVER + '/get-banks', - { country }, + { country, showDemo: isNonProductionEnvironment() }, { 'X-ACTUAL-TOKEN': userToken, }, diff --git a/packages/loot-design/src/components/manager/BudgetList.js b/packages/loot-design/src/components/manager/BudgetList.js index 5688dd5aac6e7cd6122c0bc3330cbd25d567c734..bf9b6bd5268bd7161bd4a6e5ff9f235e13cc9206 100644 --- a/packages/loot-design/src/components/manager/BudgetList.js +++ b/packages/loot-design/src/components/manager/BudgetList.js @@ -13,10 +13,7 @@ import DotsHorizontalTriple from '../../svg/v1/DotsHorizontalTriple'; import FileDouble from '../../svg/v1/FileDouble'; import CloudUnknown from '../../svg/v2/CloudUnknown'; import tokens from '../../tokens'; -import { - isDevelopmentEnvironment, - isPreviewEnvironment, -} from '../../util/environment'; +import { isNonProductionEnvironment } from '../../util/environment'; import { View, Text, Button, Tooltip, Menu } from '../common'; function getFileDescription(file) { @@ -331,7 +328,7 @@ function BudgetList({ Create new file </Button> - {(isDevelopmentEnvironment() || isPreviewEnvironment()) && ( + {isNonProductionEnvironment() && ( <Button primary onClick={() => onCreate({ testMode: true })} diff --git a/packages/loot-design/src/util/environment.js b/packages/loot-design/src/util/environment.js index 151942d90a4b1c5d67149b22bef85d55e5a07c73..42fa7be752d4ec598a51d110654ac7a0c8e89d2f 100644 --- a/packages/loot-design/src/util/environment.js +++ b/packages/loot-design/src/util/environment.js @@ -5,3 +5,7 @@ export function isPreviewEnvironment() { export function isDevelopmentEnvironment() { return process.env.NODE_ENV === 'development'; } + +export function isNonProductionEnvironment() { + return isPreviewEnvironment() || isDevelopmentEnvironment(); +} diff --git a/upcoming-release-notes/790.md b/upcoming-release-notes/790.md new file mode 100644 index 0000000000000000000000000000000000000000..8e12cdbd9a6b210c9c1c34003eb9145f9b237fa8 --- /dev/null +++ b/upcoming-release-notes/790.md @@ -0,0 +1,6 @@ +--- +category: Maintenance +authors: [MatissJanis] +--- + +Expose demo bank for easy bank-sync testing in dev and preview builds