@actuate-media/cms-admin 0.35.0 → 0.36.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/__tests__/views/ai-settings.render.test.js +22 -0
  2. package/dist/__tests__/views/ai-settings.render.test.js.map +1 -1
  3. package/dist/actuate-admin.css +1 -1
  4. package/dist/views/ApiKeys.d.ts.map +1 -1
  5. package/dist/views/ApiKeys.js +14 -13
  6. package/dist/views/ApiKeys.js.map +1 -1
  7. package/dist/views/Profile.d.ts.map +1 -1
  8. package/dist/views/Profile.js +1 -1
  9. package/dist/views/Profile.js.map +1 -1
  10. package/dist/views/Settings.d.ts.map +1 -1
  11. package/dist/views/Settings.js +25 -20
  12. package/dist/views/Settings.js.map +1 -1
  13. package/dist/views/Users.js +1 -1
  14. package/dist/views/Users.js.map +1 -1
  15. package/dist/views/settings/AISettingsTab.d.ts.map +1 -1
  16. package/dist/views/settings/AISettingsTab.js +42 -43
  17. package/dist/views/settings/AISettingsTab.js.map +1 -1
  18. package/dist/views/settings/AiFeaturesCard.d.ts.map +1 -1
  19. package/dist/views/settings/AiFeaturesCard.js +2 -3
  20. package/dist/views/settings/AiFeaturesCard.js.map +1 -1
  21. package/dist/views/settings/BrandVoiceCard.d.ts +12 -0
  22. package/dist/views/settings/BrandVoiceCard.d.ts.map +1 -0
  23. package/dist/views/settings/BrandVoiceCard.js +25 -0
  24. package/dist/views/settings/BrandVoiceCard.js.map +1 -0
  25. package/dist/views/settings/GeneralSettingsTab.js +1 -1
  26. package/dist/views/settings/LanguageRegionCard.d.ts.map +1 -1
  27. package/dist/views/settings/LanguageRegionCard.js +2 -1
  28. package/dist/views/settings/LanguageRegionCard.js.map +1 -1
  29. package/dist/views/settings/MonthlyUsageCard.d.ts.map +1 -1
  30. package/dist/views/settings/MonthlyUsageCard.js +3 -3
  31. package/dist/views/settings/MonthlyUsageCard.js.map +1 -1
  32. package/dist/views/settings/ProviderConnectionCard.js +1 -1
  33. package/dist/views/settings/ProviderConnectionCard.js.map +1 -1
  34. package/dist/views/settings/SecurityStatusCard.d.ts.map +1 -1
  35. package/dist/views/settings/SecurityStatusCard.js +2 -3
  36. package/dist/views/settings/SecurityStatusCard.js.map +1 -1
  37. package/dist/views/settings/SecurityTab.js +1 -1
  38. package/dist/views/settings/SeoRobotsDefaultsCard.d.ts.map +1 -1
  39. package/dist/views/settings/SeoRobotsDefaultsCard.js +3 -4
  40. package/dist/views/settings/SeoRobotsDefaultsCard.js.map +1 -1
  41. package/dist/views/settings/SeoSettingsTab.d.ts.map +1 -1
  42. package/dist/views/settings/SeoSettingsTab.js +5 -8
  43. package/dist/views/settings/SeoSettingsTab.js.map +1 -1
  44. package/dist/views/settings/SiteIndexStatusCard.d.ts.map +1 -1
  45. package/dist/views/settings/SiteIndexStatusCard.js +3 -2
  46. package/dist/views/settings/SiteIndexStatusCard.js.map +1 -1
  47. package/dist/views/settings/SiteInformationCard.d.ts.map +1 -1
  48. package/dist/views/settings/SiteInformationCard.js +4 -4
  49. package/dist/views/settings/SiteInformationCard.js.map +1 -1
  50. package/dist/views/settings/components.d.ts +31 -1
  51. package/dist/views/settings/components.d.ts.map +1 -1
  52. package/dist/views/settings/components.js +22 -0
  53. package/dist/views/settings/components.js.map +1 -1
  54. package/dist/views/settings/securityPrimitives.d.ts +11 -3
  55. package/dist/views/settings/securityPrimitives.d.ts.map +1 -1
  56. package/dist/views/settings/securityPrimitives.js +10 -3
  57. package/dist/views/settings/securityPrimitives.js.map +1 -1
  58. package/dist/views/settings/useAiSettings.d.ts +12 -0
  59. package/dist/views/settings/useAiSettings.d.ts.map +1 -1
  60. package/dist/views/settings/useAiSettings.js +51 -0
  61. package/dist/views/settings/useAiSettings.js.map +1 -1
  62. package/package.json +3 -3
  63. package/src/__tests__/views/ai-settings.render.test.tsx +36 -0
  64. package/src/views/ApiKeys.tsx +190 -154
  65. package/src/views/Profile.tsx +4 -2
  66. package/src/views/Settings.tsx +154 -143
  67. package/src/views/Users.tsx +1 -1
  68. package/src/views/settings/AISettingsTab.tsx +66 -76
  69. package/src/views/settings/AiFeaturesCard.tsx +6 -12
  70. package/src/views/settings/BrandVoiceCard.tsx +139 -0
  71. package/src/views/settings/GeneralSettingsTab.tsx +1 -1
  72. package/src/views/settings/LanguageRegionCard.tsx +5 -7
  73. package/src/views/settings/MonthlyUsageCard.tsx +6 -10
  74. package/src/views/settings/ProviderConnectionCard.tsx +1 -1
  75. package/src/views/settings/SecurityStatusCard.tsx +8 -11
  76. package/src/views/settings/SecurityTab.tsx +1 -1
  77. package/src/views/settings/SeoRobotsDefaultsCard.tsx +7 -14
  78. package/src/views/settings/SeoSettingsTab.tsx +17 -26
  79. package/src/views/settings/SiteIndexStatusCard.tsx +10 -22
  80. package/src/views/settings/SiteInformationCard.tsx +3 -9
  81. package/src/views/settings/components.tsx +72 -1
  82. package/src/views/settings/securityPrimitives.tsx +14 -9
  83. package/src/views/settings/useAiSettings.ts +76 -0
@@ -11,11 +11,19 @@ export declare function StatusRow({ status, label, value, badge, }: {
11
11
  value?: ReactNode;
12
12
  badge?: ReactNode;
13
13
  }): import("react/jsx-runtime").JSX.Element;
14
- /** Section wrapper matching the other settings cards. */
15
- export declare function SecurityCard({ headingId, title, description, children, }: {
16
- headingId: string;
14
+ /**
15
+ * Section wrapper for the Security tab. Delegates to the shared
16
+ * {@link SettingsCard} so Security matches the canonical Settings design
17
+ * language (p-6, text-lg title, muted description). `headingId` is accepted
18
+ * for backward compatibility but ignored — {@link SettingsCard} generates and
19
+ * wires its own accessible heading id.
20
+ */
21
+ export declare function SecurityCard({ title, description, actions, children, }: {
22
+ /** @deprecated No longer used; SettingsCard manages the heading id. */
23
+ headingId?: string;
17
24
  title: string;
18
25
  description: string;
26
+ actions?: ReactNode;
19
27
  children: ReactNode;
20
28
  }): import("react/jsx-runtime").JSX.Element;
21
29
  //# sourceMappingURL=securityPrimitives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"securityPrimitives.d.ts","sourceRoot":"","sources":["../../../src/views/settings/securityPrimitives.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AAE1E,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,2CAW5D;AASD,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,GACN,EAAE;IACD,MAAM,EAAE,WAAW,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB,2CAaA;AAED,yDAAyD;AACzD,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,KAAK,EACL,WAAW,EACX,QAAQ,GACT,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,SAAS,CAAA;CACpB,2CAUA"}
1
+ {"version":3,"file":"securityPrimitives.d.ts","sourceRoot":"","sources":["../../../src/views/settings/securityPrimitives.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AAG1E,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,2CAW5D;AASD,kEAAkE;AAClE,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,GACN,EAAE;IACD,MAAM,EAAE,WAAW,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB,2CAaA;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GACT,EAAE;IACD,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,QAAQ,EAAE,SAAS,CAAA;CACpB,2CAMA"}
@@ -1,6 +1,7 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { AlertTriangle, Check, CircleHelp, X } from 'lucide-react';
4
+ import { SettingsCard } from './components.js';
4
5
  /** Small status icon used in check/summary rows. Text label always accompanies it. */
5
6
  export function CheckIcon({ status }) {
6
7
  switch (status) {
@@ -24,8 +25,14 @@ const STATUS_WORD = {
24
25
  export function StatusRow({ status, label, value, badge, }) {
25
26
  return (_jsxs("div", { className: "flex items-center justify-between gap-3 py-1.5 text-sm", children: [_jsxs("span", { className: "flex items-center gap-2", children: [_jsx(CheckIcon, { status: status }), _jsxs("span", { className: "sr-only", children: [STATUS_WORD[status], ": "] }), _jsx("span", { className: "text-foreground", children: label }), badge] }), value !== undefined && _jsx("span", { className: "text-muted-foreground text-right", children: value })] }));
26
27
  }
27
- /** Section wrapper matching the other settings cards. */
28
- export function SecurityCard({ headingId, title, description, children, }) {
29
- return (_jsxs("section", { "aria-labelledby": headingId, className: "border-border bg-card rounded-lg border p-4", children: [_jsx("h3", { id: headingId, className: "text-foreground mb-1 text-base font-medium", children: title }), _jsx("p", { className: "text-muted-foreground mb-4 text-sm", children: description }), children] }));
28
+ /**
29
+ * Section wrapper for the Security tab. Delegates to the shared
30
+ * {@link SettingsCard} so Security matches the canonical Settings design
31
+ * language (p-6, text-lg title, muted description). `headingId` is accepted
32
+ * for backward compatibility but ignored — {@link SettingsCard} generates and
33
+ * wires its own accessible heading id.
34
+ */
35
+ export function SecurityCard({ title, description, actions, children, }) {
36
+ return (_jsx(SettingsCard, { title: title, description: description, actions: actions, children: children }));
30
37
  }
31
38
  //# sourceMappingURL=securityPrimitives.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"securityPrimitives.js","sourceRoot":"","sources":["../../../src/views/settings/securityPrimitives.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,cAAc,CAAA;AAIlE,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAC,EAAE,MAAM,EAA2B;IAC3D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,uBAAuB,iBAAa,MAAM,GAAG,CAAA;QACjF,KAAK,SAAS;YACZ,OAAO,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,uBAAuB,iBAAa,MAAM,GAAG,CAAA;QACzF,KAAK,MAAM;YACT,OAAO,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,2BAA2B,iBAAa,MAAM,GAAG,CAAA;QACjF;YACE,OAAO,KAAC,UAAU,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,gCAAgC,iBAAa,MAAM,GAAG,CAAA;IACjG,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAgC;IAC/C,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;CACnB,CAAA;AAED,kEAAkE;AAClE,MAAM,UAAU,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,GAMN;IACC,OAAO,CACL,eAAK,SAAS,EAAC,wDAAwD,aACrE,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,GAAI,EAE7B,gBAAM,SAAS,EAAC,SAAS,aAAE,WAAW,CAAC,MAAM,CAAC,UAAU,EACxD,eAAM,SAAS,EAAC,iBAAiB,YAAE,KAAK,GAAQ,EAC/C,KAAK,IACD,EACN,KAAK,KAAK,SAAS,IAAI,eAAM,SAAS,EAAC,kCAAkC,YAAE,KAAK,GAAQ,IACrF,CACP,CAAA;AACH,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,YAAY,CAAC,EAC3B,SAAS,EACT,KAAK,EACL,WAAW,EACX,QAAQ,GAMT;IACC,OAAO,CACL,sCAA0B,SAAS,EAAE,SAAS,EAAC,6CAA6C,aAC1F,aAAI,EAAE,EAAE,SAAS,EAAE,SAAS,EAAC,4CAA4C,YACtE,KAAK,GACH,EACL,YAAG,SAAS,EAAC,oCAAoC,YAAE,WAAW,GAAK,EAClE,QAAQ,IACD,CACX,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"securityPrimitives.js","sourceRoot":"","sources":["../../../src/views/settings/securityPrimitives.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,cAAc,CAAA;AAGlE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAE9C,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAC,EAAE,MAAM,EAA2B;IAC3D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,KAAC,KAAK,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,uBAAuB,iBAAa,MAAM,GAAG,CAAA;QACjF,KAAK,SAAS;YACZ,OAAO,KAAC,aAAa,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,uBAAuB,iBAAa,MAAM,GAAG,CAAA;QACzF,KAAK,MAAM;YACT,OAAO,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,2BAA2B,iBAAa,MAAM,GAAG,CAAA;QACjF;YACE,OAAO,KAAC,UAAU,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,gCAAgC,iBAAa,MAAM,GAAG,CAAA;IACjG,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAgC;IAC/C,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;CACnB,CAAA;AAED,kEAAkE;AAClE,MAAM,UAAU,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,GAMN;IACC,OAAO,CACL,eAAK,SAAS,EAAC,wDAAwD,aACrE,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,GAAI,EAE7B,gBAAM,SAAS,EAAC,SAAS,aAAE,WAAW,CAAC,MAAM,CAAC,UAAU,EACxD,eAAM,SAAS,EAAC,iBAAiB,YAAE,KAAK,GAAQ,EAC/C,KAAK,IACD,EACN,KAAK,KAAK,SAAS,IAAI,eAAM,SAAS,EAAC,kCAAkC,YAAE,KAAK,GAAQ,IACrF,CACP,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,KAAK,EACL,WAAW,EACX,OAAO,EACP,QAAQ,GAQT;IACC,OAAO,CACL,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,YACnE,QAAQ,GACI,CAChB,CAAA;AACH,CAAC"}
@@ -76,12 +76,22 @@ export interface AiUsageView {
76
76
  periodEnd: string;
77
77
  runCount: number;
78
78
  }
79
+ /** Editable brand voice fields (the buffered Save-bar portion). */
80
+ export interface BrandVoiceForm {
81
+ enabled: boolean;
82
+ name: string;
83
+ tone: string;
84
+ audience: string;
85
+ guidelines: string;
86
+ sampleText: string;
87
+ }
79
88
  /** The buffered (Save-bar) portion of AI settings. */
80
89
  export interface AiSettingsForm {
81
90
  defaultProviderId: string;
82
91
  defaultModelId: string;
83
92
  features: AiFeatureView[];
84
93
  monthlyTokenLimit: string;
94
+ brandVoice: BrandVoiceForm;
85
95
  }
86
96
  type SaveState = 'idle' | 'saving' | 'success' | 'error';
87
97
  export interface ProviderInput {
@@ -108,6 +118,8 @@ export interface UseAiSettings {
108
118
  toggleFeature: (key: string, enabled: boolean) => void;
109
119
  /** Set a per-feature model override. Empty string reverts to the default model. */
110
120
  setFeatureModel: (key: string, modelId: string) => void;
121
+ /** Patch one or more brand voice fields. */
122
+ setBrandVoice: (patch: Partial<BrandVoiceForm>) => void;
111
123
  dirty: boolean;
112
124
  budgetError: string | null;
113
125
  saveState: SaveState;
@@ -1 +1 @@
1
- {"version":3,"file":"useAiSettings.d.ts","sourceRoot":"","sources":["../../../src/views/settings/useAiSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAiSettings.d.ts","sourceRoot":"","sources":["../../../src/views/settings/useAiSettings.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  'use client';
2
2
  import { useCallback, useEffect, useMemo, useState } from 'react';
3
3
  import { cmsApi } from '../../lib/api.js';
4
+ const EMPTY_BRAND_VOICE = {
5
+ enabled: false,
6
+ name: '',
7
+ tone: '',
8
+ audience: '',
9
+ guidelines: '',
10
+ sampleText: '',
11
+ };
4
12
  function formFromResponse(res) {
5
13
  return {
6
14
  defaultProviderId: res.settings.defaultProviderId ?? '',
@@ -13,6 +21,14 @@ function formFromResponse(res) {
13
21
  monthlyTokenLimit: typeof res.settings.budget.monthlyTokenLimit === 'number'
14
22
  ? String(res.settings.budget.monthlyTokenLimit)
15
23
  : '',
24
+ brandVoice: {
25
+ enabled: res.settings.brandVoice?.enabled ?? false,
26
+ name: res.settings.brandVoice?.name ?? '',
27
+ tone: res.settings.brandVoice?.tone ?? '',
28
+ audience: res.settings.brandVoice?.audience ?? '',
29
+ guidelines: res.settings.brandVoice?.guidelines ?? '',
30
+ sampleText: res.settings.brandVoice?.sampleText ?? '',
31
+ },
16
32
  };
17
33
  }
18
34
  const EMPTY_FORM = {
@@ -20,7 +36,17 @@ const EMPTY_FORM = {
20
36
  defaultModelId: '',
21
37
  features: [],
22
38
  monthlyTokenLimit: '',
39
+ brandVoice: { ...EMPTY_BRAND_VOICE },
23
40
  };
41
+ /** A brand voice with no content and disabled clears the stored profile (send null). */
42
+ function brandVoiceIsEmpty(bv) {
43
+ return (!bv.enabled &&
44
+ !bv.name.trim() &&
45
+ !bv.tone.trim() &&
46
+ !bv.audience.trim() &&
47
+ !bv.guidelines.trim() &&
48
+ !bv.sampleText.trim());
49
+ }
24
50
  export function useAiSettings(canEdit) {
25
51
  const [loading, setLoading] = useState(true);
26
52
  const [loadError, setLoadError] = useState(null);
@@ -105,6 +131,10 @@ export function useAiSettings(canEdit) {
105
131
  }));
106
132
  setSaveState('idle');
107
133
  }, []);
134
+ const setBrandVoice = useCallback((patch) => {
135
+ setForm((prev) => ({ ...prev, brandVoice: { ...prev.brandVoice, ...patch } }));
136
+ setSaveState('idle');
137
+ }, []);
108
138
  const budgetError = useMemo(() => {
109
139
  if (form.monthlyTokenLimit === '')
110
140
  return null;
@@ -122,6 +152,16 @@ export function useAiSettings(canEdit) {
122
152
  return true;
123
153
  if (form.features.length !== baseline.features.length)
124
154
  return true;
155
+ const bvKeys = [
156
+ 'enabled',
157
+ 'name',
158
+ 'tone',
159
+ 'audience',
160
+ 'guidelines',
161
+ 'sampleText',
162
+ ];
163
+ if (bvKeys.some((k) => form.brandVoice[k] !== baseline.brandVoice[k]))
164
+ return true;
125
165
  return form.features.some((f, i) => {
126
166
  const base = baseline.features[i];
127
167
  return f.enabled !== base?.enabled || (f.modelId ?? '') !== (base?.modelId ?? '');
@@ -146,6 +186,16 @@ export function useAiSettings(canEdit) {
146
186
  budget: {
147
187
  monthlyTokenLimit: form.monthlyTokenLimit === '' ? null : Number(form.monthlyTokenLimit),
148
188
  },
189
+ brandVoice: brandVoiceIsEmpty(form.brandVoice)
190
+ ? null
191
+ : {
192
+ enabled: form.brandVoice.enabled,
193
+ name: form.brandVoice.name,
194
+ tone: form.brandVoice.tone,
195
+ audience: form.brandVoice.audience,
196
+ guidelines: form.brandVoice.guidelines,
197
+ sampleText: form.brandVoice.sampleText,
198
+ },
149
199
  }),
150
200
  });
151
201
  if (res.error)
@@ -279,6 +329,7 @@ export function useAiSettings(canEdit) {
279
329
  setMonthlyTokenLimit,
280
330
  toggleFeature,
281
331
  setFeatureModel,
332
+ setBrandVoice,
282
333
  dirty,
283
334
  budgetError,
284
335
  saveState,
@@ -1 +1 @@
1
- {"version":3,"file":"useAiSettings.js","sourceRoot":"","sources":["../../../src/views/settings/useAiSettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAiSettings.js","sourceRoot":"","sources":["../../../src/views/settings/useAiSettings.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAsGzC,MAAM,iBAAiB,GAAmB;IACxC,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,EAAE;CACf,CAAA;AAgCD,SAAS,gBAAgB,CAAC,GAAuB;IAC/C,OAAO;QACL,iBAAiB,EAAE,GAAG,CAAC,QAAQ,CAAC,iBAAiB,IAAI,EAAE;QACvD,cAAc,EAAE,GAAG,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE;QACjD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1C,GAAG,CAAC;YACJ,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE;YACxB,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE;SAC/B,CAAC,CAAC;QACH,iBAAiB,EACf,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB,KAAK,QAAQ;YACvD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC;YAC/C,CAAC,CAAC,EAAE;QACR,UAAU,EAAE;YACV,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,IAAI,KAAK;YAClD,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE;YACzC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE;YACzC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,IAAI,EAAE;YACjD,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,IAAI,EAAE;YACrD,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,IAAI,EAAE;SACtD;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,GAAmB;IACjC,iBAAiB,EAAE,EAAE;IACrB,cAAc,EAAE,EAAE;IAClB,QAAQ,EAAE,EAAE;IACZ,iBAAiB,EAAE,EAAE;IACrB,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE;CACrC,CAAA;AAED,wFAAwF;AACxF,SAAS,iBAAiB,CAAC,EAAkB;IAC3C,OAAO,CACL,CAAC,EAAE,CAAC,OAAO;QACX,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;QACf,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;QACf,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE;QACnB,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE;QACrB,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,CACtB,CAAA;AACH,CAAC;AAoDD,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC/D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAmB,EAAE,CAAC,CAAA;IAChE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAA;IACvD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAA;IAC5D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAA;IAC1E,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAiB,UAAU,CAAC,CAAA;IACpE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAiB,UAAU,CAAC,CAAA;IAC5D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAY,MAAM,CAAC,CAAA;IAC7D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC/D,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IACzE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAE7C,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACxC,MAAM,GAAG,GAAG,MAAM,MAAM,CAA4B,YAAY,CAAC,CAAA;QACjE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI;YAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IAC9D,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,OAAO,CAAC,GAAG,CAAC;YACV,MAAM,CAAqB,cAAc,CAAC;YAC1C,MAAM,CAA4B,YAAY,CAAC;YAC/C,MAAM,CAAc,mBAAmB,CAAC;SACzC,CAAC;aACC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC3C,IAAI,SAAS;gBAAE,OAAM;YACrB,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gBACtB,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC/B,OAAM;YACR,CAAC;YACD,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;gBACjD,WAAW,CAAC,MAAM,CAAC,CAAA;gBACnB,OAAO,CAAC,MAAM,CAAC,CAAA;gBACf,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;gBAC9C,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,CAAA;YACxD,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,IAAI;gBAAE,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;YAC9E,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI;gBAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC/D,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,SAAS;gBAAE,YAAY,CAAC,6BAA6B,CAAC,CAAA;QAC7D,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,SAAS;gBAAE,UAAU,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QACJ,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAA;QAClB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,EAAU,EAAE,EAAE;QACpD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QAC3E,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,EAAU,EAAE,EAAE;QACnD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACpD,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,oBAAoB,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,EAAE;QACzD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;QAChF,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,OAAgB,EAAE,EAAE;QAClE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjB,GAAG,IAAI;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC5E,CAAC,CAAC,CAAA;QACH,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,OAAe,EAAE,EAAE;QACnE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjB,GAAG,IAAI;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAChC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAC/E;SACF,CAAC,CAAC,CAAA;QACH,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,KAA8B,EAAE,EAAE;QACnE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;QAC9E,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,IAAI,IAAI,CAAC,iBAAiB,KAAK,EAAE;YAAE,OAAO,IAAI,CAAA;QAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,oDAAoD,CAAA;QAC7F,OAAO,IAAI,CAAA;IACb,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAE5B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE;QACzB,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAA;QACtE,IAAI,IAAI,CAAC,cAAc,KAAK,QAAQ,CAAC,cAAc;YAAE,OAAO,IAAI,CAAA;QAChE,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAA;QACtE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAClE,MAAM,MAAM,GAA6B;YACvC,SAAS;YACT,MAAM;YACN,MAAM;YACN,UAAU;YACV,YAAY;YACZ,YAAY;SACb,CAAA;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;QAClF,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YACjC,OAAO,CAAC,CAAC,OAAO,KAAK,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAA;QACnF,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;IAEpB,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAClC,IAAI,CAAC,OAAO,IAAI,WAAW;YAAE,OAAM;QACnC,YAAY,CAAC,QAAQ,CAAC,CAAA;QACtB,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAqB,cAAc,EAAE;gBAC3D,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI;oBACjD,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI;oBAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAClC,GAAG,EAAE,CAAC,CAAC,GAAG;wBACV,OAAO,EAAE,CAAC,CAAC,OAAO;wBAClB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;qBACtC,CAAC,CAAC;oBACH,MAAM,EAAE;wBACN,iBAAiB,EACf,IAAI,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;qBACxE;oBACD,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC;wBAC5C,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC;4BACE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO;4BAChC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;4BAC1B,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;4BAC1B,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ;4BAClC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU;4BACtC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU;yBACvC;iBACN,CAAC;aACH,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACzC,WAAW,CAAC,IAAI,CAAC,CAAA;YACjB,YAAY,CAAC,SAAS,CAAC,CAAA;YACvB,wEAAwE;YACxE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAc,mBAAmB,CAAC,CAAA;YAC/D,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI;gBAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC/D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,CAAC,OAAO,CAAC,CAAA;YACrB,YAAY,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAA;QAClF,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAA;IAEhC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,OAAO,CAAC,QAAQ,CAAC,CAAA;QACjB,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,CAAA;IACpB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEjE,MAAM,eAAe,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC7C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAqB,cAAc,CAAC,CAAA;QAC5D,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YAC3B,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;YACtC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,CAAA;QAChD,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,cAAc,GAAG,WAAW,CAChC,KAAK,EAAE,KAAoB,EAAE,EAAE;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAA;QACnF,iBAAiB,CAAC,KAAK,CAAC,CAAA;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAiB,eAAe,EAAE;gBACxD,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aAC5B,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;YACrD,MAAM,eAAe,EAAE,CAAA;YACvB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QACrB,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,eAAe,CAAC,CAC3B,CAAA;IAED,MAAM,cAAc,GAAG,WAAW,CAChC,KAAK,EACH,EAAU,EACV,KAA0E,EAC1E,EAAE;QACF,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAA;QACnF,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAiB,iBAAiB,EAAE,EAAE,EAAE;gBAC9D,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aAC5B,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;YACrD,MAAM,eAAe,EAAE,CAAA;YACvB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QACrB,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,eAAe,CAAC,CAC3B,CAAA;IAED,MAAM,cAAc,GAAG,WAAW,CAChC,KAAK,EAAE,EAAU,EAAE,EAAE;QACnB,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAA;QACnF,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YACrE,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;YACrD,MAAM,eAAe,EAAE,CAAA;YACvB,MAAM,UAAU,EAAE,CAAA;YAClB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QACrB,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,CACvC,CAAA;IAED,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,EAAU,EAAE,EAAE;QACnB,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAA;QACnF,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAGrB,iBAAiB,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;YAClD,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;YACrD,MAAM,eAAe,EAAE,CAAA;YACvB,OAAO;gBACL,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,KAAK;gBAChC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM;gBAC/B,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO;aAClC,CAAA;QACH,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,eAAe,CAAC,CAC3B,CAAA;IAED,MAAM,UAAU,GAAG,WAAW,CAC5B,KAAK,EAAE,EAAU,EAAE,EAAE;QACnB,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wCAAwC,EAAE,CAAA;QACnF,iBAAiB,CAAC,EAAE,CAAC,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAIrB,iBAAiB,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;YACzD,IAAI,GAAG,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;YACrD,MAAM,UAAU,EAAE,CAAA;YAClB,MAAM,eAAe,EAAE,CAAA;YACvB,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY;gBACpC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,IAAI;aACnC,CAAA;QACH,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,CACvC,CAAA;IAED,OAAO;QACL,OAAO;QACP,SAAS;QACT,SAAS;QACT,MAAM;QACN,KAAK;QACL,YAAY;QACZ,IAAI;QACJ,kBAAkB;QAClB,eAAe,EAAE,iBAAiB;QAClC,oBAAoB;QACpB,aAAa;QACb,eAAe;QACf,aAAa;QACb,KAAK;QACL,WAAW;QACX,SAAS;QACT,SAAS;QACT,IAAI;QACJ,KAAK;QACL,OAAO;QACP,cAAc;QACd,cAAc;QACd,cAAc;QACd,YAAY;QACZ,UAAU;QACV,cAAc;KACf,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actuate-media/cms-admin",
3
- "version": "0.35.0",
3
+ "version": "0.36.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/actuate-media/actuatecms.git",
@@ -88,8 +88,8 @@
88
88
  "tailwindcss": "^4.0.0",
89
89
  "typescript": "^5.7.0",
90
90
  "vitest": "^4.1.0",
91
- "@actuate-media/component-blocks": "0.2.0",
92
- "@actuate-media/cms-core": "0.44.0"
91
+ "@actuate-media/cms-core": "0.46.0",
92
+ "@actuate-media/component-blocks": "0.2.0"
93
93
  },
94
94
  "scripts": {
95
95
  "build": "tsc --project tsconfig.json && npx @tailwindcss/cli -i src/styles/build-input.css -o dist/actuate-admin.css --minify",
@@ -252,6 +252,42 @@ describe('AISettingsTab', () => {
252
252
  expect(await screen.findByText(/can't do vision/i)).toBeTruthy()
253
253
  })
254
254
 
255
+ it('edits the brand voice and persists it to /ai/settings', async () => {
256
+ render(<AISettingsTab role="ADMIN" />)
257
+ const region = await screen.findByRole('region', { name: 'Brand voice' })
258
+
259
+ fireEvent.click(within(region).getByRole('switch', { name: 'Apply brand voice' }))
260
+ fireEvent.change(within(region).getByLabelText('Tone'), {
261
+ target: { value: 'confident, warm' },
262
+ })
263
+
264
+ const save = screen.getByRole('button', { name: 'Save Changes' }) as HTMLButtonElement
265
+ expect(save.disabled).toBe(false)
266
+ fireEvent.click(save)
267
+
268
+ await waitFor(() =>
269
+ expect(cmsApi).toHaveBeenCalledWith(
270
+ '/ai/settings',
271
+ expect.objectContaining({ method: 'PUT' }),
272
+ ),
273
+ )
274
+ const putCall = cmsApi.mock.calls.find(
275
+ ([e, o]) => e === '/ai/settings' && (o as { method?: string })?.method === 'PUT',
276
+ )
277
+ const body = JSON.parse((putCall![1] as { body: string }).body)
278
+ expect(body.brandVoice).toMatchObject({ enabled: true, tone: 'confident, warm' })
279
+ })
280
+
281
+ it('disables brand voice fields for non-admins', async () => {
282
+ render(<AISettingsTab role="EDITOR" />)
283
+ const region = await screen.findByRole('region', { name: 'Brand voice' })
284
+ expect(
285
+ (within(region).getByRole('switch', { name: 'Apply brand voice' }) as HTMLButtonElement)
286
+ .disabled,
287
+ ).toBe(true)
288
+ expect((within(region).getByLabelText('Tone') as HTMLInputElement).disabled).toBe(true)
289
+ })
290
+
255
291
  it('is read-only for non-admins', async () => {
256
292
  render(<AISettingsTab role="EDITOR" />)
257
293
  expect(await screen.findByText(/read-only access to AI settings/i)).toBeTruthy()