Add MemberUiPreference entity for per-member UI prefs
Generic per-member UI preference store (memberId, prefKey, JSONB value) for small persisted UI settings. First consumer is the hex-head popover size selector.
Complete next-intl for System Diagnostics
Wire remaining MySQL, Redis, statistics, request, and accordion UI copy to components.settings.diagnostics keys; use locale-aware time and translated heap badge...
Revert "feat(billing): wire FeaturesManager to platform subscription for child-org gating"
This reverts commit ****************
Revert "feat(billing): add platform-subscription endpoint for cross-org feature gating"
This reverts commit ****************
Wire FeaturesManager to platform subscription for child-org gating
FeaturesManager was calling legacy **************** which throws (ungated fallback) instead of reading the real platform subscription. Now calls **************...
Add platform-subscription endpoint for cross-org feature gating
Child-org admins (like GNosia's owner Daniel) have their COMP subscription orders on the root KamoCRM org, not on their own org. FeaturesManager was querying t...
Legacy getCurrentSubscription stub must throw, not return null
Returning null made FeaturesManager treat every org as having no subscription (billingLoaded=true, hasSubscription=false), locking all feature toggles behind an...
Use translated aria-label for SettingsView tabs
Reads **************** from next-intl.
Ambient json modules for gitignored messages/*.json imports
`tsc` and the IDE resolve `messages/` JSON after merge without requiring committed files under messages/. Extend include for types/**/*.d.ts.
I18n for legacy hub content/sidebar via settingsLegacyHub
Replace hard-coded English with next-intl. Introduces stable topic id constants; activeTopic is compared against ids instead of translated display strings.
Scope SettingsSearchBar to components.settings namespace
Use **************** with searchBar.* keys instead of global t() with full dotted paths.
Wire landing page to settingsLanding translations
Replace hardcoded feature cards and section copy with useTranslations- backed strings from **************** including ICU branch label for branch types cards. C...
Move account settings help panels to message keys
Replace all hardcoded help copy on the organization account page with scoped useTranslations keys. Extend i18n-audit to report files missing translation hooks f...
Wire organization account hero and tabs to i18n keys
Use **************** strings for SettingsView title, subtitle, and tab labels so the UI shows translated copy instead of raw placeholders left in dictionary ove...
Move translations to kamo-translation-dictionary
All 22 locale files move to the centralized kamo-translation-dictionary repo. The CI now clones that repo and copies the kamo-marketing/ folder into messages/ b...
Move translations to kamo-translation-dictionary
All 22 locale files move to the centralized kamo-translation-dictionary repo. The CI now clones that repo and copies the kamo-internal/ folder into messages/ be...
Wire MUI Tooltip titles through common.actions and common.tooltips
Replace literal single-line Tooltip title strings with tCommon("actions.*") or tCommon("tooltips.*"), merge keys into messages/en.json, and fix nested component...
Tooltip wave — AccountManager, ModernColorPicker, SMS tabs
Account grid View/Delete via common.actions; color picker and SMS tooltips via common.tooltips (pickColorFromScreen, resetToDefault, crmIntegrationComingSoon, e...
Tooltip wave — TeamMemberManager actions
Wire grid tooltips to **************** and common.tooltips.resetFilters. i18n: audit tooltip literals 217→209.
Je, unaona nini kuhusu usafiri?
Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.