@unisim/sdk 0.3.0 → 0.3.2
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.
- package/dist/UniversalNavBar.d.ts +19 -7
- package/dist/UniversalNavBar.d.ts.map +1 -1
- package/dist/UniversalNavBar.js +118 -8
- package/dist/UniversalNavBar.js.map +1 -1
- package/dist/auth.js +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/branding.d.ts +4 -0
- package/dist/branding.d.ts.map +1 -1
- package/dist/branding.js +6 -0
- package/dist/branding.js.map +1 -1
- package/dist/types.d.ts +17 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -10,9 +10,11 @@ export interface UniversalNavBarProps {
|
|
|
10
10
|
productLogo: ReactNode;
|
|
11
11
|
/** Override the dynamic org-name label. When unset, reads from useOrg(). */
|
|
12
12
|
companyLabel?: string;
|
|
13
|
+
/** Override the org icon. When unset, reads from useOrgBranding().icon_url. */
|
|
14
|
+
companyIconUrl?: string | null;
|
|
13
15
|
/**
|
|
14
16
|
* Href for "New Assessment". Standardised to "/new" across the suite.
|
|
15
|
-
* Pass null
|
|
17
|
+
* Pass null to hide the link on a product that doesn't support it yet.
|
|
16
18
|
*/
|
|
17
19
|
newAssessmentHref?: string | null;
|
|
18
20
|
/** Knowledge base content (per-product items + future company-knowledge slot). */
|
|
@@ -26,28 +28,38 @@ export interface UniversalNavBarProps {
|
|
|
26
28
|
productSettings?: SettingsItem[];
|
|
27
29
|
/** Global / cross-product items (Theme, Language, etc.). */
|
|
28
30
|
globalSettings?: SettingsItem[];
|
|
29
|
-
/**
|
|
30
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Override the auto-derived user profile. Pass when the host product has
|
|
33
|
+
* richer profile data (display name, profile photo from its own store).
|
|
34
|
+
* If omitted, the navbar renders a profile button derived from useUser():
|
|
35
|
+
* - anonymous Supabase session → generic icon + "Sign in" item
|
|
36
|
+
* - signed in → email-derived initials + email + Sign out
|
|
37
|
+
*/
|
|
38
|
+
user?: UserProfileProps | null;
|
|
31
39
|
/** A small chip rendered inside the SuiteSwitcher — typically <VersionChip />. */
|
|
32
40
|
versionChip?: ReactNode;
|
|
33
41
|
/** Trigger icon for the SuiteSwitcher. Defaults to the inline UNISIM monogram. */
|
|
34
42
|
suiteSwitcherIconSrc?: string;
|
|
35
43
|
/** Top brand strip — pass false to hide. Default: shown. */
|
|
36
44
|
showBrandStrip?: boolean;
|
|
45
|
+
/** Where the central hub lives. Used for the "Sign in" link on anonymous sessions. */
|
|
46
|
+
hubLoginHref?: string;
|
|
37
47
|
className?: string;
|
|
38
48
|
style?: CSSProperties;
|
|
39
49
|
}
|
|
40
50
|
/**
|
|
41
51
|
* The Universal Suite navigation bar — single source of truth for the header
|
|
42
52
|
* layout across every Assess product. Each product mounts this once and the
|
|
43
|
-
* suite-wide visual identity (gradient strip,
|
|
44
|
-
*
|
|
53
|
+
* suite-wide visual identity (gradient strip, company badge, suite switcher,
|
|
54
|
+
* my-company menu, settings, profile) propagates automatically on the next
|
|
55
|
+
* SDK bump.
|
|
45
56
|
*
|
|
46
57
|
* Layout (left → right):
|
|
47
58
|
* [Brand strip]
|
|
48
59
|
* ┌──────────────────────────────────────────────────────────────────────┐
|
|
49
|
-
* │ [Logo] for [Org] New Assessment · KB · My Company
|
|
60
|
+
* │ [Logo] [Icon] for [Org] New Assessment · KB · My Company │
|
|
61
|
+
* │ · ⚙ · 👤 · ⊞ │
|
|
50
62
|
* └──────────────────────────────────────────────────────────────────────┘
|
|
51
63
|
*/
|
|
52
|
-
export declare function UniversalNavBar({ product, productLogo, companyLabel, newAssessmentHref, knowledgeBase, productSettings, globalSettings, user, versionChip, suiteSwitcherIconSrc, showBrandStrip, className, style, }: UniversalNavBarProps): import("react/jsx-runtime").JSX.Element;
|
|
64
|
+
export declare function UniversalNavBar({ product, productLogo, companyLabel, companyIconUrl, newAssessmentHref, knowledgeBase, productSettings, globalSettings, user, versionChip, suiteSwitcherIconSrc, showBrandStrip, hubLoginHref, className, style, }: UniversalNavBarProps): import("react/jsx-runtime").JSX.Element;
|
|
53
65
|
//# sourceMappingURL=UniversalNavBar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UniversalNavBar.d.ts","sourceRoot":"","sources":["../src/UniversalNavBar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEvE,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClF,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"UniversalNavBar.d.ts","sourceRoot":"","sources":["../src/UniversalNavBar.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEvE,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAClF,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AASrE,MAAM,WAAW,oBAAoB;IAEnC,2EAA2E;IAC3E,OAAO,EAAE,cAAc,CAAA;IACvB,2EAA2E;IAC3E,WAAW,EAAE,SAAS,CAAA;IAGtB,4EAA4E;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAG9B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEjC,kFAAkF;IAClF,aAAa,CAAC,EAAE;QACd,YAAY,CAAC,EAAG,iBAAiB,EAAE,CAAA;QACnC,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,YAAY,CAAC,EAAG,MAAM,CAAA;QACtB,YAAY,CAAC,EAAG,iBAAiB,EAAE,CAAA;KACpC,CAAA;IAGD,yDAAyD;IACzD,eAAe,CAAC,EAAE,YAAY,EAAE,CAAA;IAChC,4DAA4D;IAC5D,cAAc,CAAC,EAAG,YAAY,EAAE,CAAA;IAEhC;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAE9B,kFAAkF;IAClF,WAAW,CAAC,EAAE,SAAS,CAAA;IAEvB,kFAAkF;IAClF,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B,4DAA4D;IAC5D,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB,sFAAsF;IACtF,YAAY,CAAC,EAAE,MAAM,CAAA;IAGrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAM,aAAa,CAAA;CAC1B;AAMD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,iBAA0B,EAC1B,aAAa,EACb,eAAe,EACf,cAAc,EACd,IAAI,EACJ,WAAW,EACX,oBAAoB,EACpB,cAAqB,EACrB,YAA+C,EAC/C,SAAS,EACT,KAAK,GACN,EAAE,oBAAoB,2CAyDtB"}
|
package/dist/UniversalNavBar.js
CHANGED
|
@@ -6,27 +6,106 @@ import { UniversalBar } from './UniversalBar.js';
|
|
|
6
6
|
import { KnowledgeBaseMenu } from './KnowledgeBaseMenu.js';
|
|
7
7
|
import { SettingsMenu } from './SettingsMenu.js';
|
|
8
8
|
import { UserProfile } from './UserProfile.js';
|
|
9
|
-
import { useOrg } from './auth.js';
|
|
9
|
+
import { useOrg, useUser } from './auth.js';
|
|
10
|
+
import { useOrgBranding } from './branding.js';
|
|
11
|
+
import { useUniversal } from './provider.js';
|
|
10
12
|
// ──────────────────────────────────────────────────────────────────────────────
|
|
11
13
|
// Component
|
|
12
14
|
// ──────────────────────────────────────────────────────────────────────────────
|
|
13
15
|
/**
|
|
14
16
|
* The Universal Suite navigation bar — single source of truth for the header
|
|
15
17
|
* layout across every Assess product. Each product mounts this once and the
|
|
16
|
-
* suite-wide visual identity (gradient strip,
|
|
17
|
-
*
|
|
18
|
+
* suite-wide visual identity (gradient strip, company badge, suite switcher,
|
|
19
|
+
* my-company menu, settings, profile) propagates automatically on the next
|
|
20
|
+
* SDK bump.
|
|
18
21
|
*
|
|
19
22
|
* Layout (left → right):
|
|
20
23
|
* [Brand strip]
|
|
21
24
|
* ┌──────────────────────────────────────────────────────────────────────┐
|
|
22
|
-
* │ [Logo] for [Org] New Assessment · KB · My Company
|
|
25
|
+
* │ [Logo] [Icon] for [Org] New Assessment · KB · My Company │
|
|
26
|
+
* │ · ⚙ · 👤 · ⊞ │
|
|
23
27
|
* └──────────────────────────────────────────────────────────────────────┘
|
|
24
28
|
*/
|
|
25
|
-
export function UniversalNavBar({ product, productLogo, companyLabel, newAssessmentHref = '/new', knowledgeBase, productSettings, globalSettings, user, versionChip, suiteSwitcherIconSrc, showBrandStrip = true, className, style, }) {
|
|
26
|
-
//
|
|
29
|
+
export function UniversalNavBar({ product, productLogo, companyLabel, companyIconUrl, newAssessmentHref = '/new', knowledgeBase, productSettings, globalSettings, user, versionChip, suiteSwitcherIconSrc, showBrandStrip = true, hubLoginHref = 'https://app.unisim.co.uk/login', className, style, }) {
|
|
30
|
+
// ── Company label + icon ────────────────────────────────────────────────
|
|
27
31
|
const { org } = useOrg();
|
|
32
|
+
const branding = useOrgBranding();
|
|
28
33
|
const resolvedCompany = companyLabel ?? org?.name ?? 'Your Company';
|
|
29
|
-
|
|
34
|
+
const resolvedIconUrl = companyIconUrl ?? branding.icon_url;
|
|
35
|
+
const initial = (org?.name?.[0] ?? '?').toUpperCase();
|
|
36
|
+
const iconBg = branding.brand_color ?? '#e2e8f0';
|
|
37
|
+
// ── User profile auto-wiring ───────────────────────────────────────────
|
|
38
|
+
const resolvedUser = useResolvedUser(user, hubLoginHref);
|
|
39
|
+
return (_jsxs("div", { className: className, style: style, children: [showBrandStrip && _jsx(UniversalBar, {}), _jsxs("header", { style: headerStyle, children: [_jsxs("div", { style: leftStyle, children: [_jsx("div", { style: { display: 'inline-flex', alignItems: 'center' }, children: productLogo }), _jsx("span", { style: separatorStyle, "aria-hidden": true, children: "\u00B7" }), _jsx(CompanyBadge, { iconUrl: resolvedIconUrl, initial: initial, iconBg: iconBg, hasOrg: !!org }), _jsxs("span", { style: companyLabelStyle, children: [_jsx("span", { style: { color: '#94a3b8', marginRight: 4 }, children: "for" }), _jsx("span", { style: { color: org?.name ? '#0f172a' : '#94a3b8' }, children: resolvedCompany })] })] }), _jsxs("nav", { style: centreStyle, "aria-label": "Primary", children: [newAssessmentHref && (_jsx("a", { href: newAssessmentHref, style: linkStyle, children: "New Assessment" })), knowledgeBase && (_jsx(KnowledgeBaseMenu, { productItems: knowledgeBase.productItems, productKBHref: knowledgeBase.productKBHref, productLabel: knowledgeBase.productLabel, companyItems: knowledgeBase.companyItems })), _jsx(CompanyMenu, {})] }), _jsxs("div", { style: rightStyle, children: [_jsx(SettingsMenu, { productItems: productSettings, globalItems: globalSettings }), _jsx(UserProfile, { ...resolvedUser }), _jsx(SuiteSwitcher, { current: product, iconSrc: suiteSwitcherIconSrc, chip: versionChip })] })] })] }));
|
|
40
|
+
}
|
|
41
|
+
// ──────────────────────────────────────────────────────────────────────────────
|
|
42
|
+
// useResolvedUser — combines an explicit `user` prop with auto-derived data
|
|
43
|
+
// from useUser(). Host products that pass `user` get full control; everyone
|
|
44
|
+
// else gets a sensible default with a "Sign in" item for anonymous sessions.
|
|
45
|
+
// ──────────────────────────────────────────────────────────────────────────────
|
|
46
|
+
function useResolvedUser(override, hubLoginHref) {
|
|
47
|
+
const { user, loading } = useUser();
|
|
48
|
+
const { supabase, session } = useUniversal();
|
|
49
|
+
// Honour an explicit override fully.
|
|
50
|
+
if (override)
|
|
51
|
+
return override;
|
|
52
|
+
// Loading: show a neutral placeholder.
|
|
53
|
+
if (loading) {
|
|
54
|
+
return { name: undefined, email: undefined, initials: '·' };
|
|
55
|
+
}
|
|
56
|
+
// Supabase exposes is_anonymous on the user object; the SDK doesn't surface
|
|
57
|
+
// it directly so we read it off the session.
|
|
58
|
+
const isAnonymous = session?.user?.is_anonymous === true;
|
|
59
|
+
if (!user || isAnonymous) {
|
|
60
|
+
return {
|
|
61
|
+
// Show "Sign in" as the profile item link rather than a sign-out flow.
|
|
62
|
+
name: undefined,
|
|
63
|
+
email: undefined,
|
|
64
|
+
profileHref: hubLoginHref,
|
|
65
|
+
// The avatar fallback shows "?" for anonymous — clean read.
|
|
66
|
+
initials: '?',
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
// Signed-in real user. Use email-derived initials when no display name yet.
|
|
70
|
+
return {
|
|
71
|
+
name: undefined,
|
|
72
|
+
email: user.email ?? undefined,
|
|
73
|
+
initials: emailInitials(user.email),
|
|
74
|
+
onSignOut: () => { void supabase.auth.signOut(); },
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function emailInitials(email) {
|
|
78
|
+
if (!email)
|
|
79
|
+
return '?';
|
|
80
|
+
const local = email.split('@')[0] ?? '';
|
|
81
|
+
if (local.length === 0)
|
|
82
|
+
return '?';
|
|
83
|
+
if (local.length === 1)
|
|
84
|
+
return local[0].toUpperCase();
|
|
85
|
+
return (local[0] + local[1]).toUpperCase();
|
|
86
|
+
}
|
|
87
|
+
// ──────────────────────────────────────────────────────────────────────────────
|
|
88
|
+
// Subcomponents
|
|
89
|
+
// ──────────────────────────────────────────────────────────────────────────────
|
|
90
|
+
function CompanyBadge({ iconUrl, initial, iconBg, hasOrg, }) {
|
|
91
|
+
if (iconUrl) {
|
|
92
|
+
return (_jsx("span", { style: iconImgWrapperStyle, children: _jsx("img", { src: iconUrl, alt: "", "aria-hidden": true, style: iconImgStyle }) }));
|
|
93
|
+
}
|
|
94
|
+
return (_jsx("span", { style: {
|
|
95
|
+
...iconFallbackStyle,
|
|
96
|
+
background: hasOrg ? iconBg : '#e2e8f0',
|
|
97
|
+
color: hasOrg ? readableTextOn(iconBg) : '#94a3b8',
|
|
98
|
+
}, "aria-hidden": true, children: hasOrg ? initial : '·' }));
|
|
99
|
+
}
|
|
100
|
+
function readableTextOn(bgHex) {
|
|
101
|
+
// Naive luminance check — picks white text for dark backgrounds, dark for
|
|
102
|
+
// light. Good enough for the small initials badge; not WCAG-rigorous.
|
|
103
|
+
const m = /^#?([\da-f]{2})([\da-f]{2})([\da-f]{2})$/i.exec(bgHex);
|
|
104
|
+
if (!m)
|
|
105
|
+
return '#0f172a';
|
|
106
|
+
const r = parseInt(m[1], 16), g = parseInt(m[2], 16), b = parseInt(m[3], 16);
|
|
107
|
+
const luminance = (0.299 * r + 0.587 * g + 0.114 * b) / 255;
|
|
108
|
+
return luminance > 0.6 ? '#0f172a' : '#ffffff';
|
|
30
109
|
}
|
|
31
110
|
// ──────────────────────────────────────────────────────────────────────────────
|
|
32
111
|
// Styles
|
|
@@ -47,13 +126,14 @@ const headerStyle = {
|
|
|
47
126
|
const leftStyle = {
|
|
48
127
|
display: 'inline-flex',
|
|
49
128
|
alignItems: 'center',
|
|
50
|
-
gap:
|
|
129
|
+
gap: 8,
|
|
51
130
|
minWidth: 0,
|
|
52
131
|
flexShrink: 0,
|
|
53
132
|
};
|
|
54
133
|
const separatorStyle = {
|
|
55
134
|
color: '#cbd5e1',
|
|
56
135
|
fontSize: 12,
|
|
136
|
+
margin: '0 2px',
|
|
57
137
|
};
|
|
58
138
|
const companyLabelStyle = {
|
|
59
139
|
fontSize: 13,
|
|
@@ -63,6 +143,36 @@ const companyLabelStyle = {
|
|
|
63
143
|
textOverflow: 'ellipsis',
|
|
64
144
|
maxWidth: 240,
|
|
65
145
|
};
|
|
146
|
+
const iconImgWrapperStyle = {
|
|
147
|
+
width: 22,
|
|
148
|
+
height: 22,
|
|
149
|
+
borderRadius: 5,
|
|
150
|
+
overflow: 'hidden',
|
|
151
|
+
display: 'inline-flex',
|
|
152
|
+
alignItems: 'center',
|
|
153
|
+
justifyContent: 'center',
|
|
154
|
+
background: '#ffffff',
|
|
155
|
+
border: '1px solid #e2e8f0',
|
|
156
|
+
flexShrink: 0,
|
|
157
|
+
};
|
|
158
|
+
const iconImgStyle = {
|
|
159
|
+
width: '100%',
|
|
160
|
+
height: '100%',
|
|
161
|
+
objectFit: 'cover',
|
|
162
|
+
display: 'block',
|
|
163
|
+
};
|
|
164
|
+
const iconFallbackStyle = {
|
|
165
|
+
width: 22,
|
|
166
|
+
height: 22,
|
|
167
|
+
borderRadius: 5,
|
|
168
|
+
fontSize: 11,
|
|
169
|
+
fontWeight: 700,
|
|
170
|
+
display: 'inline-flex',
|
|
171
|
+
alignItems: 'center',
|
|
172
|
+
justifyContent: 'center',
|
|
173
|
+
flexShrink: 0,
|
|
174
|
+
letterSpacing: '0.02em',
|
|
175
|
+
};
|
|
66
176
|
const centreStyle = {
|
|
67
177
|
display: 'inline-flex',
|
|
68
178
|
alignItems: 'center',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UniversalNavBar.js","sourceRoot":"","sources":["../src/UniversalNavBar.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAuB,MAAM,oBAAoB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAA0B,MAAM,wBAAwB,CAAA;AAClF,OAAO,EAAE,YAAY,EAAqB,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,WAAW,EAAyB,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"UniversalNavBar.js","sourceRoot":"","sources":["../src/UniversalNavBar.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAGZ,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAuB,MAAM,oBAAoB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAA0B,MAAM,wBAAwB,CAAA;AAClF,OAAO,EAAE,YAAY,EAAqB,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,WAAW,EAAyB,MAAM,kBAAkB,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAkE5C,iFAAiF;AACjF,YAAY;AACZ,iFAAiF;AAEjF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,iBAAiB,GAAG,MAAM,EAC1B,aAAa,EACb,eAAe,EACf,cAAc,EACd,IAAI,EACJ,WAAW,EACX,oBAAoB,EACpB,cAAc,GAAG,IAAI,EACrB,YAAY,GAAG,gCAAgC,EAC/C,SAAS,EACT,KAAK,GACgB;IACrB,2EAA2E;IAC3E,MAAM,EAAE,GAAG,EAAE,GAAK,MAAM,EAAE,CAAA;IAC1B,MAAM,QAAQ,GAAI,cAAc,EAAE,CAAA;IAClC,MAAM,eAAe,GAAG,YAAY,IAAI,GAAG,EAAE,IAAI,IAAI,cAAc,CAAA;IACnE,MAAM,eAAe,GAAG,cAAc,IAAI,QAAQ,CAAC,QAAQ,CAAA;IAC3D,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;IACrD,MAAM,MAAM,GAAI,QAAQ,CAAC,WAAW,IAAI,SAAS,CAAA;IAEjD,0EAA0E;IAC1E,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;IAExD,OAAO,CACL,eAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,aACpC,cAAc,IAAI,KAAC,YAAY,KAAG,EAEnC,kBAAQ,KAAK,EAAE,WAAW,aAExB,eAAK,KAAK,EAAE,SAAS,aACnB,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAG,WAAW,GAAO,EACjF,eAAM,KAAK,EAAE,cAAc,4CAAsB,EACjD,KAAC,YAAY,IAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,GAAI,EAC3F,gBAAM,KAAK,EAAE,iBAAiB,aAC5B,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,oBAAY,EAC7D,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,YAAG,eAAe,GAAQ,IAC9E,IACH,EAGN,eAAK,KAAK,EAAE,WAAW,gBAAa,SAAS,aAC1C,iBAAiB,IAAI,CACpB,YAAG,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,+BAAoB,CACjE,EACA,aAAa,IAAI,CAChB,KAAC,iBAAiB,IAChB,YAAY,EAAE,aAAa,CAAC,YAAY,EACxC,aAAa,EAAE,aAAa,CAAC,aAAa,EAC1C,YAAY,EAAE,aAAa,CAAC,YAAY,EACxC,YAAY,EAAE,aAAa,CAAC,YAAY,GACxC,CACH,EACD,KAAC,WAAW,KAAG,IACX,EAGN,eAAK,KAAK,EAAE,UAAU,aACpB,KAAC,YAAY,IAAC,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,GAAI,EAC5E,KAAC,WAAW,OAAK,YAAY,GAAI,EACjC,KAAC,aAAa,IACZ,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,WAAW,GACjB,IACE,IACC,IACL,CACP,CAAA;AACH,CAAC;AAED,iFAAiF;AACjF,4EAA4E;AAC5E,4EAA4E;AAC5E,6EAA6E;AAC7E,iFAAiF;AAEjF,SAAS,eAAe,CACtB,QAA6C,EAC7C,YAAoB;IAEpB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAA;IACnC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,YAAY,EAAE,CAAA;IAE5C,qCAAqC;IACrC,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAE7B,uCAAuC;IACvC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAA;IAC7D,CAAC;IAED,4EAA4E;IAC5E,6CAA6C;IAC7C,MAAM,WAAW,GAAI,OAAO,EAAE,IAAmC,EAAE,YAAY,KAAK,IAAI,CAAA;IAExF,IAAI,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC;QACzB,OAAO;YACL,uEAAuE;YACvE,IAAI,EAAS,SAAS;YACtB,KAAK,EAAQ,SAAS;YACtB,WAAW,EAAE,YAAY;YACzB,4DAA4D;YAC5D,QAAQ,EAAK,GAAG;SACjB,CAAA;IACH,CAAC;IAED,4EAA4E;IAC5E,OAAO;QACL,IAAI,EAAK,SAAS;QAClB,KAAK,EAAI,IAAI,CAAC,KAAK,IAAI,SAAS;QAChC,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;QACnC,SAAS,EAAE,GAAG,EAAE,GAAG,KAAK,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA,CAAC,CAAC;KAClD,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAoB;IACzC,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAA;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,CAAA;IAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC,WAAW,EAAE,CAAA;IACtD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAE,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,WAAW,EAAE,CAAA;AAC9C,CAAC;AAED,iFAAiF;AACjF,gBAAgB;AAChB,iFAAiF;AAEjF,SAAS,YAAY,CAAC,EACpB,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,GAMP;IACC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,eAAM,KAAK,EAAE,mBAAmB,YAC9B,cAAK,GAAG,EAAE,OAAO,EAAE,GAAG,EAAC,EAAE,uBAAa,KAAK,EAAE,YAAY,GAAI,GACxD,CACR,CAAA;IACH,CAAC;IACD,OAAO,CACL,eACE,KAAK,EAAE;YACL,GAAG,iBAAiB;YACpB,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACvC,KAAK,EAAO,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;SACxD,iCAGA,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAClB,CACR,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,0EAA0E;IAC1E,sEAAsE;IACtE,MAAM,CAAC,GAAG,2CAA2C,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACjE,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IACxB,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,CAAA;IAC/E,MAAM,SAAS,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;IAC3D,OAAO,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;AAChD,CAAC;AAED,iFAAiF;AACjF,SAAS;AACT,iFAAiF;AAEjF,MAAM,WAAW,GAAkB;IACjC,OAAO,EAAS,MAAM;IACtB,UAAU,EAAM,QAAQ;IACxB,cAAc,EAAE,eAAe;IAC/B,GAAG,EAAa,EAAE;IAClB,OAAO,EAAS,WAAW;IAC3B,UAAU,EAAM,SAAS;IACzB,YAAY,EAAI,mBAAmB;IACnC,UAAU,EAAM,sFAAsF;IACtG,KAAK,EAAW,SAAS;IACzB,SAAS,EAAO,EAAE;IAClB,SAAS,EAAO,YAAY;CAC7B,CAAA;AAED,MAAM,SAAS,GAAkB;IAC/B,OAAO,EAAK,aAAa;IACzB,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAS,CAAC;IACb,QAAQ,EAAI,CAAC;IACb,UAAU,EAAE,CAAC;CACd,CAAA;AAED,MAAM,cAAc,GAAkB;IACpC,KAAK,EAAK,SAAS;IACnB,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAI,OAAO;CAClB,CAAA;AAED,MAAM,iBAAiB,GAAkB;IACvC,QAAQ,EAAM,EAAE;IAChB,UAAU,EAAI,GAAG;IACjB,UAAU,EAAI,QAAQ;IACtB,QAAQ,EAAM,QAAQ;IACtB,YAAY,EAAE,UAAU;IACxB,QAAQ,EAAM,GAAG;CAClB,CAAA;AAED,MAAM,mBAAmB,GAAkB;IACzC,KAAK,EAAW,EAAE;IAClB,MAAM,EAAU,EAAE;IAClB,YAAY,EAAI,CAAC;IACjB,QAAQ,EAAQ,QAAQ;IACxB,OAAO,EAAS,aAAa;IAC7B,UAAU,EAAM,QAAQ;IACxB,cAAc,EAAE,QAAQ;IACxB,UAAU,EAAM,SAAS;IACzB,MAAM,EAAU,mBAAmB;IACnC,UAAU,EAAM,CAAC;CAClB,CAAA;AAED,MAAM,YAAY,GAAkB;IAClC,KAAK,EAAM,MAAM;IACjB,MAAM,EAAK,MAAM;IACjB,SAAS,EAAE,OAAO;IAClB,OAAO,EAAI,OAAO;CACnB,CAAA;AAED,MAAM,iBAAiB,GAAkB;IACvC,KAAK,EAAW,EAAE;IAClB,MAAM,EAAU,EAAE;IAClB,YAAY,EAAI,CAAC;IACjB,QAAQ,EAAQ,EAAE;IAClB,UAAU,EAAM,GAAG;IACnB,OAAO,EAAS,aAAa;IAC7B,UAAU,EAAM,QAAQ;IACxB,cAAc,EAAE,QAAQ;IACxB,UAAU,EAAM,CAAC;IACjB,aAAa,EAAG,QAAQ;CACzB,CAAA;AAED,MAAM,WAAW,GAAkB;IACjC,OAAO,EAAK,aAAa;IACzB,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAS,EAAE;IACd,IAAI,EAAQ,CAAC;IACb,UAAU,EAAE,EAAE;IACd,QAAQ,EAAI,CAAC;CACd,CAAA;AAED,MAAM,SAAS,GAAkB;IAC/B,QAAQ,EAAQ,EAAE;IAClB,KAAK,EAAW,SAAS;IACzB,cAAc,EAAE,MAAM;IACtB,UAAU,EAAM,GAAG;IACnB,UAAU,EAAM,aAAa;CAC9B,CAAA;AAED,MAAM,UAAU,GAAkB;IAChC,OAAO,EAAK,aAAa;IACzB,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAS,CAAC;IACb,UAAU,EAAE,CAAC;CACd,CAAA"}
|
package/dist/auth.js
CHANGED
|
@@ -22,7 +22,7 @@ export function useOrg() {
|
|
|
22
22
|
setLoading(true);
|
|
23
23
|
supabase
|
|
24
24
|
.from('organisations')
|
|
25
|
-
.select('id, slug, name, logo_url, brand_color, billing_email')
|
|
25
|
+
.select('id, slug, name, logo_url, icon_url, brand_color, billing_email, people_marked_complete, places_marked_complete, projects_marked_complete')
|
|
26
26
|
.then(({ data, error }) => {
|
|
27
27
|
if (cancelled)
|
|
28
28
|
return;
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAQ5C,MAAM,UAAU,OAAO;IACrB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,YAAY,EAAE,CAAA;IAC3C,OAAO;QACL,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;QACvF,OAAO;KACR,CAAA;AACH,CAAC;AASD,MAAM,UAAU,MAAM;IACpB,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,CAAA;IACzE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAA;IACpD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAE5C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,EAAE,CAAC,CAAA;YACX,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,OAAM;QACR,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,UAAU,CAAC,IAAI,CAAC,CAAA;QAEhB,QAAQ;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAQ5C,MAAM,UAAU,OAAO;IACrB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,YAAY,EAAE,CAAA;IAC3C,OAAO;QACL,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;QACvF,OAAO;KACR,CAAA;AACH,CAAC;AASD,MAAM,UAAU,MAAM;IACpB,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,YAAY,EAAE,CAAA;IACzE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAA;IACpD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAE5C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,EAAE,CAAC,CAAA;YACX,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,OAAM;QACR,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,UAAU,CAAC,IAAI,CAAC,CAAA;QAEhB,QAAQ;aACL,IAAI,CAAC,eAAe,CAAC;aACrB,MAAM,CAAC,0IAA0I,CAAC;aAClJ,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;YACxB,IAAI,SAAS;gBAAE,OAAM;YACrB,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAA;gBACjE,OAAO,CAAC,EAAE,CAAC,CAAA;YACb,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;gBACnB,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,cAAc,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAA;gBAC7B,CAAC;YACH,CAAC;YACD,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC,CAAC,CAAA;QAEJ,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAA;QAClB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,CAAA;IAEpD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,IAAI,IAAI,CAAA;IAE1D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,CAAA;AAC7D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAqD,EACrD,KAAa,EACb,QAAgB;IAEhB,OAAO,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,QAAqD;IACjF,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;AAChC,CAAC"}
|
package/dist/branding.d.ts
CHANGED
|
@@ -2,6 +2,10 @@ import type { OrgBranding } from './types.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* Returns the active org's branding for product UI chrome.
|
|
4
4
|
* Falls back to suite defaults if no org is active or no branding is set.
|
|
5
|
+
*
|
|
6
|
+
* `logo_url` is the full wordmark / horizontal lockup (used in PDFs, hero
|
|
7
|
+
* areas, etc.); `icon_url` is the 1:1 square mark used in compact surfaces
|
|
8
|
+
* like the navbar company badge and suite-switcher tiles.
|
|
5
9
|
*/
|
|
6
10
|
export declare function useOrgBranding(): OrgBranding;
|
|
7
11
|
//# sourceMappingURL=branding.d.ts.map
|
package/dist/branding.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../src/branding.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../src/branding.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAQ7C;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAQ5C"}
|
package/dist/branding.js
CHANGED
|
@@ -2,11 +2,16 @@
|
|
|
2
2
|
import { useOrg } from './auth.js';
|
|
3
3
|
const DEFAULT_BRANDING = {
|
|
4
4
|
logo_url: null,
|
|
5
|
+
icon_url: null,
|
|
5
6
|
brand_color: null,
|
|
6
7
|
};
|
|
7
8
|
/**
|
|
8
9
|
* Returns the active org's branding for product UI chrome.
|
|
9
10
|
* Falls back to suite defaults if no org is active or no branding is set.
|
|
11
|
+
*
|
|
12
|
+
* `logo_url` is the full wordmark / horizontal lockup (used in PDFs, hero
|
|
13
|
+
* areas, etc.); `icon_url` is the 1:1 square mark used in compact surfaces
|
|
14
|
+
* like the navbar company badge and suite-switcher tiles.
|
|
10
15
|
*/
|
|
11
16
|
export function useOrgBranding() {
|
|
12
17
|
const { org } = useOrg();
|
|
@@ -14,6 +19,7 @@ export function useOrgBranding() {
|
|
|
14
19
|
return DEFAULT_BRANDING;
|
|
15
20
|
return {
|
|
16
21
|
logo_url: org.logo_url,
|
|
22
|
+
icon_url: org.icon_url,
|
|
17
23
|
brand_color: org.brand_color,
|
|
18
24
|
};
|
|
19
25
|
}
|
package/dist/branding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branding.js","sourceRoot":"","sources":["../src/branding.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,MAAM,gBAAgB,GAAgB;IACpC,QAAQ,
|
|
1
|
+
{"version":3,"file":"branding.js","sourceRoot":"","sources":["../src/branding.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAGlC,MAAM,gBAAgB,GAAgB;IACpC,QAAQ,EAAK,IAAI;IACjB,QAAQ,EAAK,IAAI;IACjB,WAAW,EAAE,IAAI;CAClB,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;IACxB,IAAI,CAAC,GAAG;QAAE,OAAO,gBAAgB,CAAA;IACjC,OAAO;QACL,QAAQ,EAAK,GAAG,CAAC,QAAQ;QACzB,QAAQ,EAAK,GAAG,CAAC,QAAQ;QACzB,WAAW,EAAE,GAAG,CAAC,WAAW;KAC7B,CAAA;AACH,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -14,11 +14,28 @@ export interface Organisation {
|
|
|
14
14
|
slug: string;
|
|
15
15
|
name: string;
|
|
16
16
|
logo_url: string | null;
|
|
17
|
+
/**
|
|
18
|
+
* Square 1:1 image used in compact surfaces (navbar company badge, suite
|
|
19
|
+
* switcher tiles). Falls back to a coloured initials tile when null.
|
|
20
|
+
* Separate from logo_url so wide/horizontal marks can stay un-cropped where
|
|
21
|
+
* they have room, and the navbar still gets something square to render.
|
|
22
|
+
*/
|
|
23
|
+
icon_url: string | null;
|
|
17
24
|
brand_color: string | null;
|
|
18
25
|
billing_email: string | null;
|
|
26
|
+
/**
|
|
27
|
+
* Admin-toggled "this section is set up the way I want" flags used by the
|
|
28
|
+
* My Company hub at app.unisim.co.uk. Counts alone don't say a section is
|
|
29
|
+
* complete (the admin might be 2/50 done adding people); this lets them
|
|
30
|
+
* tick each card off manually.
|
|
31
|
+
*/
|
|
32
|
+
people_marked_complete: boolean;
|
|
33
|
+
places_marked_complete: boolean;
|
|
34
|
+
projects_marked_complete: boolean;
|
|
19
35
|
}
|
|
20
36
|
export interface OrgBranding {
|
|
21
37
|
logo_url: string | null;
|
|
38
|
+
icon_url: string | null;
|
|
22
39
|
brand_color: string | null;
|
|
23
40
|
}
|
|
24
41
|
export interface OrgMember {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,SAAS,GACT,SAAS,GACT,cAAc,GACd,aAAa,GACb,kBAAkB,GAClB,SAAS,CAAA;AAEb,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,YAAY,CAAA;AACnD,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAClD,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,CAAA;AAC5D,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAEhE,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED