@elevasis/ui 2.37.0 → 2.38.0

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 (59) hide show
  1. package/dist/app/index.d.ts +55 -2
  2. package/dist/app/index.js +8 -7
  3. package/dist/auth/index.js +4 -4
  4. package/dist/charts/index.js +4 -4
  5. package/dist/{chunk-LCJQ6OWC.js → chunk-4O3VAALW.js} +3 -2
  6. package/dist/{chunk-NWMPBG4U.js → chunk-566XWGPP.js} +76 -109
  7. package/dist/chunk-6D4LCJ52.js +10 -0
  8. package/dist/{chunk-JPVZRZ3X.js → chunk-7YXZFS56.js} +1 -1
  9. package/dist/{chunk-CWYQRM5T.js → chunk-7ZWXTH5J.js} +2 -8
  10. package/dist/{chunk-S3KBYQTI.js → chunk-B2DZLPDL.js} +1 -1
  11. package/dist/{chunk-NYNOMAAS.js → chunk-C6BDBZRO.js} +1 -1
  12. package/dist/{chunk-JZ2WID2G.js → chunk-H2MEFUQD.js} +1 -1
  13. package/dist/{chunk-LNC6PZAE.js → chunk-M7Q4UBRY.js} +1 -1
  14. package/dist/{chunk-6NREL3KL.js → chunk-P34FFSOX.js} +1 -1
  15. package/dist/{chunk-5CTJ7TW2.js → chunk-PGWANFNE.js} +5 -4
  16. package/dist/{chunk-T3NI7DOA.js → chunk-Q64E2TZY.js} +156 -38
  17. package/dist/components/index.d.ts +45 -0
  18. package/dist/components/index.js +11 -10
  19. package/dist/components/navigation/index.js +3 -3
  20. package/dist/features/auth/index.d.ts +45 -0
  21. package/dist/features/auth/index.js +12 -11
  22. package/dist/features/clients/index.js +11 -10
  23. package/dist/features/crm/index.d.ts +45 -0
  24. package/dist/features/crm/index.js +11 -10
  25. package/dist/features/dashboard/index.js +11 -10
  26. package/dist/features/delivery/index.d.ts +45 -0
  27. package/dist/features/delivery/index.js +11 -10
  28. package/dist/features/knowledge/index.js +3 -3
  29. package/dist/features/lead-gen/index.d.ts +10 -2
  30. package/dist/features/lead-gen/index.js +11 -10
  31. package/dist/features/monitoring/index.js +11 -10
  32. package/dist/features/monitoring/requests/index.js +11 -10
  33. package/dist/features/operations/index.d.ts +10 -2
  34. package/dist/features/operations/index.js +11 -10
  35. package/dist/features/right-panel-host/index.js +0 -1
  36. package/dist/features/settings/index.d.ts +45 -0
  37. package/dist/features/settings/index.js +11 -10
  38. package/dist/hooks/access/index.js +3 -3
  39. package/dist/hooks/delivery/index.d.ts +45 -0
  40. package/dist/hooks/delivery/index.js +11 -10
  41. package/dist/hooks/index.d.ts +45 -0
  42. package/dist/hooks/index.js +11 -10
  43. package/dist/hooks/published.d.ts +45 -0
  44. package/dist/hooks/published.js +11 -10
  45. package/dist/index.d.ts +55 -2
  46. package/dist/index.js +11 -10
  47. package/dist/initialization/index.d.ts +45 -0
  48. package/dist/knowledge/index.d.ts +10 -2
  49. package/dist/knowledge/index.js +167 -25
  50. package/dist/organization/index.js +11 -10
  51. package/dist/profile/index.d.ts +45 -0
  52. package/dist/provider/index.d.ts +55 -2
  53. package/dist/provider/index.js +8 -7
  54. package/dist/provider/published.d.ts +55 -2
  55. package/dist/provider/published.js +5 -5
  56. package/dist/supabase/index.d.ts +87 -0
  57. package/dist/theme/index.js +3 -2
  58. package/dist/types/index.d.ts +45 -0
  59. package/package.json +5 -5
@@ -1,20 +1,22 @@
1
- import { getKnowledgeIconToken, getKnowledgeGraphNodeCommand, getKnowledgeNodeReadCommand, getKnowledgeOntologyProjection, getPrimaryOntologyItemsForDomain, projectNavigationSurfaces, projectNavigationGroups, getOntologyDomainLabel, getKnowledgeDomainFolderCommand, getKnowledgeTreeFolderCommand, KNOWLEDGE_DOMAINS_WITH_PANELS } from '../chunk-6NREL3KL.js';
2
- export { KNOWLEDGE_ICON_TOKEN_BY_KIND, KnowledgeSearchBar, KnowledgeTree, OM_TREE_GROUPS, getKnowledgeIconToken, getSharedOrganizationGraph } from '../chunk-6NREL3KL.js';
1
+ import { getKnowledgeIconToken, getKnowledgeGraphNodeCommand, getKnowledgeNodeReadCommand, getKnowledgeOntologyProjection, getPrimaryOntologyItemsForDomain, projectNavigationSurfaces, projectNavigationGroups, getOntologyDomainLabel, getKnowledgeDomainFolderCommand, getKnowledgeTreeFolderCommand, KNOWLEDGE_DOMAINS_WITH_PANELS } from '../chunk-P34FFSOX.js';
2
+ export { KNOWLEDGE_ICON_TOKEN_BY_KIND, KnowledgeSearchBar, KnowledgeTree, OM_TREE_GROUPS, getKnowledgeIconToken, getSharedOrganizationGraph } from '../chunk-P34FFSOX.js';
3
3
  import { PageContainer } from '../chunk-DA6I5VEY.js';
4
4
  import '../chunk-CLDCYJQT.js';
5
5
  import '../chunk-X4WBGKJQ.js';
6
6
  import '../chunk-IIMU5YAJ.js';
7
+ import { usePresetsContext } from '../chunk-6D4LCJ52.js';
8
+ import '../chunk-WF7CONXF.js';
7
9
  import '../chunk-WLOQ4IBG.js';
8
10
  import '../chunk-A7IG36LB.js';
9
11
  import '../chunk-NYBEU5TE.js';
10
12
  import '../chunk-DT3QYZVU.js';
11
13
  import '../chunk-2IFYDILW.js';
12
14
  import '../chunk-Q7DJKLEN.js';
13
- import { SemanticIcon, getSystem, SystemEntrySchema, IdentityDomainSchema, WorkflowResourceEntrySchema, AgentResourceEntrySchema, IntegrationResourceEntrySchema, ScriptResourceEntrySchema, SurfaceDefinitionSchema, RoleSchema, PolicySchema, EntitySchema, ActionSchema, OntologyIdSchema, ontologyGraphNodeId, compileOrganizationOntology, parseOntologyId } from '../chunk-NWMPBG4U.js';
14
- export { SemanticIcon, extendSemanticIconRegistry, getSemanticIconComponent, resolveSemanticIconComponent } from '../chunk-NWMPBG4U.js';
15
+ import { SemanticIcon, getSystem, SystemEntrySchema, IdentityDomainSchema, WorkflowResourceEntrySchema, AgentResourceEntrySchema, IntegrationResourceEntrySchema, ScriptResourceEntrySchema, SurfaceDefinitionSchema, RoleSchema, PolicySchema, EntitySchema, ActionSchema, OntologyIdSchema, ontologyGraphNodeId, compileOrganizationOntology, parseOntologyId } from '../chunk-566XWGPP.js';
16
+ export { SemanticIcon, extendSemanticIconRegistry, getSemanticIconComponent, resolveSemanticIconComponent } from '../chunk-566XWGPP.js';
15
17
  import '../chunk-I2KLQ2HA.js';
16
18
  import { createContext, Children, isValidElement, cloneElement, useMemo, useContext, useRef, useState, useEffect } from 'react';
17
- import { Card, Text, SimpleGrid, Group, Stack, Alert, Tabs, Box, Table, CopyButton, Tooltip, ActionIcon, Title, Badge, Divider, Button, Paper, TableOfContents, ThemeIcon, UnstyledButton, List, Code, Progress } from '@mantine/core';
19
+ import { Card, Text, SimpleGrid, Group, Stack, Alert, Tabs, Box, Table, CopyButton, Tooltip, ActionIcon, Title, Badge, Divider, Button, Paper, TableOfContents, ThemeIcon, UnstyledButton, List, Code, Progress, Loader } from '@mantine/core';
18
20
  import { IconBook, IconCheck, IconCopy, IconExternalLink, IconCircleX, IconAlertTriangle, IconInfoCircle } from '@tabler/icons-react';
19
21
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
20
22
  import { Highlight, themes } from 'prism-react-renderer';
@@ -8876,8 +8878,47 @@ function SurfaceDescribeView({
8876
8878
  }
8877
8879
  );
8878
8880
  }
8881
+ function formatValue(value) {
8882
+ if (value === null || value === void 0) return "";
8883
+ if (typeof value === "string") return value;
8884
+ if (typeof value === "number" || typeof value === "boolean") return String(value);
8885
+ if (Array.isArray(value)) {
8886
+ const items = value.map(
8887
+ (item) => typeof item === "string" || typeof item === "number" || typeof item === "boolean" ? String(item) : JSON.stringify(item)
8888
+ );
8889
+ return items.join(", ");
8890
+ }
8891
+ return JSON.stringify(value, null, 2);
8892
+ }
8893
+ function AdditionalProperties({ domain, knownKeys }) {
8894
+ const knownSet = new Set(knownKeys);
8895
+ const extras = Object.entries(domain).filter(
8896
+ ([key, value]) => !knownSet.has(key) && value !== void 0 && value !== null && value !== ""
8897
+ );
8898
+ if (extras.length === 0) return null;
8899
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
8900
+ /* @__PURE__ */ jsx(Divider, {}),
8901
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Additional Properties" }),
8902
+ /* @__PURE__ */ jsx(Stack, { gap: "xs", children: extras.map(([key, value]) => /* @__PURE__ */ jsxs("div", { style: { display: "flex", gap: 8 }, children: [
8903
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140, flexShrink: 0 }, children: key }),
8904
+ /* @__PURE__ */ jsx(Text, { size: "sm", style: { flex: 1, whiteSpace: "pre-wrap", wordBreak: "break-word" }, children: formatValue(value) })
8905
+ ] }, key)) })
8906
+ ] });
8907
+ }
8908
+ var BRANDING_KNOWN_KEYS = [
8909
+ "organizationName",
8910
+ "productName",
8911
+ "shortName",
8912
+ "description",
8913
+ "logos",
8914
+ "voice",
8915
+ "tagline",
8916
+ "values",
8917
+ "themePresetId"
8918
+ ];
8879
8919
  function BrandingPanel({ model }) {
8880
8920
  const branding = model.branding;
8921
+ const presetsMap = usePresetsContext();
8881
8922
  if (!branding) {
8882
8923
  return /* @__PURE__ */ jsxs(Stack, { p: "md", gap: "sm", children: [
8883
8924
  /* @__PURE__ */ jsx(
@@ -8892,6 +8933,8 @@ function BrandingPanel({ model }) {
8892
8933
  /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", children: "No branding configured." })
8893
8934
  ] });
8894
8935
  }
8936
+ const resolvedPreset = branding.themePresetId ? presetsMap[branding.themePresetId] : void 0;
8937
+ const presetNotFound = branding.themePresetId !== void 0 && resolvedPreset === void 0;
8895
8938
  return /* @__PURE__ */ jsxs(Stack, { p: "md", gap: "md", children: [
8896
8939
  /* @__PURE__ */ jsx(
8897
8940
  KnowledgePageHeader,
@@ -8903,24 +8946,24 @@ function BrandingPanel({ model }) {
8903
8946
  }
8904
8947
  ),
8905
8948
  /* @__PURE__ */ jsx(Divider, {}),
8906
- /* @__PURE__ */ jsxs(Stack, { gap: "xs", children: [
8907
- /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
8908
- /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Organization Name" }),
8909
- /* @__PURE__ */ jsx(Text, { size: "sm", children: branding.organizationName })
8910
- ] }),
8911
- /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
8912
- /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Product Name" }),
8913
- /* @__PURE__ */ jsx(Text, { size: "sm", children: branding.productName })
8914
- ] }),
8915
- /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
8916
- /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Short Name" }),
8917
- /* @__PURE__ */ jsx(Text, { size: "sm", children: branding.shortName })
8918
- ] }),
8919
- branding.description && /* @__PURE__ */ jsxs(Group, { gap: "xs", align: "flex-start", children: [
8920
- /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Description" }),
8921
- /* @__PURE__ */ jsx(Text, { size: "sm", style: { flex: 1 }, children: branding.description })
8949
+ (branding.tagline || branding.voice) && /* @__PURE__ */ jsxs(Fragment, { children: [
8950
+ /* @__PURE__ */ jsx(Divider, {}),
8951
+ /* @__PURE__ */ jsxs(Stack, { gap: "xs", children: [
8952
+ branding.tagline && /* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
8953
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Tagline" }),
8954
+ /* @__PURE__ */ jsx(Text, { size: "sm", children: branding.tagline })
8955
+ ] }),
8956
+ branding.voice && /* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
8957
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Voice" }),
8958
+ /* @__PURE__ */ jsx(Text, { size: "sm", children: branding.voice })
8959
+ ] })
8922
8960
  ] })
8923
8961
  ] }),
8962
+ branding.values && branding.values.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
8963
+ /* @__PURE__ */ jsx(Divider, {}),
8964
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Values" }),
8965
+ /* @__PURE__ */ jsx(Group, { gap: "xs", wrap: "wrap", children: branding.values.map((value) => /* @__PURE__ */ jsx(Badge, { variant: "light", size: "sm", children: value }, value)) })
8966
+ ] }),
8924
8967
  (branding.logos.light || branding.logos.dark) && /* @__PURE__ */ jsxs(Fragment, { children: [
8925
8968
  /* @__PURE__ */ jsx(Divider, {}),
8926
8969
  /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Logos" }),
@@ -8956,9 +8999,76 @@ function BrandingPanel({ model }) {
8956
8999
  }
8957
9000
  )
8958
9001
  ] })
8959
- ] })
9002
+ ] }),
9003
+ branding.themePresetId && /* @__PURE__ */ jsxs(Fragment, { children: [
9004
+ /* @__PURE__ */ jsx(Divider, {}),
9005
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Theme Preset" }),
9006
+ presetNotFound ? /* @__PURE__ */ jsx(Card, { withBorder: true, padding: "sm", children: /* @__PURE__ */ jsxs(Text, { size: "sm", c: "dimmed", children: [
9007
+ "Preset not found:",
9008
+ " ",
9009
+ /* @__PURE__ */ jsx(Text, { component: "span", size: "sm", fw: 500, children: branding.themePresetId })
9010
+ ] }) }) : resolvedPreset ? /* @__PURE__ */ jsxs(Stack, { gap: "sm", children: [
9011
+ resolvedPreset.label && /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
9012
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Name" }),
9013
+ /* @__PURE__ */ jsx(Text, { size: "sm", children: resolvedPreset.label })
9014
+ ] }),
9015
+ resolvedPreset.description && /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
9016
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Description" }),
9017
+ /* @__PURE__ */ jsx(Text, { size: "sm", children: resolvedPreset.description })
9018
+ ] }),
9019
+ /* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
9020
+ /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", fw: 500, tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Light scheme" }),
9021
+ /* @__PURE__ */ jsx(ThemeSwatchRow, { tokens: resolvedPreset.light })
9022
+ ] }),
9023
+ /* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
9024
+ /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", fw: 500, tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Dark scheme" }),
9025
+ /* @__PURE__ */ jsx(ThemeSwatchRow, { tokens: resolvedPreset.dark })
9026
+ ] }),
9027
+ (resolvedPreset.framework?.fontFamily || resolvedPreset.framework?.headings?.fontFamily) && /* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
9028
+ /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", fw: 500, tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Typography" }),
9029
+ resolvedPreset.framework?.fontFamily && /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
9030
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Body" }),
9031
+ /* @__PURE__ */ jsx(Text, { size: "sm", style: { fontFamily: resolvedPreset.framework.fontFamily }, children: resolvedPreset.framework.fontFamily })
9032
+ ] }),
9033
+ resolvedPreset.framework?.headings?.fontFamily && /* @__PURE__ */ jsxs(Group, { gap: "xs", children: [
9034
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 500, c: "dimmed", style: { minWidth: 140 }, children: "Headings" }),
9035
+ /* @__PURE__ */ jsx(Text, { size: "sm", style: { fontFamily: resolvedPreset.framework.headings.fontFamily }, children: resolvedPreset.framework.headings.fontFamily })
9036
+ ] })
9037
+ ] })
9038
+ ] }) : (
9039
+ // themePresetId present but still resolving — should not normally happen
9040
+ // because presetsMap is synchronous, but handle gracefully
9041
+ /* @__PURE__ */ jsx(Loader, { size: "sm" })
9042
+ )
9043
+ ] }),
9044
+ /* @__PURE__ */ jsx(AdditionalProperties, { domain: branding, knownKeys: BRANDING_KNOWN_KEYS })
8960
9045
  ] });
8961
9046
  }
9047
+ function ThemeSwatchRow({ tokens }) {
9048
+ const swatches = [
9049
+ { label: "Primary", color: tokens.primary ?? "" },
9050
+ { label: "Background", color: tokens.background ?? "" },
9051
+ { label: "Surface", color: tokens.surface ?? "" },
9052
+ { label: "Text", color: tokens.text ?? "" }
9053
+ ].filter((s) => s.color);
9054
+ if (swatches.length === 0) return null;
9055
+ return /* @__PURE__ */ jsx(Group, { gap: "sm", wrap: "wrap", children: swatches.map(({ label, color }) => /* @__PURE__ */ jsxs(Stack, { gap: 4, align: "center", style: { minWidth: 60 }, children: [
9056
+ /* @__PURE__ */ jsx(
9057
+ "div",
9058
+ {
9059
+ style: {
9060
+ width: 32,
9061
+ height: 32,
9062
+ borderRadius: 6,
9063
+ backgroundColor: color,
9064
+ border: "1px solid var(--color-border, rgba(0,0,0,0.12))"
9065
+ },
9066
+ title: color
9067
+ }
9068
+ ),
9069
+ /* @__PURE__ */ jsx(Text, { size: "xs", c: "dimmed", ta: "center", children: label })
9070
+ ] }, label)) });
9071
+ }
8962
9072
  function CustomersPanel({ model, filterToItemId }) {
8963
9073
  const customers = model.customers;
8964
9074
  const segments = Object.values(customers).filter((segment) => !filterToItemId || segment.id === filterToItemId).sort((a, b) => a.order - b.order);
@@ -9103,6 +9213,22 @@ function GoalsPanel({ model, filterToItemId }) {
9103
9213
  ] });
9104
9214
  }
9105
9215
  var DAYS_OF_WEEK = ["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"];
9216
+ var IDENTITY_KNOWN_KEYS = [
9217
+ "organizationName",
9218
+ "productName",
9219
+ "shortName",
9220
+ "description",
9221
+ "mission",
9222
+ "vision",
9223
+ "legalName",
9224
+ "entityType",
9225
+ "jurisdiction",
9226
+ "industryCategory",
9227
+ "geographicFocus",
9228
+ "timeZone",
9229
+ "businessHours",
9230
+ "clientBrief"
9231
+ ];
9106
9232
  function capitalize(s) {
9107
9233
  return s.charAt(0).toUpperCase() + s.slice(1);
9108
9234
  }
@@ -9114,7 +9240,12 @@ function FieldRow({ label, value }) {
9114
9240
  }
9115
9241
  function IdentityPanel({ model }) {
9116
9242
  const identity = model.identity;
9117
- const hasAnyField = identity.mission || identity.vision || identity.legalName || identity.entityType || identity.jurisdiction || identity.industryCategory || identity.geographicFocus || identity.timeZone !== "UTC" || identity.clientBrief;
9243
+ const branding = model.branding;
9244
+ const organizationName = identity.organizationName ?? branding?.organizationName;
9245
+ const productName = identity.productName ?? branding?.productName;
9246
+ const shortName = identity.shortName ?? branding?.shortName;
9247
+ const description = identity.description ?? branding?.description;
9248
+ const hasAnyField = organizationName || productName || shortName || description || identity.mission || identity.vision || identity.legalName || identity.entityType || identity.jurisdiction || identity.industryCategory || identity.geographicFocus || identity.timeZone !== "UTC" || identity.clientBrief;
9118
9249
  if (!hasAnyField) {
9119
9250
  return /* @__PURE__ */ jsxs(Stack, { p: "md", gap: "sm", children: [
9120
9251
  /* @__PURE__ */ jsx(
@@ -9126,7 +9257,8 @@ function IdentityPanel({ model }) {
9126
9257
  copyCommand: getKnowledgeDomainFolderCommand("identity")
9127
9258
  }
9128
9259
  ),
9129
- /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", children: "No identity configured." })
9260
+ /* @__PURE__ */ jsx(Text, { size: "sm", c: "dimmed", children: "No identity configured." }),
9261
+ /* @__PURE__ */ jsx(AdditionalProperties, { domain: identity, knownKeys: IDENTITY_KNOWN_KEYS })
9130
9262
  ] });
9131
9263
  }
9132
9264
  const businessHoursRows = DAYS_OF_WEEK.map((day) => {
@@ -9145,6 +9277,15 @@ function IdentityPanel({ model }) {
9145
9277
  }
9146
9278
  ),
9147
9279
  /* @__PURE__ */ jsx(Divider, {}),
9280
+ (organizationName || productName || shortName || description) && /* @__PURE__ */ jsxs(Fragment, { children: [
9281
+ /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Naming" }),
9282
+ /* @__PURE__ */ jsxs(Stack, { gap: "xs", children: [
9283
+ organizationName && /* @__PURE__ */ jsx(FieldRow, { label: "Organization Name", value: organizationName }),
9284
+ productName && /* @__PURE__ */ jsx(FieldRow, { label: "Product Name", value: productName }),
9285
+ shortName && /* @__PURE__ */ jsx(FieldRow, { label: "Short Name", value: shortName }),
9286
+ description && /* @__PURE__ */ jsx(FieldRow, { label: "Description", value: description })
9287
+ ] })
9288
+ ] }),
9148
9289
  /* @__PURE__ */ jsxs(Stack, { gap: "xs", children: [
9149
9290
  identity.mission && /* @__PURE__ */ jsxs(Stack, { gap: 4, children: [
9150
9291
  /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Mission" }),
@@ -9187,7 +9328,8 @@ function IdentityPanel({ model }) {
9187
9328
  /* @__PURE__ */ jsx(Divider, {}),
9188
9329
  /* @__PURE__ */ jsx(Text, { size: "sm", fw: 600, c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: "Client Brief" }),
9189
9330
  /* @__PURE__ */ jsx(Card, { withBorder: true, padding: "sm", style: { background: "var(--color-surface)" }, children: /* @__PURE__ */ jsx(Text, { size: "sm", style: { whiteSpace: "pre-wrap", lineHeight: 1.6 }, children: identity.clientBrief }) })
9190
- ] })
9331
+ ] }),
9332
+ /* @__PURE__ */ jsx(AdditionalProperties, { domain: identity, knownKeys: IDENTITY_KNOWN_KEYS })
9191
9333
  ] });
9192
9334
  }
9193
9335
  var SURFACE_TYPE_COLORS = {
@@ -1,10 +1,10 @@
1
- export { OrganizationSwitcher, OrganizationSwitcherConnected, createOrganizationsSlice, createUseOrgInitialization, createUseOrganizations } from '../chunk-T3NI7DOA.js';
2
- import '../chunk-S3KBYQTI.js';
1
+ export { OrganizationSwitcher, OrganizationSwitcherConnected, createOrganizationsSlice, createUseOrgInitialization, createUseOrganizations } from '../chunk-Q64E2TZY.js';
2
+ import '../chunk-B2DZLPDL.js';
3
3
  import '../chunk-SHZT7ULK.js';
4
4
  import '../chunk-AUDNF2Q7.js';
5
5
  import '../chunk-6M6OLGQY.js';
6
6
  import '../chunk-BRXELOHC.js';
7
- import '../chunk-LNC6PZAE.js';
7
+ import '../chunk-M7Q4UBRY.js';
8
8
  import '../chunk-CXY7FMUM.js';
9
9
  import '../chunk-7GQFIWP4.js';
10
10
  import '../chunk-JBWJ6WHZ.js';
@@ -18,11 +18,12 @@ import '../chunk-IIMU5YAJ.js';
18
18
  import '../chunk-HENXLGVD.js';
19
19
  import '../chunk-7FPLLSHN.js';
20
20
  import '../chunk-RNP5R5I3.js';
21
- import '../chunk-5CTJ7TW2.js';
22
- import '../chunk-CWYQRM5T.js';
21
+ import '../chunk-PGWANFNE.js';
22
+ import '../chunk-7ZWXTH5J.js';
23
+ import '../chunk-6D4LCJ52.js';
23
24
  import '../chunk-WF7CONXF.js';
24
25
  import '../chunk-WLOQ4IBG.js';
25
- export { OrganizationProvider } from '../chunk-JZ2WID2G.js';
26
+ export { OrganizationProvider } from '../chunk-H2MEFUQD.js';
26
27
  import '../chunk-I53EX4VU.js';
27
28
  import '../chunk-3KMDHCAR.js';
28
29
  import '../chunk-S3XR4II4.js';
@@ -34,11 +35,11 @@ import '../chunk-2IFYDILW.js';
34
35
  import '../chunk-Q7DJKLEN.js';
35
36
  import '../chunk-X66MVMZT.js';
36
37
  import '../chunk-KRWALB24.js';
37
- import '../chunk-JPVZRZ3X.js';
38
- import '../chunk-LCJQ6OWC.js';
39
- import '../chunk-NYNOMAAS.js';
38
+ import '../chunk-7YXZFS56.js';
39
+ import '../chunk-4O3VAALW.js';
40
+ import '../chunk-C6BDBZRO.js';
40
41
  import '../chunk-533DUEQY.js';
41
- import '../chunk-NWMPBG4U.js';
42
+ import '../chunk-566XWGPP.js';
42
43
  export { OrganizationContext, useOrganization } from '../chunk-DD3CCMCZ.js';
43
44
  import '../chunk-2Q2JQSQO.js';
44
45
  import '../chunk-6ROXVZ3L.js';
@@ -1461,6 +1461,51 @@ type Database = {
1461
1461
  }
1462
1462
  ];
1463
1463
  };
1464
+ deployment_organization_models: {
1465
+ Row: {
1466
+ created_at: string;
1467
+ deployment_id: string;
1468
+ model_hash: string | null;
1469
+ organization_id: string;
1470
+ organization_model: Json;
1471
+ schema_version: string;
1472
+ updated_at: string;
1473
+ };
1474
+ Insert: {
1475
+ created_at?: string;
1476
+ deployment_id: string;
1477
+ model_hash?: string | null;
1478
+ organization_id: string;
1479
+ organization_model: Json;
1480
+ schema_version?: string;
1481
+ updated_at?: string;
1482
+ };
1483
+ Update: {
1484
+ created_at?: string;
1485
+ deployment_id?: string;
1486
+ model_hash?: string | null;
1487
+ organization_id?: string;
1488
+ organization_model?: Json;
1489
+ schema_version?: string;
1490
+ updated_at?: string;
1491
+ };
1492
+ Relationships: [
1493
+ {
1494
+ foreignKeyName: "deployment_organization_models_deployment_id_fkey";
1495
+ columns: ["deployment_id"];
1496
+ isOneToOne: true;
1497
+ referencedRelation: "deployments";
1498
+ referencedColumns: ["id"];
1499
+ },
1500
+ {
1501
+ foreignKeyName: "deployment_organization_models_organization_id_fkey";
1502
+ columns: ["organization_id"];
1503
+ isOneToOne: false;
1504
+ referencedRelation: "organizations";
1505
+ referencedColumns: ["id"];
1506
+ }
1507
+ ];
1508
+ };
1464
1509
  deployments: {
1465
1510
  Row: {
1466
1511
  created_at: string;
@@ -1563,6 +1563,51 @@ type Database = {
1563
1563
  }
1564
1564
  ];
1565
1565
  };
1566
+ deployment_organization_models: {
1567
+ Row: {
1568
+ created_at: string;
1569
+ deployment_id: string;
1570
+ model_hash: string | null;
1571
+ organization_id: string;
1572
+ organization_model: Json;
1573
+ schema_version: string;
1574
+ updated_at: string;
1575
+ };
1576
+ Insert: {
1577
+ created_at?: string;
1578
+ deployment_id: string;
1579
+ model_hash?: string | null;
1580
+ organization_id: string;
1581
+ organization_model: Json;
1582
+ schema_version?: string;
1583
+ updated_at?: string;
1584
+ };
1585
+ Update: {
1586
+ created_at?: string;
1587
+ deployment_id?: string;
1588
+ model_hash?: string | null;
1589
+ organization_id?: string;
1590
+ organization_model?: Json;
1591
+ schema_version?: string;
1592
+ updated_at?: string;
1593
+ };
1594
+ Relationships: [
1595
+ {
1596
+ foreignKeyName: "deployment_organization_models_deployment_id_fkey";
1597
+ columns: ["deployment_id"];
1598
+ isOneToOne: true;
1599
+ referencedRelation: "deployments";
1600
+ referencedColumns: ["id"];
1601
+ },
1602
+ {
1603
+ foreignKeyName: "deployment_organization_models_organization_id_fkey";
1604
+ columns: ["organization_id"];
1605
+ isOneToOne: false;
1606
+ referencedRelation: "organizations";
1607
+ referencedColumns: ["id"];
1608
+ }
1609
+ ];
1610
+ };
1566
1611
  deployments: {
1567
1612
  Row: {
1568
1613
  created_at: string;
@@ -3709,7 +3754,11 @@ declare const OrganizationModelSchema: z$1.ZodObject<{
3709
3754
  light: z$1.ZodOptional<z$1.ZodString>;
3710
3755
  dark: z$1.ZodOptional<z$1.ZodString>;
3711
3756
  }, z$1.core.$strip>>;
3712
- }, z$1.core.$strip>>;
3757
+ voice: z$1.ZodOptional<z$1.ZodString>;
3758
+ tagline: z$1.ZodOptional<z$1.ZodString>;
3759
+ values: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
3760
+ themePresetId: z$1.ZodOptional<z$1.ZodString>;
3761
+ }, z$1.core.$loose>>;
3713
3762
  navigation: z$1.ZodDefault<z$1.ZodObject<{
3714
3763
  sidebar: z$1.ZodDefault<z$1.ZodObject<{
3715
3764
  primary: z$1.ZodDefault<z$1.ZodRecord<z$1.ZodString, z$1.ZodType<SidebarNode, unknown, z$1.core.$ZodTypeInternals<SidebarNode, unknown>>>>;
@@ -3756,7 +3805,11 @@ declare const OrganizationModelSchema: z$1.ZodObject<{
3756
3805
  }, z$1.core.$strip>>;
3757
3806
  }, z$1.core.$strip>>;
3758
3807
  clientBrief: z$1.ZodDefault<z$1.ZodString>;
3759
- }, z$1.core.$strip>>;
3808
+ organizationName: z$1.ZodOptional<z$1.ZodString>;
3809
+ productName: z$1.ZodOptional<z$1.ZodString>;
3810
+ shortName: z$1.ZodOptional<z$1.ZodString>;
3811
+ description: z$1.ZodOptional<z$1.ZodString>;
3812
+ }, z$1.core.$loose>>;
3760
3813
  customers: z$1.ZodDefault<z$1.ZodDefault<z$1.ZodRecord<z$1.ZodString, z$1.ZodObject<{
3761
3814
  id: z$1.ZodString;
3762
3815
  order: z$1.ZodNumber;
@@ -1,8 +1,9 @@
1
- export { ElevasisUIProvider, createTestSystemsProvider, useResolvedOrganizationModel } from '../chunk-5CTJ7TW2.js';
2
- import '../chunk-CWYQRM5T.js';
1
+ export { ElevasisUIProvider, createTestSystemsProvider, useResolvedOrganizationModel } from '../chunk-PGWANFNE.js';
2
+ import '../chunk-7ZWXTH5J.js';
3
+ import '../chunk-6D4LCJ52.js';
3
4
  import '../chunk-WF7CONXF.js';
4
5
  import '../chunk-WLOQ4IBG.js';
5
- export { CrmActionsProvider, ElevasisCoreProvider, ListActionsProvider, NotificationProvider, SystemShell, useCrmActions, useListActions, useNotificationAdapter } from '../chunk-JZ2WID2G.js';
6
+ export { CrmActionsProvider, ElevasisCoreProvider, ListActionsProvider, NotificationProvider, SystemShell, useCrmActions, useListActions, useNotificationAdapter } from '../chunk-H2MEFUQD.js';
6
7
  import '../chunk-I53EX4VU.js';
7
8
  import '../chunk-3KMDHCAR.js';
8
9
  import '../chunk-S3XR4II4.js';
@@ -14,11 +15,11 @@ import '../chunk-2IFYDILW.js';
14
15
  import '../chunk-Q7DJKLEN.js';
15
16
  import '../chunk-X66MVMZT.js';
16
17
  import '../chunk-KRWALB24.js';
17
- import '../chunk-JPVZRZ3X.js';
18
- import '../chunk-LCJQ6OWC.js';
19
- export { ElevasisSystemsProvider, useElevasisSystems, useOptionalElevasisSystems } from '../chunk-NYNOMAAS.js';
18
+ import '../chunk-7YXZFS56.js';
19
+ import '../chunk-4O3VAALW.js';
20
+ export { ElevasisSystemsProvider, useElevasisSystems, useOptionalElevasisSystems } from '../chunk-C6BDBZRO.js';
20
21
  import '../chunk-533DUEQY.js';
21
- import '../chunk-NWMPBG4U.js';
22
+ import '../chunk-566XWGPP.js';
22
23
  import '../chunk-DD3CCMCZ.js';
23
24
  import '../chunk-2Q2JQSQO.js';
24
25
  import '../chunk-6ROXVZ3L.js';
@@ -1562,6 +1562,51 @@ type Database = {
1562
1562
  }
1563
1563
  ];
1564
1564
  };
1565
+ deployment_organization_models: {
1566
+ Row: {
1567
+ created_at: string;
1568
+ deployment_id: string;
1569
+ model_hash: string | null;
1570
+ organization_id: string;
1571
+ organization_model: Json;
1572
+ schema_version: string;
1573
+ updated_at: string;
1574
+ };
1575
+ Insert: {
1576
+ created_at?: string;
1577
+ deployment_id: string;
1578
+ model_hash?: string | null;
1579
+ organization_id: string;
1580
+ organization_model: Json;
1581
+ schema_version?: string;
1582
+ updated_at?: string;
1583
+ };
1584
+ Update: {
1585
+ created_at?: string;
1586
+ deployment_id?: string;
1587
+ model_hash?: string | null;
1588
+ organization_id?: string;
1589
+ organization_model?: Json;
1590
+ schema_version?: string;
1591
+ updated_at?: string;
1592
+ };
1593
+ Relationships: [
1594
+ {
1595
+ foreignKeyName: "deployment_organization_models_deployment_id_fkey";
1596
+ columns: ["deployment_id"];
1597
+ isOneToOne: true;
1598
+ referencedRelation: "deployments";
1599
+ referencedColumns: ["id"];
1600
+ },
1601
+ {
1602
+ foreignKeyName: "deployment_organization_models_organization_id_fkey";
1603
+ columns: ["organization_id"];
1604
+ isOneToOne: false;
1605
+ referencedRelation: "organizations";
1606
+ referencedColumns: ["id"];
1607
+ }
1608
+ ];
1609
+ };
1565
1610
  deployments: {
1566
1611
  Row: {
1567
1612
  created_at: string;
@@ -3708,7 +3753,11 @@ declare const OrganizationModelSchema: z$1.ZodObject<{
3708
3753
  light: z$1.ZodOptional<z$1.ZodString>;
3709
3754
  dark: z$1.ZodOptional<z$1.ZodString>;
3710
3755
  }, z$1.core.$strip>>;
3711
- }, z$1.core.$strip>>;
3756
+ voice: z$1.ZodOptional<z$1.ZodString>;
3757
+ tagline: z$1.ZodOptional<z$1.ZodString>;
3758
+ values: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
3759
+ themePresetId: z$1.ZodOptional<z$1.ZodString>;
3760
+ }, z$1.core.$loose>>;
3712
3761
  navigation: z$1.ZodDefault<z$1.ZodObject<{
3713
3762
  sidebar: z$1.ZodDefault<z$1.ZodObject<{
3714
3763
  primary: z$1.ZodDefault<z$1.ZodRecord<z$1.ZodString, z$1.ZodType<SidebarNode, unknown, z$1.core.$ZodTypeInternals<SidebarNode, unknown>>>>;
@@ -3755,7 +3804,11 @@ declare const OrganizationModelSchema: z$1.ZodObject<{
3755
3804
  }, z$1.core.$strip>>;
3756
3805
  }, z$1.core.$strip>>;
3757
3806
  clientBrief: z$1.ZodDefault<z$1.ZodString>;
3758
- }, z$1.core.$strip>>;
3807
+ organizationName: z$1.ZodOptional<z$1.ZodString>;
3808
+ productName: z$1.ZodOptional<z$1.ZodString>;
3809
+ shortName: z$1.ZodOptional<z$1.ZodString>;
3810
+ description: z$1.ZodOptional<z$1.ZodString>;
3811
+ }, z$1.core.$loose>>;
3759
3812
  customers: z$1.ZodDefault<z$1.ZodDefault<z$1.ZodRecord<z$1.ZodString, z$1.ZodObject<{
3760
3813
  id: z$1.ZodString;
3761
3814
  order: z$1.ZodNumber;
@@ -1,4 +1,4 @@
1
- export { ElevasisCoreProvider, NotificationProvider, SystemShell, useNotificationAdapter } from '../chunk-JZ2WID2G.js';
1
+ export { ElevasisCoreProvider, NotificationProvider, SystemShell, useNotificationAdapter } from '../chunk-H2MEFUQD.js';
2
2
  import '../chunk-I53EX4VU.js';
3
3
  import '../chunk-3KMDHCAR.js';
4
4
  import '../chunk-S3XR4II4.js';
@@ -10,11 +10,11 @@ import '../chunk-2IFYDILW.js';
10
10
  import '../chunk-Q7DJKLEN.js';
11
11
  import '../chunk-X66MVMZT.js';
12
12
  import '../chunk-KRWALB24.js';
13
- import '../chunk-JPVZRZ3X.js';
14
- import '../chunk-LCJQ6OWC.js';
15
- export { ElevasisSystemsProvider, useElevasisSystems, useOptionalElevasisSystems } from '../chunk-NYNOMAAS.js';
13
+ import '../chunk-7YXZFS56.js';
14
+ import '../chunk-4O3VAALW.js';
15
+ export { ElevasisSystemsProvider, useElevasisSystems, useOptionalElevasisSystems } from '../chunk-C6BDBZRO.js';
16
16
  import '../chunk-533DUEQY.js';
17
- import '../chunk-NWMPBG4U.js';
17
+ import '../chunk-566XWGPP.js';
18
18
  import '../chunk-DD3CCMCZ.js';
19
19
  import '../chunk-2Q2JQSQO.js';
20
20
  import '../chunk-6ROXVZ3L.js';