@fayz-ai/core 0.6.0 → 0.7.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.
- package/dist/{chunk-OHRATZZH.cjs → chunk-56GH3WC2.cjs} +2 -2
- package/dist/chunk-56GH3WC2.cjs.map +1 -0
- package/dist/{chunk-EKOH5PRX.js → chunk-BBDNC3FP.js} +2 -2
- package/dist/chunk-BBDNC3FP.js.map +1 -0
- package/dist/{chunk-ATLZ3SGJ.js → chunk-DKX62GP3.js} +3 -3
- package/dist/chunk-DKX62GP3.js.map +1 -0
- package/dist/{chunk-QWUGGF2B.js → chunk-KNIVT6XZ.js} +24 -14
- package/dist/chunk-KNIVT6XZ.js.map +1 -0
- package/dist/{chunk-MTDQDB7M.cjs → chunk-P5OJUH25.cjs} +2 -2
- package/dist/chunk-P5OJUH25.cjs.map +1 -0
- package/dist/{chunk-VXEXM6IY.cjs → chunk-QR7U2URY.cjs} +24 -14
- package/dist/chunk-QR7U2URY.cjs.map +1 -0
- package/dist/{chunk-ILPJFUU6.cjs → chunk-VFW6KHBA.cjs} +3 -3
- package/dist/chunk-VFW6KHBA.cjs.map +1 -0
- package/dist/{chunk-NE4GLVVT.js → chunk-X5THHG6T.js} +2 -2
- package/dist/chunk-X5THHG6T.js.map +1 -0
- package/dist/data/index.cjs +7 -7
- package/dist/data/index.d.ts +2 -2
- package/dist/data/index.d.ts.map +1 -1
- package/dist/data/index.js +1 -1
- package/dist/data/{fayz-api.d.ts → platform-api.d.ts} +1 -1
- package/dist/data/platform-api.d.ts.map +1 -0
- package/dist/data/resolve.d.ts +1 -1
- package/dist/data/resolve.d.ts.map +1 -1
- package/dist/i18n/index.cjs +10 -10
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/shell-translations.d.ts.map +1 -1
- package/dist/index.cjs +33 -33
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -6
- package/dist/index.js.map +1 -1
- package/dist/integrations/index.cjs +2 -2
- package/dist/integrations/index.js +1 -1
- package/dist/testing/index.cjs +4 -4
- package/dist/testing/index.js +1 -1
- package/dist/types/auth.d.ts +17 -1
- package/dist/types/auth.d.ts.map +1 -1
- package/dist/types/crud.d.ts +4 -0
- package/dist/types/crud.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/plugins.d.ts +7 -53
- package/dist/types/plugins.d.ts.map +1 -1
- package/dist/types/theme.d.ts +0 -12
- package/dist/types/theme.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/data/index.ts +2 -2
- package/src/data/resolve.ts +1 -1
- package/src/i18n/index.ts +12 -10
- package/src/i18n/shell-translations.ts +10 -0
- package/src/index.ts +4 -4
- package/src/integrations/index.ts +1 -1
- package/src/testing/index.ts +1 -1
- package/src/types/auth.ts +12 -1
- package/src/types/crud.ts +4 -0
- package/src/types/index.ts +2 -2
- package/src/types/plugins.ts +7 -55
- package/src/types/theme.ts +4 -13
- package/dist/chunk-ATLZ3SGJ.js.map +0 -1
- package/dist/chunk-EKOH5PRX.js.map +0 -1
- package/dist/chunk-ILPJFUU6.cjs.map +0 -1
- package/dist/chunk-MTDQDB7M.cjs.map +0 -1
- package/dist/chunk-NE4GLVVT.js.map +0 -1
- package/dist/chunk-OHRATZZH.cjs.map +0 -1
- package/dist/chunk-QWUGGF2B.js.map +0 -1
- package/dist/chunk-VXEXM6IY.cjs.map +0 -1
- package/dist/data/fayz-api.d.ts.map +0 -1
- /package/src/data/{fayz-api.ts → platform-api.ts} +0 -0
package/dist/types/plugins.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
|
-
import type { EntityDef
|
|
2
|
+
import type { EntityDef } from './crud';
|
|
3
3
|
import type { FeatureDeclaration, PermissionAction } from './permissions';
|
|
4
4
|
import type { ConnectorDefinition } from '../integrations';
|
|
5
5
|
export type VerticalId = 'beauty' | 'food' | 'health' | 'services' | 'retail' | 'education' | (string & {});
|
|
@@ -101,9 +101,12 @@ export interface PluginWidgetDefinition<TConfig extends Record<string, unknown>
|
|
|
101
101
|
props?: TConfig;
|
|
102
102
|
}
|
|
103
103
|
export type DashboardWidgetKind = 'kpi' | 'chart' | 'table' | 'onboarding' | 'custom';
|
|
104
|
-
/** Surfaces a widget can appear on. 'home' = global app home
|
|
105
|
-
*
|
|
106
|
-
|
|
104
|
+
/** Surfaces a widget can appear on. 'home' = global app home (the universal
|
|
105
|
+
* business dashboard every app renders via createDashboardPlugin);
|
|
106
|
+
* 'plugin-home' = the owning plugin's own overview page; 'finance-home' = a
|
|
107
|
+
* dedicated B2C consumer-finance home (norman-ai's phone-first money screen),
|
|
108
|
+
* kept separate so its full-bleed hero/cards never leak onto the B2B 'home'. */
|
|
109
|
+
export type DashboardSurface = 'home' | 'plugin-home' | 'finance-home';
|
|
107
110
|
export interface DashboardWidgetDef<TProps extends Record<string, unknown> = Record<string, unknown>> {
|
|
108
111
|
/** Globally unique id, e.g. 'crm.kpi.total-leads'. */
|
|
109
112
|
id: string;
|
|
@@ -223,43 +226,6 @@ export interface PluginOnboarding {
|
|
|
223
226
|
title?: string;
|
|
224
227
|
description?: string;
|
|
225
228
|
}
|
|
226
|
-
/**
|
|
227
|
-
* A server-side action or workflow a plugin exposes. The action runs *behind the
|
|
228
|
-
* Fayz boundary* — a Supabase Edge Function or an RPC, never in the app — so
|
|
229
|
-
* provider credentials stay server-side (see docs/architecture-boundaries.md §4).
|
|
230
|
-
* Declared as data so the AppManifest can bind triggers→actions and the AI can
|
|
231
|
-
* call them safely. Implementation wiring is intentionally lazy; this reserves the
|
|
232
|
-
* contract shape.
|
|
233
|
-
*/
|
|
234
|
-
export interface PluginServerAction {
|
|
235
|
-
id: string;
|
|
236
|
-
name: string;
|
|
237
|
-
description?: string;
|
|
238
|
-
/** How the action is executed behind the Fayz boundary. */
|
|
239
|
-
kind: 'edge-function' | 'rpc';
|
|
240
|
-
/** Edge function name or RPC name to invoke. */
|
|
241
|
-
handler: string;
|
|
242
|
-
/** JSON Schema for the action input (editor / AI / validation). */
|
|
243
|
-
inputSchema?: Record<string, unknown>;
|
|
244
|
-
/** JSON Schema for the action result. */
|
|
245
|
-
outputSchema?: Record<string, unknown>;
|
|
246
|
-
permission?: PluginPermissionRequirement;
|
|
247
|
-
/** Event name(s) that trigger this action when emitted on the bus. */
|
|
248
|
-
triggers?: string[];
|
|
249
|
-
}
|
|
250
|
-
/**
|
|
251
|
-
* Custom fields a plugin adds to an entity *without editing that entity's owner*.
|
|
252
|
-
* The fields are persisted on an extension table / JSONB column resolved by the
|
|
253
|
-
* data provider — the declarative seam behind layer-C (private extension) custom
|
|
254
|
-
* fields. See docs/architecture-boundaries.md §5.
|
|
255
|
-
*/
|
|
256
|
-
export interface PluginCustomFieldsDef {
|
|
257
|
-
/** Entity key these fields extend, e.g. 'crm.client'. */
|
|
258
|
-
entity: string;
|
|
259
|
-
fields: FieldDef[];
|
|
260
|
-
/** Extension table that stores them; provider convention applies when omitted. */
|
|
261
|
-
table?: string;
|
|
262
|
-
}
|
|
263
229
|
/**
|
|
264
230
|
* A health check a plugin contributes to the diagnostics / boot report surfaced by
|
|
265
231
|
* `fayz doctor`. Declared as data so the platform can verify a plugin's backend
|
|
@@ -317,22 +283,10 @@ export interface PluginManifest {
|
|
|
317
283
|
*/
|
|
318
284
|
connectors?: ConnectorDefinition[];
|
|
319
285
|
migrations?: PluginMigration[];
|
|
320
|
-
/** Server-side actions/workflows the plugin exposes behind the Fayz boundary. */
|
|
321
|
-
serverActions?: PluginServerAction[];
|
|
322
|
-
/** Custom fields this plugin adds to entities it does not own. */
|
|
323
|
-
customFields?: PluginCustomFieldsDef[];
|
|
324
286
|
/** Backend prerequisites the plugin needs; surfaced by `fayz doctor`. */
|
|
325
287
|
diagnostics?: PluginDiagnostic[];
|
|
326
288
|
onboarding?: PluginOnboarding;
|
|
327
289
|
locales?: Record<string, Record<string, string>>;
|
|
328
|
-
/** Marketplace metadata for npm discovery */
|
|
329
|
-
marketplace?: {
|
|
330
|
-
category: string;
|
|
331
|
-
tags: string[];
|
|
332
|
-
author: string;
|
|
333
|
-
license: string;
|
|
334
|
-
repository?: string;
|
|
335
|
-
};
|
|
336
290
|
}
|
|
337
291
|
export interface TenantPluginBinding {
|
|
338
292
|
pluginId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/types/plugins.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/types/plugins.ts"],"names":[],"mappings":"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"}
|
package/dist/types/theme.d.ts
CHANGED
|
@@ -1,16 +1,4 @@
|
|
|
1
1
|
export type ThemeBrand = 'blue' | 'violet' | 'green' | 'orange' | 'red' | 'pink' | 'teal' | (string & {});
|
|
2
2
|
export type ThemeRadius = 'none' | 'sm' | 'md' | 'lg' | 'full';
|
|
3
3
|
export type ThemeMode = 'light' | 'dark' | 'system';
|
|
4
|
-
export interface SaasTheme {
|
|
5
|
-
brand?: ThemeBrand;
|
|
6
|
-
radius?: ThemeRadius;
|
|
7
|
-
/** Custom primary color as HSL string, e.g. '220 70% 50%' */
|
|
8
|
-
primaryHsl?: string;
|
|
9
|
-
/** Custom secondary color as HSL string */
|
|
10
|
-
secondaryHsl?: string;
|
|
11
|
-
}
|
|
12
|
-
export interface ThemeConfig {
|
|
13
|
-
theme?: SaasTheme;
|
|
14
|
-
defaultMode?: ThemeMode;
|
|
15
|
-
}
|
|
16
4
|
//# sourceMappingURL=theme.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/types/theme.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AACzG,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAA;AAC9D,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAA
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/types/theme.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AACzG,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAA;AAC9D,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fayz-ai/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Fayz SDK core — data providers, entity system, plugin runtime, i18n, routing",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"dependencies": {
|
|
80
80
|
"@supabase/supabase-js": "^2.45.0",
|
|
81
81
|
"zustand": "^4.5.0",
|
|
82
|
-
"@fayz-ai/sdk": "^0.6.
|
|
82
|
+
"@fayz-ai/sdk": "^0.6.5"
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
85
|
"@types/react": "^18.3.0",
|
package/src/data/index.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { createSupabaseProvider, setGlobalSupabaseClient, getSupabaseClientOptional } from './supabase'
|
|
2
|
-
export { createFayzApiProvider } from './
|
|
2
|
+
export { createFayzApiProvider } from './platform-api'
|
|
3
3
|
export { createMockProvider } from './mock'
|
|
4
4
|
export { resolveDataProvider } from './resolve'
|
|
5
5
|
export type { DataProvider, CrudQuery, CrudResult } from './types'
|
|
6
6
|
export type { SupabaseProviderConfig } from './supabase'
|
|
7
|
-
export type { FayzApiProviderConfig } from './
|
|
7
|
+
export type { FayzApiProviderConfig } from './platform-api'
|
|
8
8
|
export type { ResolveDataProviderOptions } from './resolve'
|
package/src/data/resolve.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { getSupabaseClientOptional } from './supabase'
|
|
|
5
5
|
import { createSupabaseProvider } from './supabase'
|
|
6
6
|
import { createArchetypeProvider } from './archetype'
|
|
7
7
|
import { createMockProvider } from './mock'
|
|
8
|
-
import { createFayzApiProvider, type FayzApiProviderConfig } from './
|
|
8
|
+
import { createFayzApiProvider, type FayzApiProviderConfig } from './platform-api'
|
|
9
9
|
import { withCache } from './cached'
|
|
10
10
|
import { getActiveTenantId } from '../tenant'
|
|
11
11
|
|
package/src/i18n/index.ts
CHANGED
|
@@ -57,22 +57,22 @@ let _localeStore: LocaleStore = {
|
|
|
57
57
|
locale: 'en',
|
|
58
58
|
setLocale: (l) => { _localeStore.locale = l },
|
|
59
59
|
}
|
|
60
|
+
const _localeListeners = new Set<() => void>()
|
|
60
61
|
|
|
61
62
|
export function setLocaleStore(store: LocaleStore): void {
|
|
62
63
|
_localeStore = store
|
|
63
64
|
}
|
|
64
65
|
|
|
65
66
|
function useLocaleStore(): LocaleStore {
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}, [])
|
|
75
|
-
return _localeStore
|
|
67
|
+
const locale = React.useSyncExternalStore(
|
|
68
|
+
(listener) => {
|
|
69
|
+
_localeListeners.add(listener)
|
|
70
|
+
return () => _localeListeners.delete(listener)
|
|
71
|
+
},
|
|
72
|
+
getCurrentLocale,
|
|
73
|
+
getCurrentLocale,
|
|
74
|
+
)
|
|
75
|
+
return React.useMemo(() => ({ locale, setLocale: setCurrentLocale }), [locale])
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
export function getCurrentLocale(): string {
|
|
@@ -80,7 +80,9 @@ export function getCurrentLocale(): string {
|
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
export function setCurrentLocale(locale: string): void {
|
|
83
|
+
if (_localeStore.locale === locale) return
|
|
83
84
|
_localeStore.setLocale(locale)
|
|
85
|
+
_localeListeners.forEach((listener) => listener())
|
|
84
86
|
}
|
|
85
87
|
|
|
86
88
|
// Core built-in translations
|
|
@@ -413,6 +413,8 @@ export const shellTranslations: Record<string, Record<string, string>> = {
|
|
|
413
413
|
"organization.orgNamePlaceholder": "Organization name",
|
|
414
414
|
"organization.permissions.createCustom": "Create Custom Profile",
|
|
415
415
|
"organization.permissions.createProfile": "Create Profile",
|
|
416
|
+
"organization.permissions.duplicate": "Duplicate",
|
|
417
|
+
"organization.permissions.copyName": "{{name}} (copy)",
|
|
416
418
|
"organization.permissions.description": "Description",
|
|
417
419
|
"organization.permissions.descriptionPlaceholder": "Optional description",
|
|
418
420
|
"organization.permissions.editProfile": "Edit: {{name}}",
|
|
@@ -440,6 +442,9 @@ export const shellTranslations: Record<string, Record<string, string>> = {
|
|
|
440
442
|
"organization.team.removeMember": "Remove member",
|
|
441
443
|
"organization.team.resend": "Resend",
|
|
442
444
|
"organization.team.revoke": "Revoke",
|
|
445
|
+
"organization.team.inviteResent": "Invite resent",
|
|
446
|
+
"organization.team.inviteRevoked": "Invite revoked",
|
|
447
|
+
"organization.team.inviteActionFailed": "Couldn't complete that",
|
|
443
448
|
"organization.team.role": "Role",
|
|
444
449
|
"organization.team.sent": "Sent {{date}}",
|
|
445
450
|
"organization.team.title": "Members",
|
|
@@ -1028,6 +1033,8 @@ export const shellTranslations: Record<string, Record<string, string>> = {
|
|
|
1028
1033
|
"organization.invite.title": "Convidar Membros da Equipe",
|
|
1029
1034
|
"organization.permissions.createCustom": "Criar Perfil Personalizado",
|
|
1030
1035
|
"organization.permissions.createProfile": "Criar Perfil",
|
|
1036
|
+
"organization.permissions.duplicate": "Duplicar",
|
|
1037
|
+
"organization.permissions.copyName": "{{name}} (cópia)",
|
|
1031
1038
|
"organization.permissions.description": "Descrição",
|
|
1032
1039
|
"organization.permissions.descriptionPlaceholder": "Descrição opcional",
|
|
1033
1040
|
"organization.permissions.editProfile": "Editar: {{name}}",
|
|
@@ -1055,6 +1062,9 @@ export const shellTranslations: Record<string, Record<string, string>> = {
|
|
|
1055
1062
|
"organization.team.removeMember": "Remover membro",
|
|
1056
1063
|
"organization.team.resend": "Reenviar",
|
|
1057
1064
|
"organization.team.revoke": "Revogar",
|
|
1065
|
+
"organization.team.inviteResent": "Convite reenviado",
|
|
1066
|
+
"organization.team.inviteRevoked": "Convite revogado",
|
|
1067
|
+
"organization.team.inviteActionFailed": "Não foi possível concluir",
|
|
1058
1068
|
"organization.team.role": "Função",
|
|
1059
1069
|
"organization.team.sent": "Enviado {{date}}",
|
|
1060
1070
|
"organization.team.title": "Membros",
|
package/src/index.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
// Types
|
|
2
2
|
export type { EntityArchetype, BaseEntity, PersonEntity, ProductEntity, ServiceEntity, OrderEntity, TransactionEntity, LocationEntity, ScheduleEntity, CategoryEntity } from './types/entities'
|
|
3
3
|
export type { EntityDef, FieldDef, FieldType, FieldRelation, FieldGroup, DetailTab, FormLayout, ComputedFieldValue } from './types/crud'
|
|
4
|
-
export type { PluginManifest, PluginScope, PluginStatus, ResolvedPluginManifest, PluginRuntime, PluginRuntimeContext, PluginWidgetZone, PluginWidgetDefinition, PluginNavigationEntry, PluginSettingsTab, PluginRouteDefinition, PluginAITool, PluginRegistryDef, PluginMigration,
|
|
4
|
+
export type { PluginManifest, PluginScope, PluginStatus, ResolvedPluginManifest, PluginRuntime, PluginRuntimeContext, PluginWidgetZone, PluginWidgetDefinition, PluginNavigationEntry, PluginSettingsTab, PluginRouteDefinition, PluginAITool, PluginRegistryDef, PluginMigration, PluginDiagnostic, VerticalId, ScaffoldType, TenantPluginBinding, DashboardWidgetDef, DashboardWidgetKind, DashboardSurface, DashboardLayoutConfig, ResolvedDashboardWidget } from './types/plugins'
|
|
5
5
|
export { WidgetZone } from './types/plugins'
|
|
6
6
|
export type { AuthAdapter, AuthUser, AuthSession, AuthProvider } from './types/auth'
|
|
7
7
|
export type { OrgAdapter, Organization, OrgMember, OrgMembership, Location, Invite, CreateOrgOptions } from './types/org'
|
|
8
|
-
export type { PermissionsConfig, FeatureDeclaration, PermissionAction, PermissionProfile } from './types/permissions'
|
|
8
|
+
export type { PermissionsConfig, FeatureDeclaration, PermissionAction, PermissionProfile, SystemPermission } from './types/permissions'
|
|
9
9
|
export type { Plan, BillingConfig } from './types/billing'
|
|
10
|
-
export type {
|
|
10
|
+
export type { ThemeBrand, ThemeRadius, ThemeMode } from './types/theme'
|
|
11
11
|
export type { LocaleConfig } from './types/i18n'
|
|
12
12
|
|
|
13
13
|
// Data providers
|
|
14
14
|
export { createSupabaseProvider, setGlobalSupabaseClient, getSupabaseClientOptional } from './data/supabase'
|
|
15
|
-
export { createFayzApiProvider } from './data/
|
|
15
|
+
export { createFayzApiProvider } from './data/platform-api'
|
|
16
16
|
export { createMockProvider } from './data/mock'
|
|
17
17
|
export { createArchetypeProvider } from './data/archetype'
|
|
18
18
|
export { withCache } from './data/cached'
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// upserts) runs in the data plane — typically a Supabase Edge Function — while
|
|
9
9
|
// the control plane (a settings tab + this contract) lives in the app/plugin.
|
|
10
10
|
//
|
|
11
|
-
// Design notes live in docs/bling-integration-brief.md. Proven precedents:
|
|
11
|
+
// Design notes live in docs/design/bling-integration-brief.md. Proven precedents:
|
|
12
12
|
// the Fayz runtime OAuth broker (packages/core/src/runtime/oauth.ts) and the
|
|
13
13
|
// bank-statement edge functions in the predecessor app.
|
|
14
14
|
import type * as React from 'react'
|
package/src/testing/index.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
// platform contract BEFORE it can ship. A plugin that fails these would break
|
|
7
7
|
// the host app at mount time (missing route component, duplicate ids, malformed
|
|
8
8
|
// settings tab). Pair with a capability test (does the plugin do its job?) — see
|
|
9
|
-
//
|
|
9
|
+
// docs/PLUGIN-PATTERNS.md → capability anatomy. These throw on the first violation.
|
|
10
10
|
import type { PluginManifest } from '../types/plugins'
|
|
11
11
|
import type { Connector } from '../integrations'
|
|
12
12
|
|
package/src/types/auth.ts
CHANGED
|
@@ -22,5 +22,16 @@ export interface AuthAdapter {
|
|
|
22
22
|
signUp(email: string, password: string, fullName: string): Promise<AuthSession>
|
|
23
23
|
signOut(): Promise<void>
|
|
24
24
|
signInWithOAuth(provider: AuthProvider): Promise<void>
|
|
25
|
-
resetPassword(email: string): Promise<void>
|
|
25
|
+
resetPassword(email: string, options?: { redirectTo?: string }): Promise<void>
|
|
26
|
+
updatePassword?(password: string): Promise<AuthSession | void>
|
|
27
|
+
handleCallback?(url?: string): Promise<AuthSession | null>
|
|
28
|
+
/**
|
|
29
|
+
* Invite a user by e-mail via the provider's admin invite endpoint (e.g. Supabase
|
|
30
|
+
* GoTrue `auth.admin.inviteUserByEmail`). Creates the auth user in an "invited"
|
|
31
|
+
* state and sends the invite e-mail. `data` is written to the user's metadata so
|
|
32
|
+
* an accept-time trigger can provision membership (tenant_id/role). Requires a
|
|
33
|
+
* privileged path (service-role edge function) — not callable from the anon client.
|
|
34
|
+
* Optional: adapters without an admin path (mock) may omit it.
|
|
35
|
+
*/
|
|
36
|
+
inviteUser?(email: string, options?: { redirectTo?: string; data?: Record<string, unknown> }): Promise<void>
|
|
26
37
|
}
|
package/src/types/crud.ts
CHANGED
|
@@ -87,6 +87,10 @@ export interface DetailTab {
|
|
|
87
87
|
id: string
|
|
88
88
|
label: string
|
|
89
89
|
icon?: string
|
|
90
|
+
/** Legacy or compatibility route ids that should resolve to this tab. */
|
|
91
|
+
aliases?: string[]
|
|
92
|
+
/** Hide an inherited/archetype tab while still allowing the app to override it by id. */
|
|
93
|
+
hidden?: boolean
|
|
90
94
|
/** Tab content component, or a registered component id (componentId) for a
|
|
91
95
|
* serializable EntityDef. Exactly one is expected. */
|
|
92
96
|
component?: React.ComponentType<{ item: unknown; entityDef: EntityDef; [key: string]: unknown }>
|
package/src/types/index.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// Re-export all core types
|
|
2
2
|
export type { EntityArchetype, BaseEntity, PersonEntity, ProductEntity, ServiceEntity, OrderEntity, TransactionEntity, LocationEntity, ScheduleEntity, CategoryEntity } from './entities'
|
|
3
3
|
export type { EntityDef, FieldDef, FieldType, FieldRelation, FieldGroup, DetailTab, FormLayout, ComputedFieldValue } from './crud'
|
|
4
|
-
export type { PluginManifest, PluginScope, PluginStatus, ResolvedPluginManifest, PluginRuntime, PluginRuntimeContext, PluginWidgetZone, PluginWidgetDefinition, PluginNavigationEntry, PluginSettingsTab, PluginRouteDefinition, PluginAITool, PluginRegistryDef, PluginMigration,
|
|
4
|
+
export type { PluginManifest, PluginScope, PluginStatus, ResolvedPluginManifest, PluginRuntime, PluginRuntimeContext, PluginWidgetZone, PluginWidgetDefinition, PluginNavigationEntry, PluginSettingsTab, PluginRouteDefinition, PluginAITool, PluginRegistryDef, PluginMigration, PluginDiagnostic, VerticalId, ScaffoldType } from './plugins'
|
|
5
5
|
export type { AuthAdapter, AuthUser, AuthSession } from './auth'
|
|
6
6
|
export type { OrgAdapter, Organization, OrgMember } from './org'
|
|
7
7
|
export type { PermissionsConfig, FeatureDeclaration, PermissionAction } from './permissions'
|
|
8
8
|
export type { Plan, BillingConfig } from './billing'
|
|
9
|
-
export type {
|
|
9
|
+
export type { ThemeBrand, ThemeRadius, ThemeMode } from './theme'
|
|
10
10
|
export type { LocaleConfig } from './i18n'
|
package/src/types/plugins.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type React from 'react'
|
|
2
|
-
import type { EntityDef
|
|
2
|
+
import type { EntityDef } from './crud'
|
|
3
3
|
import type { FeatureDeclaration, PermissionAction } from './permissions'
|
|
4
4
|
import type { ConnectorDefinition } from '../integrations'
|
|
5
5
|
|
|
@@ -131,9 +131,12 @@ export interface PluginWidgetDefinition<TConfig extends Record<string, unknown>
|
|
|
131
131
|
|
|
132
132
|
export type DashboardWidgetKind = 'kpi' | 'chart' | 'table' | 'onboarding' | 'custom'
|
|
133
133
|
|
|
134
|
-
/** Surfaces a widget can appear on. 'home' = global app home
|
|
135
|
-
*
|
|
136
|
-
|
|
134
|
+
/** Surfaces a widget can appear on. 'home' = global app home (the universal
|
|
135
|
+
* business dashboard every app renders via createDashboardPlugin);
|
|
136
|
+
* 'plugin-home' = the owning plugin's own overview page; 'finance-home' = a
|
|
137
|
+
* dedicated B2C consumer-finance home (norman-ai's phone-first money screen),
|
|
138
|
+
* kept separate so its full-bleed hero/cards never leak onto the B2B 'home'. */
|
|
139
|
+
export type DashboardSurface = 'home' | 'plugin-home' | 'finance-home'
|
|
137
140
|
|
|
138
141
|
export interface DashboardWidgetDef<TProps extends Record<string, unknown> = Record<string, unknown>> {
|
|
139
142
|
/** Globally unique id, e.g. 'crm.kpi.total-leads'. */
|
|
@@ -261,45 +264,6 @@ export interface PluginOnboarding {
|
|
|
261
264
|
description?: string
|
|
262
265
|
}
|
|
263
266
|
|
|
264
|
-
/**
|
|
265
|
-
* A server-side action or workflow a plugin exposes. The action runs *behind the
|
|
266
|
-
* Fayz boundary* — a Supabase Edge Function or an RPC, never in the app — so
|
|
267
|
-
* provider credentials stay server-side (see docs/architecture-boundaries.md §4).
|
|
268
|
-
* Declared as data so the AppManifest can bind triggers→actions and the AI can
|
|
269
|
-
* call them safely. Implementation wiring is intentionally lazy; this reserves the
|
|
270
|
-
* contract shape.
|
|
271
|
-
*/
|
|
272
|
-
export interface PluginServerAction {
|
|
273
|
-
id: string
|
|
274
|
-
name: string
|
|
275
|
-
description?: string
|
|
276
|
-
/** How the action is executed behind the Fayz boundary. */
|
|
277
|
-
kind: 'edge-function' | 'rpc'
|
|
278
|
-
/** Edge function name or RPC name to invoke. */
|
|
279
|
-
handler: string
|
|
280
|
-
/** JSON Schema for the action input (editor / AI / validation). */
|
|
281
|
-
inputSchema?: Record<string, unknown>
|
|
282
|
-
/** JSON Schema for the action result. */
|
|
283
|
-
outputSchema?: Record<string, unknown>
|
|
284
|
-
permission?: PluginPermissionRequirement
|
|
285
|
-
/** Event name(s) that trigger this action when emitted on the bus. */
|
|
286
|
-
triggers?: string[]
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
/**
|
|
290
|
-
* Custom fields a plugin adds to an entity *without editing that entity's owner*.
|
|
291
|
-
* The fields are persisted on an extension table / JSONB column resolved by the
|
|
292
|
-
* data provider — the declarative seam behind layer-C (private extension) custom
|
|
293
|
-
* fields. See docs/architecture-boundaries.md §5.
|
|
294
|
-
*/
|
|
295
|
-
export interface PluginCustomFieldsDef {
|
|
296
|
-
/** Entity key these fields extend, e.g. 'crm.client'. */
|
|
297
|
-
entity: string
|
|
298
|
-
fields: FieldDef[]
|
|
299
|
-
/** Extension table that stores them; provider convention applies when omitted. */
|
|
300
|
-
table?: string
|
|
301
|
-
}
|
|
302
|
-
|
|
303
267
|
/**
|
|
304
268
|
* A health check a plugin contributes to the diagnostics / boot report surfaced by
|
|
305
269
|
* `fayz doctor`. Declared as data so the platform can verify a plugin's backend
|
|
@@ -358,22 +322,10 @@ export interface PluginManifest {
|
|
|
358
322
|
*/
|
|
359
323
|
connectors?: ConnectorDefinition[]
|
|
360
324
|
migrations?: PluginMigration[]
|
|
361
|
-
/** Server-side actions/workflows the plugin exposes behind the Fayz boundary. */
|
|
362
|
-
serverActions?: PluginServerAction[]
|
|
363
|
-
/** Custom fields this plugin adds to entities it does not own. */
|
|
364
|
-
customFields?: PluginCustomFieldsDef[]
|
|
365
325
|
/** Backend prerequisites the plugin needs; surfaced by `fayz doctor`. */
|
|
366
326
|
diagnostics?: PluginDiagnostic[]
|
|
367
327
|
onboarding?: PluginOnboarding
|
|
368
328
|
locales?: Record<string, Record<string, string>>
|
|
369
|
-
/** Marketplace metadata for npm discovery */
|
|
370
|
-
marketplace?: {
|
|
371
|
-
category: string
|
|
372
|
-
tags: string[]
|
|
373
|
-
author: string
|
|
374
|
-
license: string
|
|
375
|
-
repository?: string
|
|
376
|
-
}
|
|
377
329
|
}
|
|
378
330
|
|
|
379
331
|
export interface TenantPluginBinding {
|
package/src/types/theme.ts
CHANGED
|
@@ -2,16 +2,7 @@ export type ThemeBrand = 'blue' | 'violet' | 'green' | 'orange' | 'red' | 'pink'
|
|
|
2
2
|
export type ThemeRadius = 'none' | 'sm' | 'md' | 'lg' | 'full'
|
|
3
3
|
export type ThemeMode = 'light' | 'dark' | 'system'
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
primaryHsl?: string
|
|
10
|
-
/** Custom secondary color as HSL string */
|
|
11
|
-
secondaryHsl?: string
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export interface ThemeConfig {
|
|
15
|
-
theme?: SaasTheme
|
|
16
|
-
defaultMode?: ThemeMode
|
|
17
|
-
}
|
|
5
|
+
// NB: the friendly admin theme shape (SaasTheme) is owned by @fayz-ai/saas
|
|
6
|
+
// (shell/config/theme/tokens.ts). A conflicting duplicate used to live here —
|
|
7
|
+
// deleted in the Phase-0 foundation cleanup; core only keeps the primitive
|
|
8
|
+
// theme unions above.
|