@fayz-ai/saas 0.8.1 → 0.8.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/access/context.d.ts +47 -0
- package/dist/access/context.d.ts.map +1 -0
- package/dist/access/headless.d.ts +21 -0
- package/dist/access/headless.d.ts.map +1 -0
- package/dist/access/index.d.ts +12 -0
- package/dist/access/index.d.ts.map +1 -0
- package/dist/access/limits-registry.d.ts +33 -0
- package/dist/access/limits-registry.d.ts.map +1 -0
- package/dist/access/module-nav.d.ts +15 -0
- package/dist/access/module-nav.d.ts.map +1 -0
- package/dist/access/resolver.d.ts +2 -0
- package/dist/access/resolver.d.ts.map +1 -0
- package/dist/access/types.d.ts +43 -0
- package/dist/access/types.d.ts.map +1 -0
- package/dist/access/upgrade-modal-store.d.ts +23 -0
- package/dist/access/upgrade-modal-store.d.ts.map +1 -0
- package/dist/app/AdminShell.d.ts +3 -0
- package/dist/app/AdminShell.d.ts.map +1 -1
- package/dist/app/admin-app.d.ts +3 -1
- package/dist/app/admin-app.d.ts.map +1 -1
- package/dist/app/config.d.ts +47 -2
- package/dist/app/config.d.ts.map +1 -1
- package/dist/app/core-entities.d.ts +25 -0
- package/dist/app/core-entities.d.ts.map +1 -0
- package/dist/app/derive-contract.d.ts +8 -0
- package/dist/app/derive-contract.d.ts.map +1 -0
- package/dist/app/scaffold.d.ts.map +1 -1
- package/dist/archetype-lookup.d.ts.map +1 -1
- package/dist/billing/index.cjs +6 -2
- package/dist/billing/index.d.ts +2 -0
- package/dist/billing/index.d.ts.map +1 -1
- package/dist/billing/index.js +1 -1
- package/dist/billing/plan-badge.d.ts +17 -0
- package/dist/billing/plan-badge.d.ts.map +1 -0
- package/dist/billing/store.d.ts +6 -1
- package/dist/billing/store.d.ts.map +1 -1
- package/dist/{chunk-3M25GRRU.js → chunk-I3DY47N5.js} +3 -4
- package/dist/chunk-I3DY47N5.js.map +1 -0
- package/dist/chunk-NNFGMUF2.cjs +39 -0
- package/dist/chunk-NNFGMUF2.cjs.map +1 -0
- package/dist/{chunk-4XTQ4V5L.cjs → chunk-SAZLW54Y.cjs} +16 -12
- package/dist/chunk-SAZLW54Y.cjs.map +1 -0
- package/dist/{chunk-IPWCHJPE.cjs → chunk-VKYZACG5.cjs} +5 -6
- package/dist/chunk-VKYZACG5.cjs.map +1 -0
- package/dist/chunk-VN5NTK26.js +36 -0
- package/dist/chunk-VN5NTK26.js.map +1 -0
- package/dist/{chunk-XNWCGJYH.js → chunk-VTEP2AQX.js} +15 -11
- package/dist/chunk-VTEP2AQX.js.map +1 -0
- package/dist/components/shared/ContactPicker.d.ts +92 -0
- package/dist/components/shared/ContactPicker.d.ts.map +1 -0
- package/dist/components/shared/PersonLink.d.ts +12 -1
- package/dist/components/shared/PersonLink.d.ts.map +1 -1
- package/dist/components/shared/create-person.d.ts +20 -0
- package/dist/components/shared/create-person.d.ts.map +1 -0
- package/dist/crud/CrudDetailPage.d.ts.map +1 -1
- package/dist/crud/CrudFormPage.d.ts.map +1 -1
- package/dist/crud/CrudListView.d.ts.map +1 -1
- package/dist/crud/CrudPage.d.ts.map +1 -1
- package/dist/crud/archetypes/AddressesTab.d.ts +21 -0
- package/dist/crud/archetypes/AddressesTab.d.ts.map +1 -0
- package/dist/crud/archetypes/PersonDetailTabs.d.ts +2 -1
- package/dist/crud/archetypes/PersonDetailTabs.d.ts.map +1 -1
- package/dist/crud/createCrudPage.d.ts.map +1 -1
- package/dist/crud/index.d.ts +1 -0
- package/dist/crud/index.d.ts.map +1 -1
- package/dist/index.cjs +4281 -716
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +17 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4067 -542
- package/dist/index.js.map +1 -1
- package/dist/org/index.cjs +11 -11
- package/dist/org/index.js +2 -2
- package/dist/org/store.d.ts.map +1 -1
- package/dist/permissions/context.d.ts +2 -0
- package/dist/permissions/context.d.ts.map +1 -1
- package/dist/permissions/index.cjs +7 -7
- package/dist/permissions/index.js +1 -1
- package/dist/shell/components/auth/ProtectedRoute.d.ts.map +1 -1
- package/dist/shell/components/billing/SoftLimitBanner.d.ts +5 -0
- package/dist/shell/components/billing/SoftLimitBanner.d.ts.map +1 -0
- package/dist/shell/components/billing/SubscriptionPage.d.ts +5 -0
- package/dist/shell/components/billing/SubscriptionPage.d.ts.map +1 -0
- package/dist/shell/components/billing/UpgradeModal.d.ts +3 -0
- package/dist/shell/components/billing/UpgradeModal.d.ts.map +1 -0
- package/dist/shell/components/billing/UpgradePrompt.d.ts +10 -0
- package/dist/shell/components/billing/UpgradePrompt.d.ts.map +1 -0
- package/dist/shell/components/billing/access-contract.d.ts +18 -0
- package/dist/shell/components/billing/access-contract.d.ts.map +1 -0
- package/dist/shell/components/billing/gates.d.ts +14 -0
- package/dist/shell/components/billing/gates.d.ts.map +1 -0
- package/dist/shell/components/billing/index.d.ts +9 -2
- package/dist/shell/components/billing/index.d.ts.map +1 -1
- package/dist/shell/components/chat/ChatFab.d.ts +3 -1
- package/dist/shell/components/chat/ChatFab.d.ts.map +1 -1
- package/dist/shell/components/chat/ChatPanel.d.ts +3 -1
- package/dist/shell/components/chat/ChatPanel.d.ts.map +1 -1
- package/dist/shell/components/chat/ConfirmActionCard.d.ts +13 -0
- package/dist/shell/components/chat/ConfirmActionCard.d.ts.map +1 -0
- package/dist/shell/components/chat/markdown.d.ts +5 -0
- package/dist/shell/components/chat/markdown.d.ts.map +1 -0
- package/dist/shell/components/organization/TeamTab.d.ts.map +1 -1
- package/dist/shell/components/organization/TenantOnboarding.d.ts.map +1 -1
- package/dist/shell/components/organization/index.d.ts +0 -1
- package/dist/shell/components/organization/index.d.ts.map +1 -1
- package/dist/shell/components/settings/ConnectedCompanySettings.d.ts.map +1 -1
- package/dist/shell/components/settings/ConnectedFieldRulesSettings.d.ts.map +1 -1
- package/dist/shell/components/settings/ConnectedSecuritySettings.d.ts.map +1 -1
- package/dist/shell/components/settings/LocationsCrudPage.d.ts +1 -1
- package/dist/shell/components/settings/LocationsCrudPage.d.ts.map +1 -1
- package/dist/shell/components/settings/SettingsPage.d.ts +23 -2
- package/dist/shell/components/settings/SettingsPage.d.ts.map +1 -1
- package/dist/shell/hooks/index.d.ts +3 -2
- package/dist/shell/hooks/index.d.ts.map +1 -1
- package/dist/shell/hooks/useAITools.d.ts +2 -0
- package/dist/shell/hooks/useAITools.d.ts.map +1 -1
- package/dist/shell/hooks/useChat.d.ts +22 -0
- package/dist/shell/hooks/useChat.d.ts.map +1 -1
- package/dist/shell/hooks/useSystemPermission.d.ts +3 -0
- package/dist/shell/hooks/useSystemPermission.d.ts.map +1 -0
- package/dist/shell/hooks/useTenantPluginSettings.d.ts +12 -0
- package/dist/shell/hooks/useTenantPluginSettings.d.ts.map +1 -0
- package/dist/shell/lib/ai-tool-handlers.d.ts +119 -0
- package/dist/shell/lib/ai-tool-handlers.d.ts.map +1 -0
- package/dist/shell/lib/core-ai-tools.d.ts +14 -0
- package/dist/shell/lib/core-ai-tools.d.ts.map +1 -1
- package/dist/shell/lib/create-client-orders-provider.d.ts.map +1 -1
- package/dist/shell/lib/fayz-agent.d.ts +23 -0
- package/dist/shell/lib/fayz-agent.d.ts.map +1 -0
- package/dist/shell/lib/i18n.d.ts.map +1 -1
- package/dist/shell/stores/chat.store.d.ts +69 -0
- package/dist/shell/stores/chat.store.d.ts.map +1 -1
- package/dist/shell/types/billing.d.ts +7 -0
- package/dist/shell/types/billing.d.ts.map +1 -1
- package/dist/shell/types/plugins.d.ts +2 -45
- package/dist/shell/types/plugins.d.ts.map +1 -1
- package/dist/stores/createCrudStore.d.ts.map +1 -1
- package/package.json +14 -11
- package/src/access/context.tsx +228 -0
- package/src/access/headless.ts +71 -0
- package/src/access/index.ts +27 -0
- package/src/access/limits-registry.ts +86 -0
- package/src/access/module-nav.test.ts +78 -0
- package/src/access/module-nav.ts +82 -0
- package/src/access/resolver.test.ts +143 -0
- package/src/access/resolver.ts +5 -0
- package/src/access/types.ts +47 -0
- package/src/access/upgrade-modal-store.ts +30 -0
- package/src/app/AdminShell.tsx +451 -68
- package/src/app/admin-app.tsx +46 -9
- package/src/app/config.ts +54 -1
- package/src/app/core-entities.ts +110 -0
- package/src/app/derive-contract.test.ts +155 -0
- package/src/app/derive-contract.ts +214 -0
- package/src/app/scaffold.tsx +4 -0
- package/src/archetype-lookup.ts +8 -2
- package/src/billing/index.ts +2 -0
- package/src/billing/plan-badge.ts +32 -0
- package/src/billing/store.ts +8 -1
- package/src/components/shared/ContactPicker.tsx +394 -0
- package/src/components/shared/PersonLink.tsx +11 -3
- package/src/components/shared/create-person.ts +74 -0
- package/src/crud/CrudDetailPage.tsx +5 -1
- package/src/crud/CrudFormPage.tsx +113 -6
- package/src/crud/CrudListView.tsx +16 -1
- package/src/crud/CrudPage.tsx +27 -5
- package/src/crud/DeleteConfirmDialog.tsx +1 -1
- package/src/crud/archetypes/AddressesTab.tsx +387 -0
- package/src/crud/archetypes/PersonDetailTabs.tsx +5 -0
- package/src/crud/createCrudPage.tsx +2 -0
- package/src/crud/index.ts +6 -0
- package/src/env.d.ts +7 -0
- package/src/index.ts +49 -1
- package/src/org/store.ts +9 -1
- package/src/permissions/context.tsx +29 -15
- package/src/shell/components/auth/ProtectedRoute.tsx +12 -2
- package/src/shell/components/billing/SoftLimitBanner.tsx +81 -0
- package/src/shell/components/billing/SubscriptionPage.tsx +372 -0
- package/src/shell/components/billing/UpgradeModal.tsx +102 -0
- package/src/shell/components/billing/UpgradePrompt.tsx +229 -0
- package/src/shell/components/billing/access-contract.ts +64 -0
- package/src/shell/components/billing/gates.tsx +62 -0
- package/src/shell/components/billing/index.ts +18 -2
- package/src/shell/components/chat/ChatFab.tsx +4 -2
- package/src/shell/components/chat/ChatPanel.tsx +174 -23
- package/src/shell/components/chat/ConfirmActionCard.tsx +57 -0
- package/src/shell/components/chat/markdown.tsx +102 -0
- package/src/shell/components/organization/TeamTab.tsx +21 -4
- package/src/shell/components/organization/TenantOnboarding.tsx +3 -1
- package/src/shell/components/organization/index.ts +0 -1
- package/src/shell/components/settings/ConnectedCompanySettings.tsx +4 -1
- package/src/shell/components/settings/ConnectedFieldRulesSettings.tsx +3 -1
- package/src/shell/components/settings/ConnectedSecuritySettings.tsx +3 -1
- package/src/shell/components/settings/LocationsCrudPage.ts +6 -1
- package/src/shell/components/settings/SettingsPage.tsx +63 -21
- package/src/shell/hooks/index.ts +3 -2
- package/src/shell/hooks/useAITools.ts +27 -23
- package/src/shell/hooks/useChat.ts +381 -16
- package/src/shell/hooks/useSystemPermission.ts +23 -0
- package/src/shell/hooks/useTenantPluginSettings.ts +127 -0
- package/src/shell/lib/ai-tool-handlers.ts +910 -0
- package/src/shell/lib/core-ai-tools.ts +234 -2
- package/src/shell/lib/create-client-orders-provider.ts +24 -2
- package/src/shell/lib/fayz-agent.ts +56 -0
- package/src/shell/lib/i18n.ts +71 -0
- package/src/shell/stores/chat.store.ts +118 -1
- package/src/shell/styles.css +30 -0
- package/src/shell/types/billing.ts +8 -0
- package/src/shell/types/plugins.ts +13 -50
- package/src/stores/createCrudStore.ts +9 -0
- package/dist/chunk-3M25GRRU.js.map +0 -1
- package/dist/chunk-4XTQ4V5L.cjs.map +0 -1
- package/dist/chunk-5GYQK5IW.js +0 -21
- package/dist/chunk-5GYQK5IW.js.map +0 -1
- package/dist/chunk-IPWCHJPE.cjs.map +0 -1
- package/dist/chunk-KYID2MR6.cjs +0 -23
- package/dist/chunk-KYID2MR6.cjs.map +0 -1
- package/dist/chunk-XNWCGJYH.js.map +0 -1
- package/dist/shell/components/billing/BillingPage.d.ts +0 -7
- package/dist/shell/components/billing/BillingPage.d.ts.map +0 -1
- package/dist/shell/components/billing/PaywallGate.d.ts +0 -11
- package/dist/shell/components/billing/PaywallGate.d.ts.map +0 -1
- package/dist/shell/components/organization/PermissionGate.d.ts +0 -11
- package/dist/shell/components/organization/PermissionGate.d.ts.map +0 -1
- package/dist/shell/hooks/useBilling.d.ts +0 -14
- package/dist/shell/hooks/useBilling.d.ts.map +0 -1
- package/dist/shell/hooks/usePermission.d.ts +0 -16
- package/dist/shell/hooks/usePermission.d.ts.map +0 -1
- package/src/shell/components/billing/BillingPage.tsx +0 -56
- package/src/shell/components/billing/PaywallGate.tsx +0 -80
- package/src/shell/components/organization/PermissionGate.tsx +0 -16
- package/src/shell/hooks/useBilling.ts +0 -151
- package/src/shell/hooks/usePermission.ts +0 -101
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import type { EntityDef, OrgMember, Organization } from '@fayz-ai/core';
|
|
2
|
+
import type { PluginAITool, PluginRegistryDef } from '../types/plugins';
|
|
3
|
+
/**
|
|
4
|
+
* Client-plane execution for the AI tool catalog.
|
|
5
|
+
*
|
|
6
|
+
* `useAITools()` declares *what* the surface can do — it is the catalog the
|
|
7
|
+
* model reasons over. This module is *how*: the browser runs the call against
|
|
8
|
+
* the session that is already open (org store, data providers, router) and
|
|
9
|
+
* hands a serialized result back to the agent.
|
|
10
|
+
*
|
|
11
|
+
* The split matters because Fayz never holds the surface's data credentials.
|
|
12
|
+
* The agent broker forwards the catalog, decides which tool to call, and
|
|
13
|
+
* returns the call for the surface to execute — the same contract a
|
|
14
|
+
* server-side channel (WhatsApp, email) satisfies with a server-side executor.
|
|
15
|
+
*
|
|
16
|
+
* **A capability is only advertised if it can run.** A declared tool with no
|
|
17
|
+
* executor is a promise to the model the surface cannot keep: it burns
|
|
18
|
+
* reasoning rounds retrying, then apologises. `buildAgentToolset` is the gate —
|
|
19
|
+
* everything it returns has a resolvable executor.
|
|
20
|
+
*/
|
|
21
|
+
/** An entity the executor can read through its own data provider. */
|
|
22
|
+
export interface DataToolTarget {
|
|
23
|
+
label: string;
|
|
24
|
+
entity: EntityDef;
|
|
25
|
+
mockData?: Array<{
|
|
26
|
+
id: string;
|
|
27
|
+
}>;
|
|
28
|
+
/** Read-model (view/ledger): searchable/queryable but never writable. */
|
|
29
|
+
readOnly?: boolean;
|
|
30
|
+
}
|
|
31
|
+
export interface AIToolExecutionContext {
|
|
32
|
+
currentOrg: Organization | null;
|
|
33
|
+
members: OrgMember[];
|
|
34
|
+
currentPath: string;
|
|
35
|
+
/** Pages the surface exposes, used to resolve navigation requests. */
|
|
36
|
+
routes: Array<{
|
|
37
|
+
path: string;
|
|
38
|
+
label?: string;
|
|
39
|
+
}>;
|
|
40
|
+
navigate: (path: string) => void;
|
|
41
|
+
/**
|
|
42
|
+
* Data-backed tools, keyed by the LLM-facing tool name. These execute
|
|
43
|
+
* generically through the entity's own data provider, so every registry and
|
|
44
|
+
* every CRUD entity the app declares is readable without a hand-written
|
|
45
|
+
* handler — which is what lets a new vertical work on day one.
|
|
46
|
+
*/
|
|
47
|
+
dataTools: Map<string, DataToolTarget>;
|
|
48
|
+
}
|
|
49
|
+
export type AIToolHandler = (args: Record<string, unknown>, context: AIToolExecutionContext) => unknown | Promise<unknown>;
|
|
50
|
+
/**
|
|
51
|
+
* Register an executor for a tool, keyed by the tool's `name` (the identifier
|
|
52
|
+
* the model calls, e.g. `getTeamMembers`). Plugins and apps call this to make
|
|
53
|
+
* their declared `aiTools` actually runnable.
|
|
54
|
+
*/
|
|
55
|
+
export declare function registerAIToolHandler(name: string, handler: AIToolHandler): void;
|
|
56
|
+
export declare function registerAIToolHandlers(map: Record<string, AIToolHandler>): void;
|
|
57
|
+
export declare function hasAIToolHandler(name: string): boolean;
|
|
58
|
+
export interface AIToolExecutionResult {
|
|
59
|
+
ok: boolean;
|
|
60
|
+
/** JSON-serialized payload handed back to the agent. */
|
|
61
|
+
content: string;
|
|
62
|
+
}
|
|
63
|
+
export declare function executeAITool(name: string, args: Record<string, unknown>, context: AIToolExecutionContext): Promise<AIToolExecutionResult>;
|
|
64
|
+
/**
|
|
65
|
+
* Index everything readable by the tool name its generator mints, so the
|
|
66
|
+
* executor can find the entity behind a call. Covers plugin registries and the
|
|
67
|
+
* app's own CRUD entities.
|
|
68
|
+
*/
|
|
69
|
+
export declare function buildDataToolIndex(input: {
|
|
70
|
+
registries: Map<string, PluginRegistryDef[]>;
|
|
71
|
+
entities: Array<{
|
|
72
|
+
entityKey: string;
|
|
73
|
+
labelPlural: string;
|
|
74
|
+
entityDef?: EntityDef;
|
|
75
|
+
mockData?: Array<{
|
|
76
|
+
id: string;
|
|
77
|
+
}>;
|
|
78
|
+
}>;
|
|
79
|
+
registryToolName: (pluginId: string, registryId: string) => string;
|
|
80
|
+
entityToolName: (entityKey: string) => string;
|
|
81
|
+
queryEntities?: Array<{
|
|
82
|
+
key: string;
|
|
83
|
+
entity: EntityDef;
|
|
84
|
+
writable?: boolean;
|
|
85
|
+
}>;
|
|
86
|
+
}): Map<string, DataToolTarget>;
|
|
87
|
+
export interface AgentTool {
|
|
88
|
+
name: string;
|
|
89
|
+
description: string;
|
|
90
|
+
parameters?: Record<string, unknown>;
|
|
91
|
+
}
|
|
92
|
+
export interface BuildToolsetOptions {
|
|
93
|
+
dataTools: Map<string, DataToolTarget>;
|
|
94
|
+
/** Plugin owning the current route; its tools rank ahead of the rest. */
|
|
95
|
+
activePluginId?: string | null;
|
|
96
|
+
maxTools?: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Shape the declared catalog into the toolset sent to the agent.
|
|
100
|
+
*
|
|
101
|
+
* Two filters, both load-bearing:
|
|
102
|
+
*
|
|
103
|
+
* 1. *Executable only.* An advertised tool with no executor is worse than a
|
|
104
|
+
* missing one — the model spends rounds on it and then apologises.
|
|
105
|
+
* 2. *Contextual.* A mature app declares ~40 tools; sending all of them every
|
|
106
|
+
* turn costs input tokens on every request and degrades which tool the model
|
|
107
|
+
* picks. Tools owned by the plugin the user is currently looking at come
|
|
108
|
+
* first, then the rest, capped.
|
|
109
|
+
*/
|
|
110
|
+
export declare function buildAgentToolset(tools: PluginAITool[], { dataTools, activePluginId, maxTools }: BuildToolsetOptions): AgentTool[];
|
|
111
|
+
/**
|
|
112
|
+
* Client-plane execution of an RPC-bound tool (`execution: {kind:'rpc'}`):
|
|
113
|
+
* calls the pool function as the signed-in user. The actor is the SESSION
|
|
114
|
+
* user — spine 016 makes the RPC reject any other p_actor for JWT callers, so
|
|
115
|
+
* this path cannot borrow someone else's role. Structured denials pass through
|
|
116
|
+
* to the model (conversational paywall); S4 moves this server-side untouched.
|
|
117
|
+
*/
|
|
118
|
+
export declare function executeRpcTool(rpcName: string, args: Record<string, unknown>, userId: string | undefined): Promise<AIToolExecutionResult>;
|
|
119
|
+
//# sourceMappingURL=ai-tool-handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-tool-handlers.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/ai-tool-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import type { PluginAITool, PluginRegistryDef } from '../types/plugins';
|
|
2
|
+
import type { EntityDef } from '@fayz-ai/core';
|
|
3
|
+
import { type RegisteredEntity } from '@fayz-ai/core';
|
|
2
4
|
/**
|
|
3
5
|
* Core SaaS-level AI tools — always available, no plugin required.
|
|
4
6
|
*/
|
|
5
7
|
export declare const coreAITools: PluginAITool[];
|
|
8
|
+
export declare function registryToolName(pluginId: string, registryId: string): string;
|
|
6
9
|
/**
|
|
7
10
|
* Auto-generates read tools from plugin registry definitions.
|
|
8
11
|
* Each registry gets a basic "list" tool so plugins get AI capabilities for free.
|
|
@@ -12,4 +15,15 @@ export declare function generateRegistryTools(pluginId: string, registries: Plug
|
|
|
12
15
|
* Formats a tool as a function signature: e.g. "getRevenue(period?)"
|
|
13
16
|
*/
|
|
14
17
|
export declare function formatToolSignature(tool: PluginAITool): string;
|
|
18
|
+
export declare function entityToolName(entityKey: string): string;
|
|
19
|
+
export declare function buildDataPrimitiveTools(input: {
|
|
20
|
+
entities: RegisteredEntity[];
|
|
21
|
+
registries: Map<string, PluginRegistryDef[]>;
|
|
22
|
+
queryEntities?: Array<{
|
|
23
|
+
key: string;
|
|
24
|
+
entity: EntityDef;
|
|
25
|
+
writable?: boolean;
|
|
26
|
+
}>;
|
|
27
|
+
}): PluginAITool[];
|
|
28
|
+
export declare function generateEntityTools(entities?: RegisteredEntity[]): PluginAITool[];
|
|
15
29
|
//# sourceMappingURL=core-ai-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-ai-tools.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/core-ai-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"core-ai-tools.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/core-ai-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGrE;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,YAAY,EA8CrC,CAAA;AA0BD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAK7E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,YAAY,EAAE,CAoBvG;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAO9D;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAExD;AA8BD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,QAAQ,EAAE,gBAAgB,EAAE,CAAA;IAC5B,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAA;IAC5C,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CAC9E,GAAG,YAAY,EAAE,CA0IjB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,GAAE,gBAAgB,EAAqB,GAAG,YAAY,EAAE,CAoBnG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-client-orders-provider.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/create-client-orders-provider.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,oBAAoB,EAA0D,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"create-client-orders-provider.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/create-client-orders-provider.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,oBAAoB,EAA0D,MAAM,wBAAwB,CAAA;AAiD1H,wBAAgB,0BAA0B,IAAI,oBAAoB,CAqEjE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type FayzAgentClient } from '@fayz-ai/sdk/agent';
|
|
2
|
+
/**
|
|
3
|
+
* Resolves the connection to the project's Fayz agent.
|
|
4
|
+
*
|
|
5
|
+
* The container writes `VITE_FAYZ_PROJECT_ID`, `VITE_FAYZ_API_BASE_URL` and
|
|
6
|
+
* `VITE_FAYZ_AGENT_KEY` into every preview's `.env`, so enabling an agent in
|
|
7
|
+
* Fayz is enough to light up the app's assistant — no app-side config edit and
|
|
8
|
+
* no key to copy. `chat.agent` overrides are for self-hosted deployments where
|
|
9
|
+
* the app is built outside a Fayz container.
|
|
10
|
+
*/
|
|
11
|
+
export interface FayzAgentConnectionConfig {
|
|
12
|
+
projectId?: string;
|
|
13
|
+
apiBaseUrl?: string;
|
|
14
|
+
publishableKey?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface ResolvedFayzAgentConnection {
|
|
17
|
+
projectId: string;
|
|
18
|
+
apiBaseUrl: string;
|
|
19
|
+
publishableKey: string;
|
|
20
|
+
}
|
|
21
|
+
export declare function resolveFayzAgentConnection(override?: FayzAgentConnectionConfig | false): ResolvedFayzAgentConnection | null;
|
|
22
|
+
export declare function getFayzAgentClient(connection: ResolvedFayzAgentConnection): FayzAgentClient;
|
|
23
|
+
//# sourceMappingURL=fayz-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fayz-agent.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/fayz-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEhF;;;;;;;;GAQG;AAEH,MAAM,WAAW,yBAAyB;IACxC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;CACvB;AAOD,wBAAgB,0BAA0B,CACxC,QAAQ,CAAC,EAAE,yBAAyB,GAAG,KAAK,GAC3C,2BAA2B,GAAG,IAAI,CASpC;AAID,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,2BAA2B,GAAG,eAAe,CAW3F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/i18n.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAG3D,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/shell/lib/i18n.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAG3D,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAo1DtD,CAAA;AAMD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAq3DjE,CAAA"}
|
|
@@ -1,8 +1,45 @@
|
|
|
1
|
+
/** A record the reply concerns — rendered as a "goto" button under the
|
|
2
|
+
* bubble. Semantic ref only (id + archetype/kind); the SURFACE resolves the
|
|
3
|
+
* URL against its own route map (agents.md: a missing link is correct, an
|
|
4
|
+
* invented one is a dead end). */
|
|
5
|
+
export interface ChatRecordLink {
|
|
6
|
+
id: string;
|
|
7
|
+
label: string;
|
|
8
|
+
archetype?: string;
|
|
9
|
+
kind?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface ChatToolCall {
|
|
12
|
+
name: string;
|
|
13
|
+
/** Pretty-printed arguments (may be empty). */
|
|
14
|
+
args: string;
|
|
15
|
+
/** Result content, truncated for display. */
|
|
16
|
+
result?: string;
|
|
17
|
+
}
|
|
1
18
|
export interface ChatMessage {
|
|
2
19
|
id: string;
|
|
3
20
|
role: 'user' | 'assistant';
|
|
4
21
|
content: string;
|
|
5
22
|
timestamp: string;
|
|
23
|
+
/** Tool calls this assistant reply made, accumulated across rounds —
|
|
24
|
+
* rendered as an expandable trace under the bubble. */
|
|
25
|
+
toolCalls?: ChatToolCall[];
|
|
26
|
+
/** Records to offer as navigation buttons under the reply. */
|
|
27
|
+
links?: ChatRecordLink[];
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* A write the agent wants to perform, parked until the human decides. The turn
|
|
31
|
+
* loop awaits the promise this action's resolver settles — the chat composer
|
|
32
|
+
* stays frozen behind the card, mirroring the broker's PENDING_CONFIRMATION
|
|
33
|
+
* step for server-plane tools.
|
|
34
|
+
*/
|
|
35
|
+
export interface PendingAgentAction {
|
|
36
|
+
id: string;
|
|
37
|
+
toolName: string;
|
|
38
|
+
title: string;
|
|
39
|
+
params: Record<string, unknown>;
|
|
40
|
+
/** 'client' = executed locally after approval; 'server' = approval is sent
|
|
41
|
+
* back to the broker as confirmAction. */
|
|
42
|
+
plane: 'client' | 'server';
|
|
6
43
|
}
|
|
7
44
|
interface ChatState {
|
|
8
45
|
messages: ChatMessage[];
|
|
@@ -13,7 +50,39 @@ interface ChatState {
|
|
|
13
50
|
addMessage: (message: ChatMessage) => void;
|
|
14
51
|
updateLastAssistant: (content: string) => void;
|
|
15
52
|
setStreaming: (streaming: boolean) => void;
|
|
53
|
+
setConversationId: (id: string | null) => void;
|
|
16
54
|
reset: () => void;
|
|
55
|
+
/**
|
|
56
|
+
* Server-side thread id when talking to a Fayz agent. History lives in Fayz,
|
|
57
|
+
* so subsequent turns only send the new message plus this id.
|
|
58
|
+
*/
|
|
59
|
+
conversationId: string | null;
|
|
60
|
+
/** The write awaiting human confirmation (renders the ConfirmActionCard). */
|
|
61
|
+
pendingAction: PendingAgentAction | null;
|
|
62
|
+
/** Park an action + register its decision resolver. */
|
|
63
|
+
requestConfirmation: (action: PendingAgentAction) => Promise<boolean>;
|
|
64
|
+
/** Card buttons: settle the parked action. */
|
|
65
|
+
resolvePendingAction: (approved: boolean) => void;
|
|
66
|
+
/** Tool names executing right now — rendered as live activity chips. */
|
|
67
|
+
activeTools: string[];
|
|
68
|
+
setActiveTools: (names: string[]) => void;
|
|
69
|
+
/** Record the tool calls an assistant reply made (expandable per-message trace). */
|
|
70
|
+
appendToolCallsToLastAssistant: (calls: ChatToolCall[]) => void;
|
|
71
|
+
/** Attach goto-record buttons to the reply (deduped by id, capped). */
|
|
72
|
+
appendLinksToLastAssistant: (links: ChatRecordLink[]) => void;
|
|
73
|
+
/** The signed-in user's threads (history drawer). */
|
|
74
|
+
conversations: Array<{
|
|
75
|
+
id: string;
|
|
76
|
+
title: string | null;
|
|
77
|
+
updatedAt: string;
|
|
78
|
+
}>;
|
|
79
|
+
setConversations: (rows: Array<{
|
|
80
|
+
id: string;
|
|
81
|
+
title: string | null;
|
|
82
|
+
updatedAt: string;
|
|
83
|
+
}>) => void;
|
|
84
|
+
/** Replace the transcript wholesale (resuming a past conversation). */
|
|
85
|
+
setMessages: (messages: ChatMessage[]) => void;
|
|
17
86
|
}
|
|
18
87
|
export declare const useChatStore: import("zustand").UseBoundStore<import("zustand").StoreApi<ChatState>>;
|
|
19
88
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.store.d.ts","sourceRoot":"","sources":["../../../src/shell/stores/chat.store.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"chat.store.d.ts","sourceRoot":"","sources":["../../../src/shell/stores/chat.store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PlanEntitlements } from '@fayz-ai/core';
|
|
1
2
|
export type PlanInterval = 'monthly' | 'yearly';
|
|
2
3
|
export type SubscriptionStatus = 'active' | 'trialing' | 'past_due' | 'canceled' | 'paused';
|
|
3
4
|
export interface Plan {
|
|
@@ -41,6 +42,12 @@ export interface PlanConfig {
|
|
|
41
42
|
limits?: Record<string, number>;
|
|
42
43
|
popular?: boolean;
|
|
43
44
|
verticalId?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Structured plan entitlements (feature gates + quantity caps) — the
|
|
47
|
+
* enforcement source of truth the access engine reads. Preserved verbatim by
|
|
48
|
+
* normalizeBillingPlan onto the runtime `Plan`.
|
|
49
|
+
*/
|
|
50
|
+
entitlements?: PlanEntitlements;
|
|
44
51
|
}
|
|
45
52
|
export declare function normalizePlanConfig(plan: PlanConfig, index?: number): Plan;
|
|
46
53
|
export interface Subscription {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../../src/shell/types/billing.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAA;AAC/C,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAA;AAE3F,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9B,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,+CAA+C;IAC/C,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"billing.d.ts","sourceRoot":"","sources":["../../../src/shell/types/billing.ts"],"names":[],"mappings":"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"}
|
|
@@ -142,51 +142,8 @@ export interface PluginRuntimeIssue {
|
|
|
142
142
|
dependencyId?: string;
|
|
143
143
|
message: string;
|
|
144
144
|
}
|
|
145
|
-
|
|
146
|
-
export
|
|
147
|
-
type: 'string' | 'number' | 'boolean' | 'array' | 'object';
|
|
148
|
-
description?: string;
|
|
149
|
-
enum?: string[];
|
|
150
|
-
items?: AIToolParameterProperty;
|
|
151
|
-
default?: unknown;
|
|
152
|
-
}
|
|
153
|
-
export interface AIToolParameters {
|
|
154
|
-
type: 'object';
|
|
155
|
-
properties: Record<string, AIToolParameterProperty>;
|
|
156
|
-
required?: string[];
|
|
157
|
-
}
|
|
158
|
-
export interface AIToolSuggestion {
|
|
159
|
-
/** Human-friendly prompt shown as a chip, e.g. "How many customers today?" */
|
|
160
|
-
label: string;
|
|
161
|
-
/** Actual message sent to the LLM when clicked (defaults to label) */
|
|
162
|
-
prompt?: string;
|
|
163
|
-
/** Lucide icon name override */
|
|
164
|
-
icon?: string;
|
|
165
|
-
/** Only show this suggestion for a specific vertical */
|
|
166
|
-
verticalId?: VerticalId;
|
|
167
|
-
}
|
|
168
|
-
export interface PluginAITool {
|
|
169
|
-
/** Unique tool ID, namespaced by plugin: e.g. 'financial.daily-revenue' */
|
|
170
|
-
id: string;
|
|
171
|
-
/** Function-style name shown as tool signature: e.g. 'getRevenue' */
|
|
172
|
-
name: string;
|
|
173
|
-
/** Description for the LLM — tells it when/how to use this tool */
|
|
174
|
-
description: string;
|
|
175
|
-
/** Lucide icon name */
|
|
176
|
-
icon?: string;
|
|
177
|
-
/** Read-only query or state-mutating action */
|
|
178
|
-
mode: AIToolMode;
|
|
179
|
-
/** JSON Schema for parameters — maps 1:1 to Claude tool_use input_schema */
|
|
180
|
-
parameters?: AIToolParameters;
|
|
181
|
-
/** Permission required to see/use this tool */
|
|
182
|
-
permission?: PluginPermissionRequirement;
|
|
183
|
-
/** User-facing suggestion chips for the empty chat state */
|
|
184
|
-
suggestions?: AIToolSuggestion[];
|
|
185
|
-
/** Category for grouping in the UI: e.g. 'Finance', 'Sales' */
|
|
186
|
-
category?: string;
|
|
187
|
-
/** Tags for filtering/search */
|
|
188
|
-
tags?: string[];
|
|
189
|
-
}
|
|
145
|
+
import type { PluginAITool } from '@fayz-ai/core';
|
|
146
|
+
export type { AIToolMode, AIToolParameterProperty, AIToolParameters, AIToolSuggestion, PluginAITool, } from '@fayz-ai/core';
|
|
190
147
|
export interface PluginRegistryDef {
|
|
191
148
|
/** Unique ID within the plugin, e.g. 'payment-methods' */
|
|
192
149
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../src/shell/types/plugins.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../src/shell/types/plugins.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCrudStore.d.ts","sourceRoot":"","sources":["../../src/stores/createCrudStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE5D,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,CAAC,CAAA;IACR,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACjC,8GAA8G;IAC9G,UAAU,EAAE,CACV,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,KACtF,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;KAAE,CAAC,CAAA;IAClE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACpD,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAA;IAC7C,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,SAAS,CAAA;CACvC;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AAExD,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EACtD,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"createCrudStore.d.ts","sourceRoot":"","sources":["../../src/stores/createCrudStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE5D,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,CAAC,CAAA;IACR,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACjC,8GAA8G;IAC9G,UAAU,EAAE,CACV,IAAI,EAAE,GAAG,EAAE,EACX,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,KACtF,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;KAAE,CAAC,CAAA;IAClE,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACpD,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAA;IAC7C,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,SAAS,CAAA;CACvC;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;AAExD,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EACtD,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,6EAkH9B"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"fayz": {
|
|
4
4
|
"status": "beta"
|
|
5
5
|
},
|
|
6
|
-
"version": "0.8.
|
|
6
|
+
"version": "0.8.2",
|
|
7
7
|
"description": "Fayz SDK SaaS layer — multi-tenancy, billing, permissions, org management",
|
|
8
8
|
"type": "module",
|
|
9
9
|
"main": "./dist/index.cjs",
|
|
@@ -55,27 +55,29 @@
|
|
|
55
55
|
"react": "^18.0.0 || ^19.0.0"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
+
"@radix-ui/react-dialog": "^1.1.0",
|
|
58
59
|
"@supabase/supabase-js": "^2.45.0",
|
|
59
|
-
"stripe": "^16.0.0",
|
|
60
|
-
"zustand": "^4.5.0",
|
|
61
|
-
"lucide-react": "^0.400.0",
|
|
62
60
|
"@tanstack/react-table": "^8.20.0",
|
|
63
61
|
"cmdk": "^1.0.0",
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"
|
|
62
|
+
"lucide-react": "^0.400.0",
|
|
63
|
+
"stripe": "^16.0.0",
|
|
64
|
+
"zustand": "^4.5.0",
|
|
67
65
|
"@fayz-ai/plugin-auth": "^0.8.0",
|
|
66
|
+
"@fayz-ai/sdk": "^0.8.2",
|
|
67
|
+
"@fayz-ai/auth": "^0.8.2",
|
|
68
|
+
"@fayz-ai/db": "^0.8.1",
|
|
68
69
|
"@fayz-ai/ui": "^0.8.1",
|
|
69
|
-
"@fayz-ai/core": "^0.8.
|
|
70
|
-
"@fayz-ai/db": "^0.8.0"
|
|
70
|
+
"@fayz-ai/core": "^0.8.2"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"@types/react": "^18.3.0",
|
|
74
|
+
"@types/react-dom": "^18.3.0",
|
|
74
75
|
"react": "^18.3.0",
|
|
76
|
+
"tailwindcss": "^3.4.0",
|
|
75
77
|
"tsup": "^8.2.0",
|
|
76
78
|
"typescript": "^5.5.0",
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
+
"vite": "^5.4.0",
|
|
80
|
+
"vitest": "2.1.9"
|
|
79
81
|
},
|
|
80
82
|
"license": "MIT",
|
|
81
83
|
"publishConfig": {
|
|
@@ -85,6 +87,7 @@
|
|
|
85
87
|
"build": "tsup && tsc --emitDeclarationOnly --declaration --declarationMap --noEmit false",
|
|
86
88
|
"dev": "tsup --watch",
|
|
87
89
|
"typecheck": "tsc --noEmit",
|
|
90
|
+
"test": "vitest run",
|
|
88
91
|
"clean": "rm -rf dist"
|
|
89
92
|
}
|
|
90
93
|
}
|