Files
AtreidesAssetsFree/shared/guide.js
T
2026-10-29 11:57:29 +01:00

65 lines
3.6 KiB
JavaScript

// Generated, do not edit. sha256:26b76ae49e193597112630c3ad94ab2a26c04d90427102a41f017d09ef2fec9a
import { sharedText } from './i18n/index.js';
const TOKEN = /\{([A-Z][A-Z0-9_]*)\}|\{icon:([a-z][a-z0-9-]*)\}/g;
export const GUIDE_ICONS = Object.freeze(['adjust']);
export const GUIDE_FIGURES = Object.freeze(['stand-period', 'account-example', 'result-sum']);
export function splitPlaceTokens(text) {
const parts = [];
let last = 0;
for (const m of String(text).matchAll(TOKEN)) {
if (m.index > last) parts.push(text.slice(last, m.index));
parts.push(m[1] ? { place: m[1] } : { icon: m[2] });
last = m.index + m[0].length;
}
if (last < text.length) parts.push(text.slice(last));
return parts;
}
const section = (s) => Object.freeze({ place: null, related: [], ...s });
export const GUIDE_GROUPS = Object.freeze([
Object.freeze({ id: 'concepts',
sections: ['overview', 'bookings', 'anchors', 'free-value', 'returns', 'account-returns',
'two-balances'] }),
Object.freeze({ id: 'pages',
sections: ['actions', 'wealth', 'taxes', 'tracking', 'interest', 'price-history', 'charts',
'conversion'] }),
Object.freeze({ id: 'setup',
sections: ['dashboard', 'accounts', 'assets', 'price-sources', 'connections', 'lnd', 'ai', 'health', 'license',
'portfolios'] }),
]);
export const GUIDE_SECTIONS = Object.freeze([
section({ id: 'overview', related: ['bookings', 'two-balances', 'price-sources'] }),
section({ id: 'bookings', place: 'EVENT_ACCOUNTS', related: ['anchors', 'free-value', 'two-balances'] }),
section({ id: 'anchors', place: 'VALUATIONS', related: ['bookings', 'actions'] }),
section({ id: 'free-value', related: ['bookings', 'wealth'] }),
section({ id: 'returns', place: 'WEALTH', related: ['wealth', 'account-returns', 'free-value', 'taxes'] }),
section({ id: 'account-returns', place: 'WEALTH', related: ['returns', 'wealth', 'accounts'] }),
section({ id: 'two-balances', place: 'TRACKING', related: ['overview', 'tracking'] }),
section({ id: 'wealth', place: 'WEALTH', related: ['returns', 'account-returns', 'free-value', 'taxes'] }),
section({ id: 'taxes', place: 'TAXES', related: ['anchors', 'wealth'] }),
section({ id: 'actions', place: 'ACTIONS', related: ['anchors', 'two-balances'] }),
section({ id: 'price-sources', place: 'SOURCE_PROPOSALS', related: ['overview', 'price-history'] }),
section({ id: 'tracking', place: 'TRACKING', related: ['two-balances', 'connections', 'actions'] }),
section({ id: 'connections', place: 'CONNECTIONS', related: ['tracking', 'lnd', 'overview'] }),
section({ id: 'lnd', place: 'CONNECTIONS', related: ['connections'] }),
section({ id: 'ai', place: 'AI_ACTIVITY', related: ['actions'] }),
section({ id: 'interest', place: 'INTEREST', related: ['bookings', 'free-value', 'actions'] }),
section({ id: 'health', place: 'HEALTH', related: ['anchors', 'price-sources'] }),
section({ id: 'dashboard', place: 'HOME', related: ['overview'] }),
section({ id: 'price-history', place: 'PRICE_HISTORY', related: ['price-sources', 'health'] }),
section({ id: 'charts', place: 'CHARTS', related: ['price-history'] }),
section({ id: 'conversion', place: 'CONVERSION', related: ['charts'] }),
section({ id: 'assets', place: 'ASSETS', related: ['overview', 'price-sources'] }),
section({ id: 'accounts', place: 'ACCOUNTS', related: ['bookings', 'tracking', 'wealth', 'account-returns'] }),
section({ id: 'license', place: 'LICENSE', related: ['overview'] }),
section({ id: 'portfolios', place: 'PORTFOLIOS', related: ['overview'] }),
]);
export const guideText = (code) => sharedText(code).guide;