@fayz-ai/plugin-orders 0.22.7 → 0.23.0-canary.20261027164140

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":"useDeliverySettings.d.ts","sourceRoot":"","sources":["../../src/settings/useDeliverySettings.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAYD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,gBAAgB,CAAA;IACvB,GAAG,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,kEAAkE;IAClE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,iFAAiF;IACjF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,+EAA+E;IAC/E,SAAS,EAAE,OAAO,CAAA;CACnB;AAQD,wBAAgB,mBAAmB,CAAC,QAAQ,GAAE,gBAAqB,GAAG,sBAAsB,CAkE3F"}
1
+ {"version":3,"file":"useDeliverySettings.d.ts","sourceRoot":"","sources":["../../src/settings/useDeliverySettings.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+D,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAkBtH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,yEAAyE;IACzE,KAAK,CAAC,EAAE,YAAY,EAAE,CAAA;CACvB;AAsBD,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,gBAAgB,CAAA;IACvB,GAAG,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,kEAAkE;IAClE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,iFAAiF;IACjF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,+EAA+E;IAC/E,SAAS,EAAE,OAAO,CAAA;CACnB;AAQD,wBAAgB,mBAAmB,CAAC,QAAQ,GAAE,gBAAqB,GAAG,sBAAsB,CAuE3F"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "status": "beta",
5
5
  "dependencies": []
6
6
  },
7
- "version": "0.22.7",
7
+ "version": "0.23.0-canary.20261027164140",
8
8
  "description": "Fayz SDK — plugin-orders plugin",
9
9
  "type": "module",
10
10
  "sideEffects": false,
@@ -37,13 +37,13 @@
37
37
  "lucide-react": ">=0.400.0 <1.0.0"
38
38
  },
39
39
  "dependencies": {
40
- "@fayz-ai/admin": "^0.73.0",
41
- "@fayz-ai/contracts": "^0.4.0",
42
- "@fayz-ai/core": "^0.72.3",
43
- "@fayz-ai/financial": "^0.3.1",
44
- "@fayz-ai/orders": "^0.1.17",
45
- "@fayz-ai/sdk": "^0.70.0",
46
- "@fayz-ai/ui": "^0.72.3"
40
+ "@fayz-ai/admin": "^0.74.0-canary.20261027164140",
41
+ "@fayz-ai/contracts": "^0.5.0-canary.20261027164140",
42
+ "@fayz-ai/core": "^0.74.0-canary.20261027164140",
43
+ "@fayz-ai/financial": "^0.3.4-canary.20261027164140",
44
+ "@fayz-ai/orders": "^0.2.0-canary.20261027164140",
45
+ "@fayz-ai/sdk": "^0.74.0-canary.20261027164140",
46
+ "@fayz-ai/ui": "^0.74.0-canary.20261027164140"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@types/react": "^18.3.0",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/settings/useDeliverySettings.ts","../src/settings/DeliverySettings.tsx"],"names":["value","React"],"mappings":"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","file":"DeliverySettings-5ACP5XAG.js","sourcesContent":["import React from 'react'\nimport { getSupabaseClientOptional } from '@fayz-ai/core'\n\n// ---------------------------------------------------------------------------\n// useDeliverySettings — a política de entrega da casa, lida e salva\n// ---------------------------------------------------------------------------\n// Mesma forma do `useStoreSettings` do plugin-shop, e pela mesma razão: cada\n// linha é UMA decisão com significado imediato (\"entrego em 45 min\"), então\n// salva sozinha, com debounce, e a tela diz \"salvando…\" em vez de pedir que\n// alguém lembre no que tocou.\n//\n// Onde mora: `tenants.settings`, pelas RPCs do spine (`tenant_settings` para\n// ler tudo de uma vez, `tenant_setting_set` para gravar chave a chave). A\n// função recusa chave não registrada — ver a migration 041 — e cobra\n// `settings.manage`, então o garçom não muda a taxa.\n\nconst DEBOUNCE_MS = 400\nconst PREFIX = 'delivery.'\n\nexport interface DeliverySettings {\n enabled?: boolean\n fee?: number\n freeOver?: number | null\n minOrder?: number\n etaMinutes?: number\n radiusKm?: number\n}\n\n/** Chave no banco ⇄ campo na tela. Uma tabela, para os dois sentidos. */\nconst KEYS: Record<keyof DeliverySettings, string> = {\n enabled: 'delivery.enabled',\n fee: 'delivery.fee',\n freeOver: 'delivery.free_over',\n minOrder: 'delivery.min_order',\n etaMinutes: 'delivery.eta_minutes',\n radiusKm: 'delivery.radius_km',\n}\n\nexport interface DeliverySettingsHandle {\n value: DeliverySettings\n set: (patch: DeliverySettings) => void\n loading: boolean\n saving: boolean\n /** A gravação foi recusada. O valor otimista continua na tela. */\n error: string | null\n /** A LEITURA falhou: o que está na tela são padrões, não as escolhas da casa. */\n loadError: string | null\n /** Sem backend montado (mock/standalone): a tela diz isso em vez de fingir. */\n supported: boolean\n}\n\nfunction message(e: unknown): string {\n if (e instanceof Error) return e.message\n if (typeof e === 'object' && e && 'message' in e) return String((e as { message: unknown }).message)\n return String(e)\n}\n\nexport function useDeliverySettings(defaults: DeliverySettings = {}): DeliverySettingsHandle {\n const client = React.useMemo(() => getSupabaseClientOptional() as any, [])\n const supported = !!client\n\n const [stored, setStored] = React.useState<DeliverySettings>({})\n const [loading, setLoading] = React.useState(supported)\n const [saving, setSaving] = React.useState(false)\n const [error, setError] = React.useState<string | null>(null)\n const [loadError, setLoadError] = React.useState<string | null>(null)\n\n React.useEffect(() => {\n if (!client) return\n let cancelled = false\n setLoading(true)\n setLoadError(null)\n void client\n .rpc('tenant_settings')\n .then(({ data, error: e }: { data: Record<string, unknown> | null; error: unknown }) => {\n if (cancelled) return\n if (e) { setLoadError(message(e)); return }\n const flat = (data ?? {}) as Record<string, unknown>\n const next: DeliverySettings = {}\n for (const [field, key] of Object.entries(KEYS)) {\n // Só o que a casa DECIDIU. Uma chave ausente continua indefinida, e é\n // o `defaults` da tela que responde por ela — gravar o padrão de volta\n // transformaria \"não decidi\" em \"escolhi isto\".\n if (key in flat && flat[key] !== null) (next as any)[field] = flat[key]\n else if (key in flat && flat[key] === null) (next as any)[field] = null\n }\n setStored(next)\n })\n .catch((e: unknown) => { if (!cancelled) setLoadError(message(e)) })\n .finally(() => { if (!cancelled) setLoading(false) })\n return () => { cancelled = true }\n }, [client])\n\n // O patch acumula durante a janela do debounce: três cliques viram uma\n // rodada de gravações, não três corridas para ver quem grava por último.\n const pendingRef = React.useRef<DeliverySettings>({})\n const timerRef = React.useRef<ReturnType<typeof setTimeout> | null>(null)\n React.useEffect(() => () => { if (timerRef.current) clearTimeout(timerRef.current) }, [])\n\n const set = React.useCallback((patch: DeliverySettings) => {\n setStored((current) => ({ ...current, ...patch }))\n if (!client) return\n setError(null)\n setSaving(true)\n pendingRef.current = { ...pendingRef.current, ...patch }\n if (timerRef.current) clearTimeout(timerRef.current)\n timerRef.current = setTimeout(() => {\n const payload = pendingRef.current\n pendingRef.current = {}\n void Promise.all(\n Object.entries(payload).map(([field, value]) =>\n client.rpc('tenant_setting_set', { p_key: KEYS[field as keyof DeliverySettings], p_value: value ?? null })\n .then(({ error: e }: { error: unknown }) => { if (e) throw e }),\n ),\n )\n .catch((e: unknown) => setError(message(e)))\n .finally(() => setSaving(false))\n }, DEBOUNCE_MS)\n }, [client])\n\n const value = React.useMemo(() => ({ ...defaults, ...stored }), [defaults, stored])\n\n return { value, set, loading, saving, error, loadError, supported }\n}\n","import React from 'react'\nimport {\n SettingsGroup, ToggleRow, TextRow,\n useConnectors, ConnectorRow, ConnectorDetail, AddConnectorPanel, AddConnectorButton,\n openConnectorsPanel, useConnectorsPanelAvailable,\n type UnifiedConnector,\n} from '@fayz-ai/admin'\nimport { Skeleton } from '@fayz-ai/ui'\nimport { getComponent, usePluginRuntimeOptional } from '@fayz-ai/core'\nimport { AlertTriangle, Check, Loader2 } from 'lucide-react'\nimport { useDeliverySettings, type DeliverySettings as DeliveryValues } from './useDeliverySettings'\n\n/**\n * Entrega — o que a casa cobra para levar, e quem traz o pedido.\n *\n * Duas coisas na tela, e a distinção é o assunto (a mesma do \"Pagamentos\" da\n * loja, e por isso a mesma forma):\n *\n * • A POLÍTICA é da casa e muda com a estação: taxa, mínimo, tempo, raio.\n * Mora em `tenants.settings` (migration 041) e salva sozinha.\n *\n * • QUEM TRAZ O PEDIDO é uma conexão. iFood, 99Food, Keeta, Uber Eats já são\n * conectores declarados por este plugin; a tela FILTRA o hub por\n * `category === 'marketplace'` e reusa a mesma linha, a mesma marca e a\n * mesma jornada de conectar. Um cartão próprio aqui divergiria do hub na\n * primeira vez que qualquer um dos três mudasse.\n *\n * Entrega própria é legítima sem conector nenhum — a moto é do restaurante —\n * então nada aqui exige uma conexão para a política valer.\n */\nconst MARKETPLACE_CATEGORIES = ['marketplace']\n// A store with a SITE sets its delivery through the shop's own block\n// (`shop.delivery-settings`, shop 0130): the fee, free delivery and regions the\n// quote charges from, the minimum and the estimate the site enforces and shows.\n// Without a shop the policy rows below still save to tenants.settings (spine\n// 041) and nothing reads them yet — hence their «Em breve» mark.\nconst SHOP_DELIVERY_COMPONENT = 'shop.delivery-settings'\n\n/** Aceita \"12,90\" e \"12.90\"; devolve `null` para vazio. */\nfunction parseAmount(text: string): number | null {\n const clean = text.replace(/\\s/g, '').replace(',', '.')\n if (!clean) return null\n const n = Number(clean)\n return Number.isFinite(n) && n >= 0 ? n : NaN\n}\n\nfunction amountText(value: number | null | undefined): string {\n if (value === null || value === undefined) return ''\n return String(value).replace('.', ',')\n}\n\n/** Uma linha de dinheiro/número: texto local no input, número no banco. */\nfunction AmountRow({ label, description, hint, value, onCommit, pending }: {\n pending?: boolean\n label: string\n description?: string\n hint?: string\n value: number | null | undefined\n onCommit: (next: number | null) => void\n}) {\n const [text, setText] = React.useState(() => amountText(value))\n const [invalid, setInvalid] = React.useState(false)\n // O valor do servidor ganha quando muda por fora (carregou, ou outra aba).\n React.useEffect(() => { setText(amountText(value)) }, [value])\n\n return (\n <TextRow\n pending={pending}\n label={label}\n description={description}\n value={text}\n onChange={(next) => { setText(next); setInvalid(false) }}\n // Só no blur/Enter: salvar por tecla gravaria '1' e '19' no caminho para\n // '19,90', e cada um deles é uma taxa que a casa cobrou de verdade.\n onBlurCommit={() => {\n const parsed = parseAmount(text)\n if (Number.isNaN(parsed)) { setInvalid(true); return }\n setInvalid(false)\n onCommit(parsed)\n }}\n hint={invalid ? 'Use um número, como 9,90.' : hint}\n invalid={invalid}\n placeholder=\"0,00\"\n />\n )\n}\n\nexport function DeliverySettings() {\n const runtime = usePluginRuntimeOptional()\n const shopActive = (runtime?.activePlugins ?? []).some((p) => (p as { id?: string }).id === 'shop')\n const ShopDelivery = shopActive\n ? (getComponent(SHOP_DELIVERY_COMPONENT) as React.ComponentType<unknown> | undefined)\n : undefined\n const settings = useDeliverySettings({ enabled: true, fee: 0, minOrder: 0, etaMinutes: 45, radiusKm: 0 })\n const { value, set } = settings\n const { connectors } = useConnectors({ hostPluginId: 'orders', includeGrants: false })\n const [adding, setAdding] = React.useState(false)\n const [selected, setSelected] = React.useState<UnifiedConnector | null>(null)\n const panelAvailable = useConnectorsPanelAvailable()\n\n const openJourney = React.useCallback((connector: UnifiedConnector) => {\n // Mesma regra do hub: a gaveta do assistente é dona da jornada quando está\n // montada, e a folha é o fallback para o fluxo nunca ficar sem saída.\n if (panelAvailable) openConnectorsPanel(connector)\n else setSelected(connector)\n }, [panelAvailable])\n\n const marketplaces = React.useMemo(\n () => (connectors ?? []).filter((c) => c.category && MARKETPLACE_CATEGORIES.includes(c.category)),\n [connectors],\n )\n\n const patch = (next: DeliveryValues) => set(next)\n\n if (!settings.supported) {\n return (\n <div className=\"rounded-lg border border-amber-500/30 bg-amber-500/5 p-4 text-sm\">\n <p className=\"flex items-center gap-2 font-medium text-amber-700 dark:text-amber-500\">\n <AlertTriangle className=\"h-4 w-4 shrink-0\" />\n Este app não guarda a configuração de entrega\n </p>\n <p className=\"mt-1 text-muted-foreground\">\n Não há backend montado aqui, então nada abaixo seria salvo — e por isso não é mostrado.\n </p>\n </div>\n )\n }\n\n if (settings.loading) {\n return (\n <div className=\"space-y-4\">\n <Skeleton className=\"h-28 w-full rounded-lg\" />\n <Skeleton className=\"h-40 w-full rounded-lg\" />\n </div>\n )\n }\n\n return (\n <div className=\"space-y-4\">\n {settings.loadError && (\n <div className=\"rounded-lg border border-destructive/30 bg-destructive/5 p-3 text-sm\">\n <p className=\"flex items-center gap-2 font-medium text-destructive\">\n <AlertTriangle className=\"h-4 w-4 shrink-0\" />\n Não foi possível carregar a configuração de entrega\n </p>\n <p className=\"mt-1 text-muted-foreground\">\n O que aparece abaixo são os valores padrão, não as suas escolhas. Recarregue a página\n antes de alterar algo — salvar agora sobrescreveria o que não conseguimos ler.\n </p>\n <p className=\"mt-1 text-xs text-muted-foreground\">{settings.loadError}</p>\n </div>\n )}\n\n {ShopDelivery ? <ShopDelivery /> : <>\n <SettingsGroup\n title=\"Entrega\"\n description=\"Vale para o pedido que sai da casa. O quadro de despacho continua existindo com a entrega desligada — o histórico não some.\"\n >\n <ToggleRow\n pending\n label=\"A casa entrega\"\n description=\"Desligado, nenhum canal novo nasce como entrega.\"\n checked={value.enabled !== false}\n onChange={(checked) => patch({ enabled: checked })}\n />\n <AmountRow\n pending\n label=\"Taxa de entrega\"\n description=\"Cobrada por pedido, na moeda da casa.\"\n hint=\"Zero = entrega sem taxa.\"\n value={value.fee}\n onCommit={(next) => patch({ fee: next ?? 0 })}\n />\n <AmountRow\n pending\n label=\"Frete grátis acima de\"\n description=\"Acima deste valor de pedido a taxa é zerada.\"\n hint=\"Vazio = a taxa vale sempre.\"\n value={value.freeOver}\n onCommit={(next) => patch({ freeOver: next })}\n />\n <AmountRow\n pending\n label=\"Pedido mínimo\"\n description=\"Abaixo disso a casa não entrega.\"\n hint=\"Zero = sem mínimo.\"\n value={value.minOrder}\n onCommit={(next) => patch({ minOrder: next ?? 0 })}\n />\n </SettingsGroup>\n\n <SettingsGroup\n title=\"Até onde, e em quanto tempo\"\n description=\"O que o cliente ouve quando pergunta — e o que o despacho promete.\"\n >\n <AmountRow\n pending\n label=\"Tempo estimado (min)\"\n description=\"Da confirmação até a porta.\"\n value={value.etaMinutes}\n onCommit={(next) => patch({ etaMinutes: next === null ? 0 : Math.round(next) })}\n />\n <AmountRow\n pending\n label=\"Raio de entrega (km)\"\n description=\"Distância máxima a partir da casa.\"\n hint=\"Zero = sem limite declarado.\"\n value={value.radiusKm}\n onCommit={(next) => patch({ radiusKm: next ?? 0 })}\n />\n </SettingsGroup>\n </>}\n\n <div>\n <div className=\"flex items-start justify-between gap-4 px-1 pb-1 pt-4\">\n <div>\n <h3 className=\"text-sm font-semibold\">Quem traz o pedido</h3>\n <p className=\"mt-0.5 text-[10px] text-muted-foreground\">\n Marketplaces conectados entram no quadro sozinhos, cada pedido marcado com a origem.\n A credencial vai para o cofre, nunca para o banco da casa.\n </p>\n </div>\n <AddConnectorButton onClick={() => setAdding(true)} />\n </div>\n <div className=\"rounded-card border bg-card shadow-sm\">\n {marketplaces.length === 0 ? (\n <p className=\"p-4 text-sm text-muted-foreground\">\n Nenhum marketplace disponível para este app ainda. A entrega própria funciona sem nenhum.\n </p>\n ) : (\n <ul className=\"divide-y\">\n {marketplaces.map((connector) => (\n <ConnectorRow key={connector.id} connector={connector} onOpen={openJourney} />\n ))}\n </ul>\n )}\n </div>\n </div>\n\n <div className=\"flex min-h-5 items-center gap-1.5 px-1 text-xs text-muted-foreground\">\n {settings.error ? (\n <span className=\"flex items-center gap-1.5 text-destructive\">\n <AlertTriangle className=\"h-3.5 w-3.5 shrink-0\" />\n Não foi possível salvar: {settings.error}\n </span>\n ) : settings.saving ? (\n <>\n <Loader2 className=\"h-3.5 w-3.5 shrink-0 animate-spin\" />\n Salvando…\n </>\n ) : (\n <>\n <Check className=\"h-3.5 w-3.5 shrink-0\" />\n As alterações são salvas automaticamente.\n </>\n )}\n </div>\n\n <AddConnectorPanel\n open={adding}\n onOpenChange={setAdding}\n connectors={connectors}\n categories={MARKETPLACE_CATEGORIES}\n onSelect={(connector) => { setAdding(false); openJourney(connector) }}\n />\n <ConnectorDetail\n connector={selected}\n open={!!selected}\n onOpenChange={(open) => { if (!open) setSelected(null) }}\n />\n </div>\n )\n}\n"]}