@fayz-ai/admin 0.52.0 → 0.53.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.
@@ -1 +1 @@
1
- {"version":3,"file":"OrderDetailPage.d.ts","sourceRoot":"","sources":["../../../src/crud/archetypes/OrderDetailPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAwC,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC9F,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,EAA+C,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AA2BxG,MAAM,WAAW,oBAAoB;IACnC,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kGAAkG;IAClG,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAA;IAC3F,2DAA2D;IAC3D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,KAAK,CAAC,SAAS,CAAA;IAChE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,oBAAoB;IAC3B;;;;;OAKG;IACH,OAAO,EAAE;QAAE,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,KACxF,KAAK,CAAC,SAAS,CAAA;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,eAAe,KAAK,eAAe,CAAA;CAClF;AAcD,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EAAE,MAAkB,EAAE,SAAqB,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EACnF,iBAAiB,GAClB,EAAE,oBAAoB,qBAoFtB"}
1
+ {"version":3,"file":"OrderDetailPage.d.ts","sourceRoot":"","sources":["../../../src/crud/archetypes/OrderDetailPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAwC,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC9F,OAAO,EAAkB,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,EAA+C,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AA2BxG,MAAM,WAAW,oBAAoB;IACnC,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAA;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kGAAkG;IAClG,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAA;IAC3F,2DAA2D;IAC3D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,KAAK,CAAC,SAAS,CAAA;IAChE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,oBAAoB;IAC3B;;;;;OAKG;IACH,OAAO,EAAE;QAAE,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;KAAE,KACxF,KAAK,CAAC,SAAS,CAAA;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,eAAe,KAAK,eAAe,CAAA;CAClF;AAcD,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EAAE,MAAkB,EAAE,SAAqB,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EACnF,iBAAiB,GAClB,EAAE,oBAAoB,qBAqFtB"}
@@ -22,6 +22,8 @@ export interface OrderDetailRailOrder {
22
22
  unitPrice: number;
23
23
  total: number;
24
24
  imageUrl?: string | null;
25
+ /** The complements chosen with it (marketplace orders): "Molho, Sanduíche (Batata)". Counted in `total`. */
26
+ addOns?: string;
25
27
  }>;
26
28
  }
27
29
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OrderDetailRail.d.ts","sourceRoot":"","sources":["../../../src/crud/archetypes/OrderDetailRail.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OrderDetailRail.d.ts","sourceRoot":"","sources":["../../../src/crud/archetypes/OrderDetailRail.tsx"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -25,7 +25,7 @@ import { Button, Input, SearchSelect, toast, usePageTrailParent, navigateToCrumb
25
25
  export { createFayzTheme, fayzThemePresets } from '@fayz-ai/ui';
26
26
  import * as LucideIcons from 'lucide-react';
27
27
  import { RotateCcw, WifiOff, Pencil, Copy, Trash2, Upload, Search, ArrowDown, ArrowUp, ArrowUpDown, Check, Download, ChevronLeft, ChevronRight, AlertTriangle, Building2, Inbox, Package, Sparkles, Plug, DollarSign, Clock, X, WandSparkles, Loader2, ArrowDownToLine, ArrowUpFromLine, CheckCircle2, Crown, ArrowRight, History, SquarePen, Settings2, Mic, ListChecks, Plus, BookOpen, Lock, ArrowLeft, PinOff, Pin, Eye, Users, StickyNote, CheckSquare2, Square, Globe, LayoutTemplate, Store, ChevronsUpDown, ExternalLink, PenSquare, RefreshCw, XCircle, MessageSquareText, MapPin, ChevronDown, Edit, Camera, Star, Link2Off, Layers, Settings, ShoppingBag, MoreHorizontal, Minus, ChevronUp, ClipboardList, List, LayoutGrid, CircleDollarSign, Receipt, Mail, MessageCircle, Cake, Calendar, HelpCircle, Wrench, ShieldCheck, MessageSquare, Paperclip, Infinity, CheckCheck, PartyPopper, Compass, Play, Landmark, LocateFixed, ArrowUpCircle, ArrowUpRight, Pause, CalendarDays, CircleCheckBig, UserX, Ban, CircleAlert, CircleEllipsis, FileText, CircleDashed, Power, ArrowRightLeft, File as File$1, FileImage, FileSpreadsheet, AlertCircle, User, CreditCard, Puzzle, Shield, Palette, Blocks, ShieldAlert, UserCog, LifeBuoy, LogOut, Bell, Database, Radio, Zap, Save, ImagePlus, UserPlus, Contact, UserMinus, Send, SlidersHorizontal, EyeOff, PowerOff, Sun, Moon, Monitor, Languages, Info, Link2, KeyRound, Ellipsis, Phone, Bug, Home, Heart, Briefcase, BarChart3, Tag, Truck, Globe2 } from 'lucide-react';
28
- import { reportAppError, toDataError, tl, createDebug, fetchAppConfig, getSupabaseClientOptional, payeeAccountFields, maskCpfCnpj, recordRailFields, RECORD_GROUP, activeFacet, isKnownMissing, rememberIfMissing, deriveEntityKey, registerEntity, getActiveTenantId, resolveDataProvider, bulkRemove, emitDomainEvent, entityEventKey, errorMessage, useTranslation, describeError, useDataChanged, emitDataChanged, useActiveUnitId, exportCSV, getScopedResource, formatDateTime as formatDateTime$1, formatDate as formatDate$1, formatCurrency as formatCurrency$1, countByTenant, bulkCreate, matchesRange, isConnectorCategory, subscribeHouseCurrency, getHouseCurrency, resolveCurrency, usePluginRuntimeOptional, useDataVersion, getWidgetsForZone, resolvePluginComponent, loadMessageOverrides, resolveMessage, formatPostalCode, isValidPostalCode, lookupPostalCode, useUnitMode, useConnectorsForPlugin, setCurrentLocale, resolveLocale, resolvePluginRuntime, PluginRuntimeProvider, I18nProvider, getAllEntities, resolveIntegrationSurface, defineApp, registerScaffold, useActiveTenantId, onDataChanged, renderApp as renderApp$1, parseRangeFilter, isFilterObject, connectionKey, useManifest, getRecentActivity, registerEventSink, unitDisabledModules, getCurrentLocale, isAddressIncomplete, isBankIncomplete, usePluginRuntime, useConnectivity, RECONNECTED_EVENT, installGlobalErrorHandlers, registerErrorReporter, getConnectivity, applyNavComposition, mergeTranslations, coreTranslations, attachPersistentCache, getPersistentCache, createMockProvider, listConnections, connectorPlanes, connectorPermissions, connectorEntities, preferredPlane, connectorDirection, payeeMethodOf, searchEverything, readImpersonation, getComponent, getPluginFactory, connectorSettings, groupedPermissions, invocationPlane, missingRequiredSettings, isBankEmpty, isAddressEmpty, invalidateAppConfig, writeImpersonation, isSettingSet, getEntityByKey, connectorSubscribesTo, eventKeyMatches } from '@fayz-ai/core';
28
+ import { reportAppError, toDataError, tl, createDebug, fetchAppConfig, getSupabaseClientOptional, payeeAccountFields, maskCpfCnpj, recordRailFields, RECORD_GROUP, activeFacet, isKnownMissing, rememberIfMissing, deriveEntityKey, registerEntity, getActiveTenantId, resolveDataProvider, bulkRemove, emitDomainEvent, entityEventKey, errorMessage, useTranslation, describeError, useDataChanged, emitDataChanged, useActiveUnitId, exportCSV, getScopedResource, formatDateTime as formatDateTime$1, formatDate as formatDate$1, formatCurrency as formatCurrency$1, countByTenant, bulkCreate, matchesRange, isConnectorCategory, subscribeHouseCurrency, getHouseCurrency, resolveCurrency, usePluginRuntimeOptional, useDataVersion, getWidgetsForZone, resolvePluginComponent, loadMessageOverrides, resolveMessage, formatPostalCode, isValidPostalCode, lookupPostalCode, useUnitMode, useConnectorsForPlugin, setCurrentLocale, resolveLocale, resolvePluginRuntime, PluginRuntimeProvider, I18nProvider, getAllEntities, resolveIntegrationSurface, defineApp, registerScaffold, lineAddOnsSummary, lineAddOns, useActiveTenantId, onDataChanged, renderApp as renderApp$1, parseRangeFilter, isFilterObject, connectionKey, useManifest, getRecentActivity, registerEventSink, unitDisabledModules, getCurrentLocale, isAddressIncomplete, isBankIncomplete, usePluginRuntime, useConnectivity, RECONNECTED_EVENT, installGlobalErrorHandlers, registerErrorReporter, getConnectivity, applyNavComposition, mergeTranslations, coreTranslations, attachPersistentCache, getPersistentCache, createMockProvider, listConnections, connectorPlanes, connectorPermissions, connectorEntities, preferredPlane, connectorDirection, payeeMethodOf, searchEverything, readImpersonation, getComponent, getPluginFactory, connectorSettings, groupedPermissions, invocationPlane, missingRequiredSettings, isBankEmpty, isAddressEmpty, invalidateAppConfig, writeImpersonation, isSettingSet, getEntityByKey, connectorSubscribesTo, eventKeyMatches } from '@fayz-ai/core';
29
29
  export { ConnectorRuntimeTokenUnavailableError, createSafeDataProvider, formatDate, formatDateTime, getActiveLocale, getActiveTenantId, getConnectorRuntimeTokenSource, getCurrentLocale, getSupabaseClientOptional, preloadLocale, resolveBackendEnv, setConnectorRuntimeTokenSource, setCurrentLocale, tl, useActiveTenantId } from '@fayz-ai/core';
30
30
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
31
31
  import { useAuthStore, AuthProvider, useAuth, buildAppHandoffUrl } from '@fayz-ai/auth';
@@ -37091,7 +37091,7 @@ function OrderDetailView(props) {
37091
37091
  /* @__PURE__ */ jsx(Thumbnail, { src: item.imageUrl, size: "sm", icon: item.icon }),
37092
37092
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
37093
37093
  /* @__PURE__ */ jsx("p", { className: cn$1("truncate text-sm font-medium", item.struck && "text-muted-foreground line-through"), children: item.name }),
37094
- item.description ? /* @__PURE__ */ jsx("p", { className: "truncate text-xs text-muted-foreground", children: item.description }) : null,
37094
+ item.description ? /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: item.description }) : null,
37095
37095
  item.note ? /* @__PURE__ */ jsx("p", { className: "truncate text-xs", children: item.note }) : null
37096
37096
  ] }),
37097
37097
  item.account && /* @__PURE__ */ jsx(Badge, { variant: "secondary", title: item.account, className: "fz-tight-hide max-w-[12rem] shrink-0 truncate", children: item.account }),
@@ -39432,7 +39432,7 @@ function useOrderDetail(orderId) {
39432
39432
  // since Phase 2). A bare `products(...)` is ambiguous to PostgREST,
39433
39433
  // and it does not degrade gracefully: the whole select fails and the
39434
39434
  // order page goes blank, not just the thumbnail.
39435
- db2.from("items").select("id, name, quantity, unit_price, total, products!items_product_id_fkey(image_url)").eq("order_id", orderId).order("sort_order"),
39435
+ db2.from("items").select("id, name, quantity, unit_price, total, metadata, products!items_product_id_fkey(image_url)").eq("order_id", orderId).order("sort_order"),
39436
39436
  row.party_id ? db2.from("people").select("name").eq("id", row.party_id).maybeSingle() : Promise.resolve({ data: null })
39437
39437
  ]);
39438
39438
  if (cancelled) return;
@@ -39457,7 +39457,11 @@ function useOrderDetail(orderId) {
39457
39457
  quantity: Number(i.quantity) || 0,
39458
39458
  unitPrice: Number(i.unit_price) || 0,
39459
39459
  total: Number(i.total) || 0,
39460
- imageUrl: i.products?.image_url ?? null
39460
+ imageUrl: i.products?.image_url ?? null,
39461
+ // The line's `total` counts the complements and `unit_price` does
39462
+ // not: shown bare, a 5,00 combo sits beside a 16,00 total with
39463
+ // nothing to say where the 11,00 came from.
39464
+ addOns: lineAddOnsSummary(lineAddOns(i.metadata)) || void 0
39461
39465
  }))
39462
39466
  });
39463
39467
  } catch (err) {
@@ -39575,6 +39579,7 @@ function OrderDetailRail({
39575
39579
  order.items.length === 0 ? /* @__PURE__ */ jsx("p", { className: "py-1 text-sm text-muted-foreground", children: "Sem itens." }) : /* @__PURE__ */ jsx("div", { className: "divide-y divide-border/40", children: order.items.map((item) => /* @__PURE__ */ jsxs("div", { className: "flex items-start justify-between gap-3 py-2", children: [
39576
39580
  /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
39577
39581
  /* @__PURE__ */ jsx("p", { className: "truncate text-sm", children: item.name }),
39582
+ item.addOns && /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: item.addOns }),
39578
39583
  /* @__PURE__ */ jsxs("p", { className: "text-xs text-muted-foreground", children: [
39579
39584
  item.quantity,
39580
39585
  " \xD7 ",
@@ -39943,6 +39948,7 @@ function OrderDetailPage({
39943
39948
  id: item.id,
39944
39949
  name: item.name,
39945
39950
  imageUrl: item.imageUrl ?? null,
39951
+ description: item.addOns ?? null,
39946
39952
  quantity: item.quantity,
39947
39953
  unitPrice: money2(item.unitPrice, currency),
39948
39954
  total: money2(item.total, currency)