@fayz-ai/plugin-automations 0.10.2 → 0.12.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/data/fayz.d.ts.map +1 -1
- package/dist/data/payment-preflight.d.ts +23 -0
- package/dist/data/payment-preflight.d.ts.map +1 -0
- package/dist/data/provider-templates.d.ts +34 -0
- package/dist/data/provider-templates.d.ts.map +1 -0
- package/dist/data/templates.d.ts.map +1 -1
- package/dist/data/test-send.d.ts +18 -0
- package/dist/data/test-send.d.ts.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1396 -749
- package/dist/index.js.map +1 -1
- package/dist/views/AutomationDetailPage.d.ts +26 -1
- package/dist/views/AutomationDetailPage.d.ts.map +1 -1
- package/dist/views/AutomationsList.d.ts +21 -1
- package/dist/views/AutomationsList.d.ts.map +1 -1
- package/dist/views/ProviderTemplateStatus.d.ts +35 -0
- package/dist/views/ProviderTemplateStatus.d.ts.map +1 -0
- package/dist/views/whatsapp-preview-bg.d.ts +2 -0
- package/dist/views/whatsapp-preview-bg.d.ts.map +1 -0
- package/package.json +7 -6
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { MessageAction, MessageActionId } from '@fayz-ai/core';
|
|
2
3
|
import type { MessageTemplateStore } from '../data/templates';
|
|
4
|
+
/**
|
|
5
|
+
* A lista de botões depois de ligar ou desligar um deles.
|
|
6
|
+
*
|
|
7
|
+
* A ordem é a do catálogo e não a do clique: os botões chegam ao WhatsApp
|
|
8
|
+
* numerados, e reordená-los ao ligar o terceiro mudaria o que o segundo faz
|
|
9
|
+
* numa mensagem que a Meta já aprovou.
|
|
10
|
+
*/
|
|
11
|
+
export declare function nextActions(current: MessageAction[], id: MessageActionId, on: boolean): MessageAction[];
|
|
3
12
|
export interface AutomationDetailPageProps {
|
|
4
13
|
eventKey?: string;
|
|
5
14
|
channel?: string;
|
|
@@ -7,6 +16,22 @@ export interface AutomationDetailPageProps {
|
|
|
7
16
|
/** Para onde o "voltar" leva — a lista pode morar no menu ou nas
|
|
8
17
|
* configurações, e a pessoa tem que voltar por onde entrou. */
|
|
9
18
|
backTo?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Montada na coluna da direita, ao lado da lista, em vez de ser a tela.
|
|
21
|
+
*
|
|
22
|
+
* Some o cabeçalho próprio: quem nomeia a coluna e oferece a volta é o
|
|
23
|
+
* cabeçalho dela, e desenhar o nosso ali embaixo era o mesmo título duas
|
|
24
|
+
* vezes, com dois jeitos de sair.
|
|
25
|
+
*/
|
|
26
|
+
embedded?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Como sair, quando sair NÃO é navegar.
|
|
29
|
+
*
|
|
30
|
+
* Aberta pela coluna a partir de outra tela (o raio do CRM), a saída é fechar
|
|
31
|
+
* a coluna e continuar onde se estava — `backTo` levaria embora justamente a
|
|
32
|
+
* tela que se queria manter.
|
|
33
|
+
*/
|
|
34
|
+
onDone?: () => void;
|
|
10
35
|
}
|
|
11
|
-
export declare function AutomationDetailPage({ eventKey, channel, store, backTo }: AutomationDetailPageProps): React.JSX.Element;
|
|
36
|
+
export declare function AutomationDetailPage({ eventKey, channel, store, backTo, embedded, onDone }: AutomationDetailPageProps): React.JSX.Element;
|
|
12
37
|
//# sourceMappingURL=AutomationDetailPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutomationDetailPage.d.ts","sourceRoot":"","sources":["../../src/views/AutomationDetailPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"AutomationDetailPage.d.ts","sourceRoot":"","sources":["../../src/views/AutomationDetailPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAiD,MAAM,eAAe,CAAA;AAUlH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAwC7D;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,OAAO,GACzD,aAAa,EAAE,CASjB;AAiKD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,oBAAoB,CAAA;IAC3B;oEACgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAuB,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,yBAAyB,qBA2gBtI"}
|
|
@@ -1,6 +1,26 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { MessageTemplateStore } from '../data/templates';
|
|
3
|
-
export declare function AutomationsList({ store }: {
|
|
3
|
+
export declare function AutomationsList({ store, variant, basePath }: {
|
|
4
4
|
store: MessageTemplateStore;
|
|
5
|
+
/**
|
|
6
|
+
* Onde esta lista mora, e portanto sob que caminho o detalhe abre.
|
|
7
|
+
*
|
|
8
|
+
* A lista pode estar no menu (`/automations`) ou dentro de Configurações
|
|
9
|
+
* (`/settings/automations`) — e o detalhe tem que abrir SOB ela, senão clicar
|
|
10
|
+
* numa linha dentro de Configurações jogava a pessoa para fora da tela em que
|
|
11
|
+
* ela estava.
|
|
12
|
+
*/
|
|
13
|
+
basePath?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Onde a lista está montada, e portanto que faixa de abas ela desenha.
|
|
16
|
+
*
|
|
17
|
+
* 'page' a tela é dela: a faixa é a sub-cabeça do módulo, sangra até as
|
|
18
|
+
* bordas e sua régua encontra a barra da shell.
|
|
19
|
+
* 'panel' ela é o conteúdo de uma aba de Configurações, onde a shell já
|
|
20
|
+
* escreveu "← Configurações / Automações". Aí vale a MESMA faixa dos
|
|
21
|
+
* outros painéis de configuração (Agenda, CRM, Formulários), que
|
|
22
|
+
* começa e termina onde o conteúdo começa e termina.
|
|
23
|
+
*/
|
|
24
|
+
variant?: 'page' | 'panel';
|
|
5
25
|
}): React.JSX.Element;
|
|
6
26
|
//# sourceMappingURL=AutomationsList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutomationsList.d.ts","sourceRoot":"","sources":["../../src/views/AutomationsList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"AutomationsList.d.ts","sourceRoot":"","sources":["../../src/views/AutomationsList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAkDzB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AA+F7D,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,OAAgB,EAAE,QAAyB,EAAE,EAAE;IACtF,KAAK,EAAE,oBAAoB,CAAA;IAC3B;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAC3B,qBAgUA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { MessageChannel } from '@fayz-ai/core';
|
|
3
|
+
import { type ProviderTemplateRow } from '../data/provider-templates';
|
|
4
|
+
export type ProviderApproval = {
|
|
5
|
+
tone: 'ok';
|
|
6
|
+
label: string;
|
|
7
|
+
detail?: string;
|
|
8
|
+
} | {
|
|
9
|
+
tone: 'waiting';
|
|
10
|
+
label: string;
|
|
11
|
+
detail?: string;
|
|
12
|
+
} | {
|
|
13
|
+
tone: 'error';
|
|
14
|
+
label: string;
|
|
15
|
+
detail?: string;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* O que a linha mostra para um (evento × canal).
|
|
19
|
+
*
|
|
20
|
+
* `null` = nada a dizer, e é o caso comum: canal sem aprovação, ou WhatsApp
|
|
21
|
+
* ainda não conectado (sem nenhuma linha, o assunto não existe para este
|
|
22
|
+
* negócio e uma pastilha vermelha seria um alarme sobre algo que ninguém pediu).
|
|
23
|
+
*
|
|
24
|
+
* A regra que decide o texto é a mesma do envio: sai pelo modelo do produto até
|
|
25
|
+
* o do tenant ser aprovado. Por isso um modelo do tenant recusado, com o do
|
|
26
|
+
* produto aprovado, é um AVISO e não uma falha — a mensagem continua saindo.
|
|
27
|
+
*/
|
|
28
|
+
export declare function providerApprovalFor(rows: ProviderTemplateRow[], eventKey: string, channel: MessageChannel): ProviderApproval | null;
|
|
29
|
+
export declare function ProviderTemplateBadge({ approval, showDetail }: {
|
|
30
|
+
approval: ProviderApproval | null;
|
|
31
|
+
showDetail?: boolean;
|
|
32
|
+
}): React.JSX.Element | null;
|
|
33
|
+
/** Uma leitura por tela. Nunca lança: sem a tabela, a lista continua inteira. */
|
|
34
|
+
export declare function useProviderTemplates(): ProviderTemplateRow[];
|
|
35
|
+
//# sourceMappingURL=ProviderTemplateStatus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProviderTemplateStatus.d.ts","sourceRoot":"","sources":["../../src/views/ProviderTemplateStatus.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,4BAA4B,CAAA;AAenC,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAErD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,mBAAmB,EAAE,EAC3B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,cAAc,GACtB,gBAAgB,GAAG,IAAI,CAsCzB;AAQD,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;IAC9D,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACjC,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,4BAcA;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,IAAI,mBAAmB,EAAE,CAQ5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"whatsapp-preview-bg.d.ts","sourceRoot":"","sources":["../../src/views/whatsapp-preview-bg.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,mBAAmB,8DAA8D,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fayz-ai/plugin-automations",
|
|
3
3
|
"fayz": {
|
|
4
|
-
"status": "preview"
|
|
4
|
+
"status": "preview",
|
|
5
|
+
"dependencies": []
|
|
5
6
|
},
|
|
6
|
-
"version": "0.
|
|
7
|
+
"version": "0.12.0",
|
|
7
8
|
"description": "[experimental] Fayz SDK — workflows & automations plugin",
|
|
8
9
|
"type": "module",
|
|
9
10
|
"sideEffects": false,
|
|
@@ -25,10 +26,10 @@
|
|
|
25
26
|
"lucide-react": ">=0.400.0 <1.0.0"
|
|
26
27
|
},
|
|
27
28
|
"dependencies": {
|
|
28
|
-
"@fayz-ai/core": "^0.
|
|
29
|
-
"@fayz-ai/admin": "^0.
|
|
30
|
-
"@fayz-ai/sdk": "^0.
|
|
31
|
-
"@fayz-ai/ui": "^0.
|
|
29
|
+
"@fayz-ai/core": "^0.16.0",
|
|
30
|
+
"@fayz-ai/admin": "^0.16.0",
|
|
31
|
+
"@fayz-ai/sdk": "^0.15.0",
|
|
32
|
+
"@fayz-ai/ui": "^0.16.0"
|
|
32
33
|
},
|
|
33
34
|
"devDependencies": {
|
|
34
35
|
"@types/react": "^18.3.0",
|