@fayz-ai/plugin-shop 0.11.2 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ShopPage-YB5ZWECJ.js → ShopPage-QFIM2HDU.js} +1516 -406
- package/dist/ShopPage-QFIM2HDU.js.map +1 -0
- package/dist/{chunk-HAKXHHAG.js → chunk-2VMTPRGC.js} +202 -11
- package/dist/chunk-2VMTPRGC.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1814 -442
- package/dist/index.js.map +1 -1
- package/dist/integrations/abacatepay/connectorDef.d.ts.map +1 -1
- package/dist/integrations/abacatepay/data.d.ts +40 -0
- package/dist/integrations/abacatepay/data.d.ts.map +1 -0
- package/dist/integrations/abacatepay/limits.d.ts +26 -0
- package/dist/integrations/abacatepay/limits.d.ts.map +1 -0
- package/dist/integrations/abacatepay/sync.d.ts +88 -0
- package/dist/integrations/abacatepay/sync.d.ts.map +1 -0
- package/dist/integrations/bling/data.d.ts.map +1 -1
- package/dist/integrations/mercadopago/connectorDef.d.ts +41 -0
- package/dist/integrations/mercadopago/connectorDef.d.ts.map +1 -0
- package/dist/integrations/neochef/connectorDef.d.ts +12 -0
- package/dist/integrations/neochef/connectorDef.d.ts.map +1 -0
- package/dist/integrations/neochef/data.d.ts +54 -0
- package/dist/integrations/neochef/data.d.ts.map +1 -0
- package/dist/integrations/neochef/index.d.ts +8 -0
- package/dist/integrations/neochef/index.d.ts.map +1 -0
- package/dist/integrations/neochef/limits.d.ts +26 -0
- package/dist/integrations/neochef/limits.d.ts.map +1 -0
- package/dist/integrations/neochef/mapping.d.ts +31 -0
- package/dist/integrations/neochef/mapping.d.ts.map +1 -0
- package/dist/integrations/neochef/mark.d.ts +21 -0
- package/dist/integrations/neochef/mark.d.ts.map +1 -0
- package/dist/integrations/neochef/types.d.ts +71 -0
- package/dist/integrations/neochef/types.d.ts.map +1 -0
- package/dist/integrations/vindi/connectorDef.d.ts +67 -35
- package/dist/integrations/vindi/connectorDef.d.ts.map +1 -1
- package/dist/views/ContentPage.d.ts.map +1 -1
- package/dist/views/CustomerModal.d.ts +33 -0
- package/dist/views/CustomerModal.d.ts.map +1 -0
- package/dist/views/NewOrderCharge.d.ts +39 -3
- package/dist/views/NewOrderCharge.d.ts.map +1 -1
- package/dist/views/NewOrderPage.d.ts +10 -1
- package/dist/views/NewOrderPage.d.ts.map +1 -1
- package/dist/views/OrderDetailView.d.ts.map +1 -1
- package/dist/views/OrdersAgentSurface.d.ts +10 -0
- package/dist/views/OrdersAgentSurface.d.ts.map +1 -0
- package/dist/views/ProductPositionsTab.d.ts +7 -0
- package/dist/views/ProductPositionsTab.d.ts.map +1 -0
- package/dist/views/ProductStockTab.d.ts +84 -0
- package/dist/views/ProductStockTab.d.ts.map +1 -0
- package/dist/views/ShopPage.d.ts.map +1 -1
- package/dist/views/StockEntryModal.d.ts +32 -0
- package/dist/views/StockEntryModal.d.ts.map +1 -0
- package/dist/views/customerEntity.d.ts.map +1 -1
- package/dist/views/discount-agent.d.ts +2 -0
- package/dist/views/discount-agent.d.ts.map +1 -0
- package/dist/views/new-order-rules.d.ts +23 -1
- package/dist/views/new-order-rules.d.ts.map +1 -1
- package/dist/views/orders-agent.d.ts +11 -0
- package/dist/views/orders-agent.d.ts.map +1 -0
- package/dist/views/product-matching.d.ts +38 -0
- package/dist/views/product-matching.d.ts.map +1 -0
- package/dist/views/productEntity.d.ts.map +1 -1
- package/dist/views/stock-agent.d.ts +82 -0
- package/dist/views/stock-agent.d.ts.map +1 -0
- package/package.json +8 -6
- package/dist/ShopPage-YB5ZWECJ.js.map +0 -1
- package/dist/chunk-HAKXHHAG.js.map +0 -1
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { AgentSurfaceTool } from '@fayz-ai/admin';
|
|
2
|
+
import type { ShopProvider } from '@fayz-ai/shop';
|
|
3
|
+
export interface MovementPlan {
|
|
4
|
+
kind: string;
|
|
5
|
+
quantity: number;
|
|
6
|
+
reasonCode: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* O que o lojista disse, traduzido para uma linha do razão.
|
|
10
|
+
*
|
|
11
|
+
* A razão manda na espécie quando ela implica uma: "saída por quebra" não é um
|
|
12
|
+
* ajuste com uma observação, é uma PERDA — e o relatório de perdas do mês
|
|
13
|
+
* depende dessa diferença. Por isso a tabela de razões é consultada antes de a
|
|
14
|
+
* espécie do verbo valer.
|
|
15
|
+
*/
|
|
16
|
+
export declare function planMovement(rawType: string, quantity: number, reasonCode?: string): MovementPlan | {
|
|
17
|
+
error: string;
|
|
18
|
+
message: string;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* O razão não está NESTA loja.
|
|
22
|
+
*
|
|
23
|
+
* O ledger inteiro — `plg_shop_stock_balances`, `plg_shop_stock_movements`, e a
|
|
24
|
+
* coluna `tracking` na variante — nasce na migration 0034, e um pool que nunca
|
|
25
|
+
* a aplicou responde com o erro cru do PostgREST: "Could not find the table" ou
|
|
26
|
+
* "column ... does not exist". Isso é verdade e é ilegível para quem está
|
|
27
|
+
* tentando lançar uma nota, e pior: parece defeito da tela.
|
|
28
|
+
*
|
|
29
|
+
* Reconhecer a falta e dizer o nome dela é a diferença entre "o app quebrou" e
|
|
30
|
+
* "falta aplicar o estoque nesta loja".
|
|
31
|
+
*/
|
|
32
|
+
export declare function isLedgerMissing(error: unknown): boolean;
|
|
33
|
+
export declare const LEDGER_MISSING_MESSAGE: string;
|
|
34
|
+
/**
|
|
35
|
+
* A data que o lojista escolheu, virada em instante — ou nada.
|
|
36
|
+
*
|
|
37
|
+
* Duas armadilhas de uma vez. A primeira: mandar a data de HOJE é trocar o
|
|
38
|
+
* relógio do servidor pelo do navegador sem ganhar nada, então um dia não
|
|
39
|
+
* alterado devolve `undefined` e o razão carimba o próprio `now()`. A segunda:
|
|
40
|
+
* `new Date('2026-08-21')` é meia-noite UTC, que no Brasil é o dia 20 às 21h —
|
|
41
|
+
* uma nota lançada retroativa cairia um dia antes do que foi digitado. Meio-dia
|
|
42
|
+
* local sobrevive a qualquer fuso.
|
|
43
|
+
*/
|
|
44
|
+
export declare function occurredAtFor(chosenDay: string, today: string): string | undefined;
|
|
45
|
+
export interface CommitMovementArgs {
|
|
46
|
+
variantId: string;
|
|
47
|
+
movementType: string;
|
|
48
|
+
quantity: number;
|
|
49
|
+
reasonCode?: string;
|
|
50
|
+
locationId?: string;
|
|
51
|
+
note?: string;
|
|
52
|
+
occurredAt?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface CommittedMovement {
|
|
55
|
+
ok: true;
|
|
56
|
+
movementId: string;
|
|
57
|
+
kind: string;
|
|
58
|
+
quantity: number;
|
|
59
|
+
reasonCode: string;
|
|
60
|
+
available: number;
|
|
61
|
+
}
|
|
62
|
+
export interface RefusedMovement {
|
|
63
|
+
ok: false;
|
|
64
|
+
error: string;
|
|
65
|
+
message?: string;
|
|
66
|
+
available?: number;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* O único caminho de gravação do razão — do formulário e do agente.
|
|
70
|
+
*
|
|
71
|
+
* Ter dois seria ter duas opiniões sobre o sinal, sobre a guarda de negativo e
|
|
72
|
+
* sobre qual razão implica qual espécie, e elas divergiriam na primeira vez que
|
|
73
|
+
* alguém mexesse num só. A porta é a mesma; o que muda é quem digita.
|
|
74
|
+
*/
|
|
75
|
+
export declare function commitMovement(args: CommitMovementArgs): Promise<CommittedMovement | RefusedMovement>;
|
|
76
|
+
export interface StockAgentDeps {
|
|
77
|
+
getProvider: () => ShopProvider;
|
|
78
|
+
onChanged?: () => void;
|
|
79
|
+
}
|
|
80
|
+
export declare function createStockAgentTools({ getProvider, onChanged }: StockAgentDeps): AgentSurfaceTool[];
|
|
81
|
+
export declare const STOCK_INSTRUCTIONS: string;
|
|
82
|
+
//# sourceMappingURL=stock-agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stock-agent.d.ts","sourceRoot":"","sources":["../../src/views/stock-agent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAGtD,OAAO,KAAK,EAAW,YAAY,EAAE,MAAM,eAAe,CAAA;AA4C1D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,YAAY,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAsBnD;AA2DD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGvD;AAED,eAAO,MAAM,sBAAsB,QAEsB,CAAA;AAEzD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIlF;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,IAAI,CAAA;IACR,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,GAAG,eAAe,CAAC,CA2D3G;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,YAAY,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAoCD,wBAAgB,qBAAqB,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,cAAc,GAAG,gBAAgB,EAAE,CA6FpG;AAED,eAAO,MAAM,kBAAkB,QASvB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fayz-ai/plugin-shop",
|
|
3
3
|
"fayz": {
|
|
4
|
-
"status": "preview"
|
|
4
|
+
"status": "preview",
|
|
5
|
+
"dependencies": []
|
|
5
6
|
},
|
|
6
|
-
"version": "0.
|
|
7
|
+
"version": "0.13.0",
|
|
7
8
|
"description": "[experimental] Fayz SDK — plugin-shop plugin",
|
|
8
9
|
"type": "module",
|
|
9
10
|
"sideEffects": false,
|
|
@@ -27,10 +28,11 @@
|
|
|
27
28
|
},
|
|
28
29
|
"dependencies": {
|
|
29
30
|
"@tanstack/react-table": "^8.20.0",
|
|
30
|
-
"@fayz-ai/core": "^0.
|
|
31
|
-
"@fayz-ai/admin": "^0.
|
|
32
|
-
"@fayz-ai/
|
|
33
|
-
"@fayz-ai/
|
|
31
|
+
"@fayz-ai/core": "^0.16.0",
|
|
32
|
+
"@fayz-ai/admin": "^0.16.0",
|
|
33
|
+
"@fayz-ai/plugin-inventory": "^0.11.0",
|
|
34
|
+
"@fayz-ai/shop": "^0.16.0",
|
|
35
|
+
"@fayz-ai/ui": "^0.16.0"
|
|
34
36
|
},
|
|
35
37
|
"devDependencies": {
|
|
36
38
|
"@types/node": "^20.0.0",
|