@fayz-ai/admin 0.27.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/{CommandPalette-ANZWU27U.js → CommandPalette-B5PMQFDG.js} +28 -4
  2. package/dist/CommandPalette-B5PMQFDG.js.map +1 -0
  3. package/dist/SubscriptionPage-2JPALG53.js +9 -0
  4. package/dist/{SubscriptionPage-4EJCCS4I.js.map → SubscriptionPage-2JPALG53.js.map} +1 -1
  5. package/dist/billing/index.js +2 -1
  6. package/dist/chunk-OD7P4L3D.js +74 -0
  7. package/dist/chunk-OD7P4L3D.js.map +1 -0
  8. package/dist/{chunk-LB5SV4ZZ.js → chunk-OVVTLRDD.js} +3 -3
  9. package/dist/{chunk-LB5SV4ZZ.js.map → chunk-OVVTLRDD.js.map} +1 -1
  10. package/dist/chunk-P5UIGQFY.js +57 -0
  11. package/dist/chunk-P5UIGQFY.js.map +1 -0
  12. package/dist/chunk-VX3WJLKK.js +54 -0
  13. package/dist/chunk-VX3WJLKK.js.map +1 -0
  14. package/dist/{chunk-U3VX52SE.js → chunk-ZOUIXHKI.js} +5 -50
  15. package/dist/chunk-ZOUIXHKI.js.map +1 -0
  16. package/dist/components/layout/CommandPalette.d.ts.map +1 -1
  17. package/dist/crud/archetype-lookup.d.ts +10 -0
  18. package/dist/crud/archetype-lookup.d.ts.map +1 -1
  19. package/dist/entity-routes-LXOBW5IB.js +4 -0
  20. package/dist/entity-routes-LXOBW5IB.js.map +1 -0
  21. package/dist/hooks/useRecentRecords.d.ts +16 -0
  22. package/dist/hooks/useRecentRecords.d.ts.map +1 -0
  23. package/dist/index.d.ts +3 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +46 -81
  26. package/dist/index.js.map +1 -1
  27. package/dist/lib/recent-records.d.ts +53 -0
  28. package/dist/lib/recent-records.d.ts.map +1 -0
  29. package/package.json +6 -6
  30. package/dist/CommandPalette-ANZWU27U.js.map +0 -1
  31. package/dist/SubscriptionPage-4EJCCS4I.js +0 -8
  32. package/dist/chunk-U3VX52SE.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,12 +1,17 @@
1
+ import { useLimitGuard, invalidateLimit, useAccessOptional, useUpgradeModalStore, guardLimit, useLimit, checkAccess, featureDisplayName, PlanFeatureItem, AccessProvider, CORE_LIMIT_DECLARATIONS, entityDerivedLimitDeclarations, getPlanEntitlements, resolvePlanCurrency } from './chunk-OVVTLRDD.js';
2
+ export { AccessProvider, UPGRADE_URL, agentDenial, checkAccess, getAccessSnapshot, guardLimit, invalidateLimit, isEntitledByPlan, resolveAccess, useAccess, useAccessOptional, useLimit, useLimitGuard, useModuleNavAccess, useUpgradeModalStore } from './chunk-OVVTLRDD.js';
3
+ export { clearRecentRecords, listRecentRecords, rememberVisit, subscribeRecentRecords, useOpenRecent, useRecentRecords, useRecordVisit } from './chunk-OD7P4L3D.js';
4
+ import { useTranslation as useTranslation$1 } from './chunk-YUHCC7JY.js';
5
+ import { useBillingStore, resolvePlanBadge, TrialWidget } from './chunk-ZOUIXHKI.js';
6
+ export { useBillingStore } from './chunk-ZOUIXHKI.js';
7
+ import { resolveEntityRoute, openEntity, resolveEntityAnchor, setEntityRouteMap, entityRouteHasDetail } from './chunk-P5UIGQFY.js';
8
+ export { openEntity, resolveEntityAnchor, resolveEntityHref, resolveEntityRoute } from './chunk-P5UIGQFY.js';
9
+ import { useAdminPath, navigateTo, normalizeAdminPath, routeScore, matchRoute } from './chunk-VX3WJLKK.js';
10
+ export { navigateTo as adminNavigateTo, useAdminPath } from './chunk-VX3WJLKK.js';
1
11
  export { ImportWizard } from './chunk-UMRN6427.js';
2
12
  export { ScheduleEditor, deleteSchedule, getScheduleBlockConfig, getSchedules, mergeBlockSettings, parseBlockSettings, replaceWeeklySchedules, saveSchedule, setScheduleBlockConfig, subscribeScheduleBlockConfig } from './chunk-NXFFJY2X.js';
3
13
  import { getFayzSupabaseClientOptional, getSupabaseClientOptional as getSupabaseClientOptional$1, getFayzSupabaseClient, useAppConfigStore, activePluginIds, hasPlugin, WorkspaceChooserGate, WorkspaceSwitchingHost, createFayzSupabaseClient, resolveAppId, createSupabaseOrgAdapter, createMockOrgAdapter, useWorkspaceSwitchingStore, searchWorkspaces, OrgMark } from './chunk-XJB76FHA.js';
4
14
  export { OrgMark, activePluginIds, createFayzSupabaseClient, createMockOrgAdapter, createSupabaseOrgAdapter, getFayzSupabaseClient, getFayzSupabaseClientOptional, hasPlugin, orgInitials, useAppConfigStore } from './chunk-XJB76FHA.js';
5
- import { useLimitGuard, invalidateLimit, useAccessOptional, useUpgradeModalStore, guardLimit, useLimit, checkAccess, featureDisplayName, PlanFeatureItem, AccessProvider, CORE_LIMIT_DECLARATIONS, entityDerivedLimitDeclarations, getPlanEntitlements, resolvePlanCurrency } from './chunk-LB5SV4ZZ.js';
6
- export { AccessProvider, UPGRADE_URL, agentDenial, checkAccess, getAccessSnapshot, guardLimit, invalidateLimit, isEntitledByPlan, resolveAccess, useAccess, useAccessOptional, useLimit, useLimitGuard, useModuleNavAccess, useUpgradeModalStore } from './chunk-LB5SV4ZZ.js';
7
- import { useTranslation as useTranslation$1 } from './chunk-YUHCC7JY.js';
8
- import { useAdminPath, navigateTo, useBillingStore, normalizeAdminPath, resolvePlanBadge, routeScore, matchRoute, TrialWidget } from './chunk-U3VX52SE.js';
9
- export { navigateTo as adminNavigateTo, useAdminPath, useBillingStore } from './chunk-U3VX52SE.js';
10
15
  import { readOrgSnapshot, useTenantOptional, useOrgAdapter, useTenant, OrgProvider, useOrgAdapterOptional } from './chunk-R4HQ2HS2.js';
11
16
  export { ORG_CACHE_TTL_MS, OrgProvider, clearOrgSnapshot, readOrgSnapshot, useOrgAdapter, useOrgAdapterOptional, useTenant, useTenantOptional } from './chunk-R4HQ2HS2.js';
12
17
  import { usePermissionOptional, usePermissionsStore, PermissionsProvider } from './chunk-UQ2NTFQC.js';
@@ -2727,58 +2732,6 @@ function getActiveSurfaceContext() {
2727
2732
  return { snapshot, instructions };
2728
2733
  }
2729
2734
 
2730
- // src/lib/entity-routes.ts
2731
- var routeMap = /* @__PURE__ */ new Map();
2732
- function setEntityRouteMap(map) {
2733
- const next = /* @__PURE__ */ new Map();
2734
- for (const [key, value] of map) {
2735
- next.set(key, typeof value === "string" ? { path: value, detail: true } : value);
2736
- }
2737
- routeMap = next;
2738
- }
2739
- function lookup(archetype, kind, entityKey) {
2740
- if (archetype && kind) {
2741
- const specific = routeMap.get(`${archetype}:${kind}`);
2742
- if (specific) return specific;
2743
- }
2744
- if (archetype) {
2745
- const general = routeMap.get(archetype);
2746
- if (general) return general;
2747
- }
2748
- if (entityKey) {
2749
- const byKey = routeMap.get(entityKey);
2750
- if (byKey) return byKey;
2751
- }
2752
- return null;
2753
- }
2754
- function resolveEntityRoute(archetype, kind, entityKey) {
2755
- return lookup(archetype, kind, entityKey)?.path ?? null;
2756
- }
2757
- function entityRouteHasDetail(archetype, kind, entityKey) {
2758
- return lookup(archetype, kind, entityKey)?.detail ?? false;
2759
- }
2760
- function resolveEntityHref(id, archetype, kind, tab, entityKey) {
2761
- const entry = lookup(archetype, kind, entityKey);
2762
- if (entry && !entry.detail) return entry.path;
2763
- let href;
2764
- if (entry) {
2765
- href = `${entry.path}/${id}`;
2766
- } else if (kind) {
2767
- const plural = kind.endsWith("s") ? kind : kind + "s";
2768
- href = `/${plural}/${id}`;
2769
- } else {
2770
- href = `/${id}`;
2771
- }
2772
- if (tab) href += `/${tab}`;
2773
- return href;
2774
- }
2775
- function resolveEntityAnchor(id, archetype, kind, tab, entityKey) {
2776
- return `#${resolveEntityHref(id, archetype, kind, tab, entityKey)}`;
2777
- }
2778
- function openEntity(id, archetype, kind, tab, entityKey) {
2779
- navigateTo(resolveEntityHref(id, archetype, kind, tab, entityKey));
2780
- }
2781
-
2782
2735
  // src/lib/reveal-page.ts
2783
2736
  function revealPage(delayMs = 1200) {
2784
2737
  if (typeof window === "undefined" || window.matchMedia("(min-width: 768px)").matches) return;
@@ -30428,10 +30381,10 @@ function SoftLimitProbes({ keys }) {
30428
30381
  return /* @__PURE__ */ jsx(Fragment, { children: monitored.map((k) => /* @__PURE__ */ jsx(LimitProbe, { limitKey: k }, k)) });
30429
30382
  }
30430
30383
  var CommandPalette = React118.lazy(
30431
- () => import('./CommandPalette-ANZWU27U.js').then((m) => ({ default: m.CommandPalette }))
30384
+ () => import('./CommandPalette-B5PMQFDG.js').then((m) => ({ default: m.CommandPalette }))
30432
30385
  );
30433
30386
  var SubscriptionPage = React118.lazy(
30434
- () => import('./SubscriptionPage-4EJCCS4I.js').then((m) => ({ default: m.SubscriptionPage }))
30387
+ () => import('./SubscriptionPage-2JPALG53.js').then((m) => ({ default: m.SubscriptionPage }))
30435
30388
  );
30436
30389
  function WorkspaceSwitcher({
30437
30390
  variant = "sidebar",
@@ -33037,17 +32990,17 @@ function LookupCreateInline({
33037
32990
  }
33038
32991
  );
33039
32992
  }
33040
- function useLookupCreate(lookup2, onCreated, options = {}) {
32993
+ function useLookupCreate(lookup, onCreated, options = {}) {
33041
32994
  const [draftName, setDraftName] = React118.useState(null);
33042
32995
  const can = usePermissionOptional();
33043
- const entityDef = lookup2?.entityDef;
32996
+ const entityDef = lookup?.entityDef;
33044
32997
  const feature = entityDef?.permission?.feature;
33045
32998
  const allowed = !feature || can(feature, "create");
33046
- const canCreate = !!lookup2?.create && allowed;
32999
+ const canCreate = !!lookup?.create && allowed;
33047
33000
  const createByName = React118.useCallback(async (name) => {
33048
- if (!lookup2?.create) return;
33049
- onCreated(await lookup2.create({ name }));
33050
- }, [lookup2, onCreated]);
33001
+ if (!lookup?.create) return;
33002
+ onCreated(await lookup.create({ name }));
33003
+ }, [lookup, onCreated]);
33051
33004
  const onCreate = React118.useMemo(() => {
33052
33005
  if (!canCreate) return void 0;
33053
33006
  if (!entityDef) return (name) => {
@@ -33058,7 +33011,7 @@ function useLookupCreate(lookup2, onCreated, options = {}) {
33058
33011
  const displayField = entityDef?.displayField ?? entityDef?.fields[0]?.key ?? "name";
33059
33012
  const open = !!entityDef && draftName !== null;
33060
33013
  const save = async (data) => {
33061
- const created = await lookup2.create({ ...data, name: String(data[displayField] ?? draftName) });
33014
+ const created = await lookup.create({ ...data, name: String(data[displayField] ?? draftName) });
33062
33015
  onCreated(created);
33063
33016
  setDraftName(null);
33064
33017
  return created;
@@ -33140,8 +33093,8 @@ function OrderFormItemRow({
33140
33093
  const [openExtras, setOpenExtras] = React118.useState(
33141
33094
  () => (extraFieldGroups ?? []).filter((g) => g.filled).map((g) => g.id)
33142
33095
  );
33143
- const lookup2 = entityLookups[itemKind];
33144
- const itemCreate = useLookupCreate(lookup2, (created) => {
33096
+ const lookup = entityLookups[itemKind];
33097
+ const itemCreate = useLookupCreate(lookup, (created) => {
33145
33098
  onChange({
33146
33099
  referenceId: created.id,
33147
33100
  description: created.label,
@@ -33203,7 +33156,7 @@ function OrderFormItemRow({
33203
33156
  tp.value
33204
33157
  )) }),
33205
33158
  /* @__PURE__ */ jsxs("div", { className: "fz-fields fz-fields-2", children: [
33206
- /* @__PURE__ */ jsx("div", { className: "min-w-0", children: lookup2 ? /* @__PURE__ */ jsx(
33159
+ /* @__PURE__ */ jsx("div", { className: "min-w-0", children: lookup ? /* @__PURE__ */ jsx(
33207
33160
  SearchSelect,
33208
33161
  {
33209
33162
  label: l.item,
@@ -33219,7 +33172,7 @@ function OrderFormItemRow({
33219
33172
  });
33220
33173
  },
33221
33174
  onSearch: async (q) => {
33222
- const results = await lookup2.search(q);
33175
+ const results = await lookup.search(q);
33223
33176
  return results.map((r) => ({ id: r.id, label: r.label, subtitle: r.subtitle, group: r.group, data: r }));
33224
33177
  },
33225
33178
  createLabel: l.create,
@@ -35417,8 +35370,8 @@ function createClientOrdersProvider() {
35417
35370
  };
35418
35371
  }
35419
35372
  var PERSON_LOOKUPS = {};
35420
- function registerPersonLookup(kind, lookup2) {
35421
- PERSON_LOOKUPS[kind] = lookup2;
35373
+ function registerPersonLookup(kind, lookup) {
35374
+ PERSON_LOOKUPS[kind] = lookup;
35422
35375
  }
35423
35376
  function getPersonLookup(kind) {
35424
35377
  return PERSON_LOOKUPS[kind] ?? null;
@@ -35499,7 +35452,11 @@ function toResult(row, display, kindLabels) {
35499
35452
  }
35500
35453
  function createArchetypeLookup(config) {
35501
35454
  const baseDisplay = ARCHETYPE_DISPLAY[config.archetype];
35502
- const display = config.subtitleFields ? { ...baseDisplay, subtitleFields: config.subtitleFields } : baseDisplay;
35455
+ const display = {
35456
+ ...baseDisplay,
35457
+ ...config.subtitleFields ? { subtitleFields: config.subtitleFields } : {},
35458
+ ...config.table ? { table: config.table } : {}
35459
+ };
35503
35460
  const limit = config.limit ?? 20;
35504
35461
  const kinds = config.kind ? Array.isArray(config.kind) ? config.kind : [config.kind] : void 0;
35505
35462
  function applyKindFilter(qb) {
@@ -35530,7 +35487,15 @@ function createArchetypeLookup(config) {
35530
35487
  if (!supabase) return [];
35531
35488
  let qb = supabase.from(display.table).select("*").order(display.labelField, { ascending: true }).limit(limit);
35532
35489
  qb = config.archetype === "service" ? qb.or("is_active.eq.true,is_active.is.null") : qb.eq("is_active", true);
35533
- if (query) qb = qb.ilike(display.labelField, `%${query}%`);
35490
+ if (query) {
35491
+ const campos = config.searchFields?.length ? config.searchFields : [display.labelField];
35492
+ if (campos.length === 1) {
35493
+ qb = qb.ilike(campos[0], `%${query}%`);
35494
+ } else {
35495
+ const limpo = query.replace(/[(),"]/g, " ").trim();
35496
+ if (limpo) qb = qb.or(campos.map((c) => `${c}.ilike.%${limpo}%`).join(","));
35497
+ }
35498
+ }
35534
35499
  qb = applyKindFilter(qb);
35535
35500
  const { data } = await qb;
35536
35501
  return (data ?? []).map(
@@ -36171,7 +36136,7 @@ function formatAge(dob) {
36171
36136
  return null;
36172
36137
  }
36173
36138
  }
36174
- function PersonLink2({ personId, name, lookup: lookup2, kind, profileHref, tab, size = "default", className }) {
36139
+ function PersonLink2({ personId, name, lookup, kind, profileHref, tab, size = "default", className }) {
36175
36140
  const [person, setPerson] = useState(null);
36176
36141
  const [loading, setLoading] = useState(false);
36177
36142
  const [fetched, setFetched] = useState(false);
@@ -36180,7 +36145,7 @@ function PersonLink2({ personId, name, lookup: lookup2, kind, profileHref, tab,
36180
36145
  const fetchPerson = useCallback(() => {
36181
36146
  if (!fetched && personId) {
36182
36147
  setLoading(true);
36183
- (lookup2 ?? (kind ? getPersonLookup(kind) : null) ?? personLookup).getById(personId).then((result) => {
36148
+ (lookup ?? (kind ? getPersonLookup(kind) : null) ?? personLookup).getById(personId).then((result) => {
36184
36149
  setPerson(result);
36185
36150
  setFetched(true);
36186
36151
  setLoading(false);
@@ -36189,7 +36154,7 @@ function PersonLink2({ personId, name, lookup: lookup2, kind, profileHref, tab,
36189
36154
  setLoading(false);
36190
36155
  });
36191
36156
  }
36192
- }, [personId, fetched, lookup2, kind]);
36157
+ }, [personId, fetched, lookup, kind]);
36193
36158
  const handleOpenChange = useCallback((v) => {
36194
36159
  setOpen(v);
36195
36160
  if (v) fetchPerson();
@@ -36314,7 +36279,7 @@ function ContactPicker({
36314
36279
  value,
36315
36280
  onChange,
36316
36281
  kind,
36317
- lookup: lookup2,
36282
+ lookup,
36318
36283
  allowFreeText = false,
36319
36284
  clearable = true,
36320
36285
  disabled,
@@ -36336,8 +36301,8 @@ function ContactPicker({
36336
36301
  const can = usePermissionOptional();
36337
36302
  const activeTenantId = useActiveTenantId();
36338
36303
  const resolvedLookup = useMemo(
36339
- () => lookup2 ?? createArchetypeLookup({ archetype: "person", kind }),
36340
- [lookup2, kind]
36304
+ () => lookup ?? createArchetypeLookup({ archetype: "person", kind }),
36305
+ [lookup, kind]
36341
36306
  );
36342
36307
  const create30 = useMemo(() => {
36343
36308
  if (createEntityDef?.data?.table) {
@@ -37263,6 +37228,6 @@ var renderApp = (...args) => {
37263
37228
  return renderApp$1(...args);
37264
37229
  };
37265
37230
 
37266
- export { ALWAYS_ON_TOOLS, ActivationChecklistCard, ActivationProvider, AddConnectorButton, AddConnectorPanel, AdminProviders, AdminScaffold, AdminShell, AskAIButton, AskAIMenuItem, AssistantInvite, BoardFrame, ChatConversation, ClientOrdersTab, ConnectConsentPage, ConnectorDeliveries, ConnectorDetail, ConnectorMark, ConnectorRow, ConnectorSyncActions, ConnectorsHub, ConnectorsTab, ContactPicker, CredentialSinkMissingError, CrudCardGrid, CrudDetailPage, CrudDetailSkeleton, CrudFormPage, CrudFormSkeleton, CrudListView, CrudPage, CrudRecordModal, DeleteConfirmDialog, DetailTabHeader, EntitlementGate, EntityLink, GetStarted, GettingStartedWidget, NotebookPanel as HandbookPanel, HandbookProvider, NotebookRailPanel as HandbookRailPanel, KanbanBoard, LimitGate, LookupCreateInline, MemberAccessRailPage, ModuleActionBar, MultiSelectRow, NOTE_LABEL_PREFIX, NotebookPanel, NotebookRailPanel, ONBOARDING_TASK_SOURCE, ORDER_CHANNEL_LABELS, ORDER_KIND_LABELS, OTHER_CONNECTOR, OrderAmount, OrderBoardView, OrderCreateScreen, OrderDetailBlock, OrderDetailPage, OrderDetailRail, OrderDetailRow, OrderDetailSkeleton, OrderDetailView, OrderFormAddItemStep, OrderDetailBlock as OrderFormBlock, OrderFormItemRow, OrderFormItemsCard, OrderFormSkeleton, OrderFormView, OrderListView, OrderPaymentChip, PAYMENT_STATUS_CONFIG, PAYMENT_STATUS_LABEL, PageActions, PaymentStatusBadge, PermissionGate, PersonLink2 as PersonLink, PersonTimeline, PlatformError, PluginRegistryManager, PluginSettingsPanel, ProjectsSettings, QUESTION_PACKS, QuickActionsButton, RECEIVABLE_LABEL, RecordPickerModal, RegistryCrudView2 as RegistryCrudView, RightRailActions, RightRailLeading, RightRailPage, RouteErrorBoundary, RouteErrorScreen, SelectRow, SettingsGroup, SettingsTabs, SetupAgentSurface, SetupMeLink, SeuSiteWidget, StateChip, TASK_PRIORITIES, TASK_STATUSES, TaskCard, TaskDetail, TaskGroup, TaskLabelBadge, TaskLabelBadges, TaskPriorityBadge, TaskQuickAdd, TaskSourceBadge, TaskStatusGroup, TasksFilterBar, TasksPanel, TasksRailPanel, TeachMeLink, TextRow, ToggleRow, UnitSwitcher, UnitsSettingsPage, UpgradePrompt, WORKSPACE_SETUP_FLOW_ID, WORKSPACE_SETUP_FLOW_VERSION, WORKSPACE_SETUP_ROUTE, WidgetSlot, WorkspaceSetupFlow, WorkspaceSetupGate, appendHandbookPage, askAI, beautyPack, brandMark, buildBusinessProfile, buildHandbookTree, buildWorkspaceSetupSteps, businessProfileBlock, categoryLabel, checkSlugAvailable, claimTasksSurface, connectorOptions, connectorRoute, connectorRows, createArchetypeLookup, createClientOrdersProvider, createCrudPage, createFayzApp, createFayzProject, createLogoUploader, createMockTasksProvider, createCrudPage as createNativeCrudPage, createPlaceholder, createPlatformProject, createPluginContext, createSupabaseTasksProvider, createViewRouter, currentBusinessProfileBlock, dedup, defaultProjectOf, defineSaas, deleteFayzProject, deriveAgentContract, duplicateWrite, ensureChecklist, exportToCSV, filterConnectors, foodPack, formatActivityElapsed, formatCurrency4 as formatCurrency, formatSetupGuide, getActiveAgent, getAgent, getDefaultFayzProject, getFayzAgentClient, getGenerationStatus, getHost, getPersonBookable, getPersonLookup, getPersonPath, getPreview, getQuestionPack, getRailPage, getSetupGuide, getSetupGuideForStep, getTasksProvider, getTimelineSources, helpWith, humanizeWriteError, inferVerticalId, invalidateOrderReceivable, invalidateOrdersPaymentStatus, invalidateRelationOptions, isPlatformConnected, listFayzProjects, listHandbook, listPlatformProjects, listSetupGuides, loadArea, loadTools, loadedToolNames, mergeLines, needsCredentialSink, normalizePath, openAssistant, openAssistantAs, openConnectorsPanel, openEntity, orderChannelColumn, orderIsEditable, orderKindColumn, orientationTour, parseViewId, publishAssistantActivity, readAttachmentBytes, readHandbookPage, readSetupAnswers, receivableTone, recordOnboardingResponse, registerAdminScaffold, registerAssistantLauncher, registerEntityPath, registerNotesTasksAdapter, registerPersonLookup, registerRailPage, registerSetupGuides, registerTimelineSource, renderApp, renderHandbookOutline, requestChatUpload, requestProjectChange, resetLoadedTools, resolveEntityAnchor, resolveEntityHref, resolveEntityRoute, resolveFayzAgentConnection, resolveSetupMode, resolveVerticalId, retailPack, revealPage, runWelcome, searchHandbook, searchSetupGuides, setPersonBookable, setTasksProvider, setUpWithMe, slugify, soleAgent, splitConnectorValues, splitOnboardingTasks, startGuidedRun, startPreview, stopPreview, submitConnection, submitWorkspaceSetup, summariseSetupGuides, taskEntityDef, tasksSurfaceOwner, teachMe, toInlineFile, toOrderDetailReceivable, unregisterAssistantLauncher, unregisterTimelineSource, updateFayzProject, useActivationStore, useActiveAgent, useAgent, useAgentStore, useAgentSurface, useAppConfig, useAssistantActivity, useAssistantInviteStore, useAssistantLaunchers, useBusinessProfileStore, useChatStore, useConnectors, useConnectorsPanelAvailable, useContextualNav, useContextualNavStore, useDelegateToAssistant, useFayzProjectsStore, useFeatureHelp, useFieldRules, useHandbookStore, useHasRightRail, useHeaderAction, useHeaderActions, useLaunchersForRole, useLookupCreate, useMemberAccessPanel, useModuleNavigation, useNavContribution, useNavContributionsStore, useNotesTasksBridge, useOrderDetail, useOrderEditor, useOrderReceivable, useOrdersPaymentStatus, usePersonTimeline, usePluginPrefs, usePublishAssistantActivity, useRegisterAssistantLauncher, useRightRailDrill, useRightRailHosted, useRightRailPanel, useRightRailStore, useSettingsTabsStore, useShellRailAvailable, useTasksStore, useTasksSummaryLine, useTeachMe, useTenantPluginSettings, useUnitBootstrap, useUnitStore, useWidgetSurface, useWorkspaceSetupBusy, useWorkspaceSetupGate, useWorkspaceSetupStore, validateSetupGuides, withdrawAssistantActivity, writeHandbookPage };
37231
+ export { ALWAYS_ON_TOOLS, ActivationChecklistCard, ActivationProvider, AddConnectorButton, AddConnectorPanel, AdminProviders, AdminScaffold, AdminShell, AskAIButton, AskAIMenuItem, AssistantInvite, BoardFrame, ChatConversation, ClientOrdersTab, ConnectConsentPage, ConnectorDeliveries, ConnectorDetail, ConnectorMark, ConnectorRow, ConnectorSyncActions, ConnectorsHub, ConnectorsTab, ContactPicker, CredentialSinkMissingError, CrudCardGrid, CrudDetailPage, CrudDetailSkeleton, CrudFormPage, CrudFormSkeleton, CrudListView, CrudPage, CrudRecordModal, DeleteConfirmDialog, DetailTabHeader, EntitlementGate, EntityLink, GetStarted, GettingStartedWidget, NotebookPanel as HandbookPanel, HandbookProvider, NotebookRailPanel as HandbookRailPanel, KanbanBoard, LimitGate, LookupCreateInline, MemberAccessRailPage, ModuleActionBar, MultiSelectRow, NOTE_LABEL_PREFIX, NotebookPanel, NotebookRailPanel, ONBOARDING_TASK_SOURCE, ORDER_CHANNEL_LABELS, ORDER_KIND_LABELS, OTHER_CONNECTOR, OrderAmount, OrderBoardView, OrderCreateScreen, OrderDetailBlock, OrderDetailPage, OrderDetailRail, OrderDetailRow, OrderDetailSkeleton, OrderDetailView, OrderFormAddItemStep, OrderDetailBlock as OrderFormBlock, OrderFormItemRow, OrderFormItemsCard, OrderFormSkeleton, OrderFormView, OrderListView, OrderPaymentChip, PAYMENT_STATUS_CONFIG, PAYMENT_STATUS_LABEL, PageActions, PaymentStatusBadge, PermissionGate, PersonLink2 as PersonLink, PersonTimeline, PlatformError, PluginRegistryManager, PluginSettingsPanel, ProjectsSettings, QUESTION_PACKS, QuickActionsButton, RECEIVABLE_LABEL, RecordPickerModal, RegistryCrudView2 as RegistryCrudView, RightRailActions, RightRailLeading, RightRailPage, RouteErrorBoundary, RouteErrorScreen, SelectRow, SettingsGroup, SettingsTabs, SetupAgentSurface, SetupMeLink, SeuSiteWidget, StateChip, TASK_PRIORITIES, TASK_STATUSES, TaskCard, TaskDetail, TaskGroup, TaskLabelBadge, TaskLabelBadges, TaskPriorityBadge, TaskQuickAdd, TaskSourceBadge, TaskStatusGroup, TasksFilterBar, TasksPanel, TasksRailPanel, TeachMeLink, TextRow, ToggleRow, UnitSwitcher, UnitsSettingsPage, UpgradePrompt, WORKSPACE_SETUP_FLOW_ID, WORKSPACE_SETUP_FLOW_VERSION, WORKSPACE_SETUP_ROUTE, WidgetSlot, WorkspaceSetupFlow, WorkspaceSetupGate, appendHandbookPage, askAI, beautyPack, brandMark, buildBusinessProfile, buildHandbookTree, buildWorkspaceSetupSteps, businessProfileBlock, categoryLabel, checkSlugAvailable, claimTasksSurface, connectorOptions, connectorRoute, connectorRows, createArchetypeLookup, createClientOrdersProvider, createCrudPage, createFayzApp, createFayzProject, createLogoUploader, createMockTasksProvider, createCrudPage as createNativeCrudPage, createPlaceholder, createPlatformProject, createPluginContext, createSupabaseTasksProvider, createViewRouter, currentBusinessProfileBlock, dedup, defaultProjectOf, defineSaas, deleteFayzProject, deriveAgentContract, duplicateWrite, ensureChecklist, exportToCSV, filterConnectors, foodPack, formatActivityElapsed, formatCurrency4 as formatCurrency, formatSetupGuide, getActiveAgent, getAgent, getDefaultFayzProject, getFayzAgentClient, getGenerationStatus, getHost, getPersonBookable, getPersonLookup, getPersonPath, getPreview, getQuestionPack, getRailPage, getSetupGuide, getSetupGuideForStep, getTasksProvider, getTimelineSources, helpWith, humanizeWriteError, inferVerticalId, invalidateOrderReceivable, invalidateOrdersPaymentStatus, invalidateRelationOptions, isPlatformConnected, listFayzProjects, listHandbook, listPlatformProjects, listSetupGuides, loadArea, loadTools, loadedToolNames, mergeLines, needsCredentialSink, normalizePath, openAssistant, openAssistantAs, openConnectorsPanel, orderChannelColumn, orderIsEditable, orderKindColumn, orientationTour, parseViewId, publishAssistantActivity, readAttachmentBytes, readHandbookPage, readSetupAnswers, receivableTone, recordOnboardingResponse, registerAdminScaffold, registerAssistantLauncher, registerEntityPath, registerNotesTasksAdapter, registerPersonLookup, registerRailPage, registerSetupGuides, registerTimelineSource, renderApp, renderHandbookOutline, requestChatUpload, requestProjectChange, resetLoadedTools, resolveFayzAgentConnection, resolveSetupMode, resolveVerticalId, retailPack, revealPage, runWelcome, searchHandbook, searchSetupGuides, setPersonBookable, setTasksProvider, setUpWithMe, slugify, soleAgent, splitConnectorValues, splitOnboardingTasks, startGuidedRun, startPreview, stopPreview, submitConnection, submitWorkspaceSetup, summariseSetupGuides, taskEntityDef, tasksSurfaceOwner, teachMe, toInlineFile, toOrderDetailReceivable, unregisterAssistantLauncher, unregisterTimelineSource, updateFayzProject, useActivationStore, useActiveAgent, useAgent, useAgentStore, useAgentSurface, useAppConfig, useAssistantActivity, useAssistantInviteStore, useAssistantLaunchers, useBusinessProfileStore, useChatStore, useConnectors, useConnectorsPanelAvailable, useContextualNav, useContextualNavStore, useDelegateToAssistant, useFayzProjectsStore, useFeatureHelp, useFieldRules, useHandbookStore, useHasRightRail, useHeaderAction, useHeaderActions, useLaunchersForRole, useLookupCreate, useMemberAccessPanel, useModuleNavigation, useNavContribution, useNavContributionsStore, useNotesTasksBridge, useOrderDetail, useOrderEditor, useOrderReceivable, useOrdersPaymentStatus, usePersonTimeline, usePluginPrefs, usePublishAssistantActivity, useRegisterAssistantLauncher, useRightRailDrill, useRightRailHosted, useRightRailPanel, useRightRailStore, useSettingsTabsStore, useShellRailAvailable, useTasksStore, useTasksSummaryLine, useTeachMe, useTenantPluginSettings, useUnitBootstrap, useUnitStore, useWidgetSurface, useWorkspaceSetupBusy, useWorkspaceSetupGate, useWorkspaceSetupStore, validateSetupGuides, withdrawAssistantActivity, writeHandbookPage };
37267
37232
  //# sourceMappingURL=index.js.map
37268
37233
  //# sourceMappingURL=index.js.map