@fayz-ai/core 0.9.0 → 0.10.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/README.md +2 -2
- package/dist/access/index.js.map +1 -1
- package/dist/{chunk-L4TLMYGC.js → chunk-6RBW2Y5K.js} +3 -3
- package/dist/chunk-6RBW2Y5K.js.map +1 -0
- package/dist/chunk-732GZEUI.js +1592 -0
- package/dist/chunk-732GZEUI.js.map +1 -0
- package/dist/{chunk-X5THHG6T.js → chunk-CPMHCTX3.js} +3 -3
- package/dist/chunk-CPMHCTX3.js.map +1 -0
- package/dist/{chunk-V2MSAUHO.js → chunk-JO7Z2AOE.js} +2 -2
- package/dist/chunk-JO7Z2AOE.js.map +1 -0
- package/dist/{chunk-5RJVUC6J.js → chunk-M27JPX3K.js} +12 -3
- package/dist/chunk-M27JPX3K.js.map +1 -0
- package/dist/chunk-OXQGRJZT.js +125 -0
- package/dist/chunk-OXQGRJZT.js.map +1 -0
- package/dist/data/backend-env.d.ts +38 -0
- package/dist/data/backend-env.d.ts.map +1 -0
- package/dist/data/index.js +1 -1
- package/dist/entity/events.d.ts +14 -0
- package/dist/entity/events.d.ts.map +1 -0
- package/dist/events/envelope.d.ts +31 -0
- package/dist/events/envelope.d.ts.map +1 -0
- package/dist/events/index.d.ts +4 -0
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/log.d.ts +44 -0
- package/dist/events/log.d.ts.map +1 -0
- package/dist/events/types.d.ts +40 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/i18n/index.d.ts +10 -0
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +27 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +388 -52
- package/dist/index.js.map +1 -1
- package/dist/integrations/index.js +1 -1
- package/dist/{integrations/index.d.ts → integrations.d.ts} +2 -2
- package/dist/integrations.d.ts.map +1 -0
- package/dist/{address/index.d.ts → lib/address.d.ts} +1 -1
- package/dist/{address/index.d.ts.map → lib/address.d.ts.map} +1 -1
- package/dist/{phone/index.d.ts → lib/phone.d.ts} +1 -1
- package/dist/lib/phone.d.ts.map +1 -0
- package/dist/{seo/index.d.ts → lib/seo.d.ts} +18 -1
- package/dist/lib/seo.d.ts.map +1 -0
- package/dist/{tenant/index.d.ts → lib/tenant.d.ts} +1 -1
- package/dist/lib/tenant.d.ts.map +1 -0
- package/dist/manifest/index.d.ts +1 -1
- package/dist/manifest/index.d.ts.map +1 -1
- package/dist/messaging/index.d.ts +3 -0
- package/dist/messaging/index.d.ts.map +1 -0
- package/dist/messaging/registry.d.ts +35 -0
- package/dist/messaging/registry.d.ts.map +1 -0
- package/dist/messaging/types.d.ts +67 -0
- package/dist/messaging/types.d.ts.map +1 -0
- package/dist/plugin/index.js +2 -1
- package/dist/plugin/runtime.d.ts +17 -0
- package/dist/plugin/runtime.d.ts.map +1 -1
- package/dist/registry/block-catalog.d.ts +78 -0
- package/dist/registry/block-catalog.d.ts.map +1 -0
- package/dist/registry/block-constraints.d.ts +64 -0
- package/dist/registry/block-constraints.d.ts.map +1 -0
- package/dist/registry/block-schema.d.ts +69 -0
- package/dist/registry/block-schema.d.ts.map +1 -0
- package/dist/registry/blocks.d.ts +84 -0
- package/dist/registry/blocks.d.ts.map +1 -0
- package/dist/registry/entities.d.ts +153 -0
- package/dist/registry/entities.d.ts.map +1 -0
- package/dist/registry/extension-points.d.ts +117 -0
- package/dist/registry/extension-points.d.ts.map +1 -0
- package/dist/registry/handles.d.ts +41 -0
- package/dist/registry/handles.d.ts.map +1 -0
- package/dist/registry/index.d.ts +41 -41
- package/dist/registry/index.d.ts.map +1 -1
- package/dist/registry/loaders.d.ts +55 -0
- package/dist/registry/loaders.d.ts.map +1 -0
- package/dist/registry/registry-class.d.ts +157 -0
- package/dist/registry/registry-class.d.ts.map +1 -0
- package/dist/registry/schema-check.d.ts +14 -0
- package/dist/registry/schema-check.d.ts.map +1 -0
- package/dist/router/index.d.ts +78 -1
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +1 -1
- package/dist/testing/index.js +1 -1
- package/dist/{testing/index.d.ts → testing.d.ts} +3 -3
- package/dist/testing.d.ts.map +1 -0
- package/dist/types/analytics.d.ts +196 -0
- package/dist/types/analytics.d.ts.map +1 -0
- package/dist/types/crud.d.ts +22 -2
- package/dist/types/crud.d.ts.map +1 -1
- package/dist/types/plugins.d.ts +55 -1
- package/dist/types/plugins.d.ts.map +1 -1
- package/package.json +6 -18
- package/dist/blocks/index.d.ts +0 -25
- package/dist/blocks/index.d.ts.map +0 -1
- package/dist/chunk-5RJVUC6J.js.map +0 -1
- package/dist/chunk-L4TLMYGC.js.map +0 -1
- package/dist/chunk-V2MSAUHO.js.map +0 -1
- package/dist/chunk-X5THHG6T.js.map +0 -1
- package/dist/chunk-Y2C2FBQP.js +0 -35
- package/dist/chunk-Y2C2FBQP.js.map +0 -1
- package/dist/chunk-YH25Y4FW.js +0 -311
- package/dist/chunk-YH25Y4FW.js.map +0 -1
- package/dist/integrations/index.d.ts.map +0 -1
- package/dist/phone/index.d.ts.map +0 -1
- package/dist/seo/index.d.ts.map +0 -1
- package/dist/tenant/index.d.ts.map +0 -1
- package/dist/testing/index.d.ts.map +0 -1
- package/src/access/denial.ts +0 -33
- package/src/access/engine.test.ts +0 -48
- package/src/access/engine.ts +0 -136
- package/src/access/index.ts +0 -14
- package/src/access/limits.ts +0 -18
- package/src/address/index.ts +0 -188
- package/src/app/render.tsx +0 -69
- package/src/blocks/index.tsx +0 -68
- package/src/data/archetype.ts +0 -255
- package/src/data/bulk.ts +0 -35
- package/src/data/cached.ts +0 -55
- package/src/data/count.test.ts +0 -152
- package/src/data/count.ts +0 -131
- package/src/data/filters.test.ts +0 -70
- package/src/data/filters.ts +0 -90
- package/src/data/index.ts +0 -11
- package/src/data/mock.ts +0 -90
- package/src/data/platform-api.ts +0 -209
- package/src/data/refresh.ts +0 -115
- package/src/data/resolve.ts +0 -126
- package/src/data/supabase.ts +0 -230
- package/src/data/types.ts +0 -50
- package/src/entity/index.ts +0 -2
- package/src/entity/registry.ts +0 -49
- package/src/events/index.tsx +0 -82
- package/src/i18n/index.ts +0 -476
- package/src/i18n/shell-translations.en.ts +0 -875
- package/src/i18n/shell-translations.pt-br.ts +0 -873
- package/src/index.ts +0 -217
- package/src/integrations/index.ts +0 -237
- package/src/lib/cache.ts +0 -118
- package/src/lib/csv.ts +0 -54
- package/src/lib/format.ts +0 -58
- package/src/manifest/app-manifest.schema.json +0 -676
- package/src/manifest/index.ts +0 -518
- package/src/manifest/serialize.ts +0 -52
- package/src/phone/index.ts +0 -85
- package/src/plugin/createSafeDataProvider.ts +0 -30
- package/src/plugin/index.ts +0 -1
- package/src/plugin/runtime.ts +0 -331
- package/src/registry/index.ts +0 -163
- package/src/router/history.ts +0 -86
- package/src/router/index.ts +0 -29
- package/src/runtime/index.ts +0 -15
- package/src/runtime/oauth.ts +0 -219
- package/src/search/engine.ts +0 -559
- package/src/search/index.ts +0 -25
- package/src/search/text.ts +0 -206
- package/src/search/types.ts +0 -75
- package/src/seo/index.ts +0 -128
- package/src/tenant/index.ts +0 -38
- package/src/testing/index.ts +0 -116
- package/src/types/auth.ts +0 -41
- package/src/types/billing.ts +0 -39
- package/src/types/crud.ts +0 -184
- package/src/types/entities.ts +0 -142
- package/src/types/entitlements.ts +0 -45
- package/src/types/i18n.ts +0 -7
- package/src/types/index.ts +0 -11
- package/src/types/org.ts +0 -137
- package/src/types/payment.ts +0 -44
- package/src/types/permissions.ts +0 -32
- package/src/types/plugins.ts +0 -480
- package/src/types/theme.ts +0 -8
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
// src/router/index.ts
|
|
2
|
+
function normalize(path) {
|
|
3
|
+
if (!path) return "/";
|
|
4
|
+
return path.startsWith("/") ? path : `/${path}`;
|
|
5
|
+
}
|
|
6
|
+
function hashRouterAdapter() {
|
|
7
|
+
return {
|
|
8
|
+
navigate(to) {
|
|
9
|
+
window.location.hash = to;
|
|
10
|
+
},
|
|
11
|
+
replace(to) {
|
|
12
|
+
window.history.replaceState(null, "", `#${normalize(to)}`);
|
|
13
|
+
},
|
|
14
|
+
getCurrentPath() {
|
|
15
|
+
return window.location.hash.slice(1) || "/";
|
|
16
|
+
},
|
|
17
|
+
onPathChange(cb) {
|
|
18
|
+
const handler = () => cb(window.location.hash.slice(1) || "/");
|
|
19
|
+
window.addEventListener("hashchange", handler);
|
|
20
|
+
return () => window.removeEventListener("hashchange", handler);
|
|
21
|
+
},
|
|
22
|
+
href(to) {
|
|
23
|
+
return `#${normalize(to)}`;
|
|
24
|
+
},
|
|
25
|
+
interceptsLinkClicks: false
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
function historyRouterAdapter() {
|
|
29
|
+
const subscribers = /* @__PURE__ */ new Set();
|
|
30
|
+
let popstateBound = false;
|
|
31
|
+
const currentPath = () => window.location.pathname + window.location.search;
|
|
32
|
+
const emit = () => {
|
|
33
|
+
for (const cb of subscribers) cb(currentPath());
|
|
34
|
+
};
|
|
35
|
+
return {
|
|
36
|
+
navigate(to) {
|
|
37
|
+
const next = normalize(to);
|
|
38
|
+
if (next === currentPath()) return;
|
|
39
|
+
window.history.pushState(null, "", next);
|
|
40
|
+
emit();
|
|
41
|
+
},
|
|
42
|
+
replace(to) {
|
|
43
|
+
const next = normalize(to);
|
|
44
|
+
if (next === currentPath()) return;
|
|
45
|
+
window.history.replaceState(null, "", next);
|
|
46
|
+
emit();
|
|
47
|
+
},
|
|
48
|
+
getCurrentPath() {
|
|
49
|
+
return currentPath();
|
|
50
|
+
},
|
|
51
|
+
onPathChange(cb) {
|
|
52
|
+
subscribers.add(cb);
|
|
53
|
+
if (!popstateBound) {
|
|
54
|
+
window.addEventListener("popstate", emit);
|
|
55
|
+
popstateBound = true;
|
|
56
|
+
}
|
|
57
|
+
return () => {
|
|
58
|
+
subscribers.delete(cb);
|
|
59
|
+
if (subscribers.size === 0 && popstateBound) {
|
|
60
|
+
window.removeEventListener("popstate", emit);
|
|
61
|
+
popstateBound = false;
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
},
|
|
65
|
+
href(to) {
|
|
66
|
+
return normalize(to);
|
|
67
|
+
},
|
|
68
|
+
interceptsLinkClicks: true
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
function staticRouterAdapter(path, options = {}) {
|
|
72
|
+
const fixed = normalize(path);
|
|
73
|
+
const writeHref = options.href ?? ((to) => normalize(to));
|
|
74
|
+
return {
|
|
75
|
+
navigate() {
|
|
76
|
+
},
|
|
77
|
+
replace() {
|
|
78
|
+
},
|
|
79
|
+
getCurrentPath() {
|
|
80
|
+
return fixed;
|
|
81
|
+
},
|
|
82
|
+
onPathChange() {
|
|
83
|
+
return () => {
|
|
84
|
+
};
|
|
85
|
+
},
|
|
86
|
+
href(to) {
|
|
87
|
+
return writeHref(to);
|
|
88
|
+
},
|
|
89
|
+
interceptsLinkClicks: true
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
function hostRouterAdapter(host) {
|
|
93
|
+
return {
|
|
94
|
+
navigate(to) {
|
|
95
|
+
host.navigate(normalize(to));
|
|
96
|
+
},
|
|
97
|
+
replace(to) {
|
|
98
|
+
(host.replace ?? host.navigate)(normalize(to));
|
|
99
|
+
},
|
|
100
|
+
getCurrentPath() {
|
|
101
|
+
return normalize(host.currentPath());
|
|
102
|
+
},
|
|
103
|
+
onPathChange(cb) {
|
|
104
|
+
return host.subscribe?.(cb) ?? (() => {
|
|
105
|
+
});
|
|
106
|
+
},
|
|
107
|
+
href(to) {
|
|
108
|
+
return normalize(to);
|
|
109
|
+
},
|
|
110
|
+
interceptsLinkClicks: true
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function defaultRouterAdapter(scheme = "hash", ssrPath = "/") {
|
|
114
|
+
if (typeof window !== "undefined") {
|
|
115
|
+
return scheme === "history" ? historyRouterAdapter() : hashRouterAdapter();
|
|
116
|
+
}
|
|
117
|
+
return staticRouterAdapter(ssrPath, {
|
|
118
|
+
href: scheme === "hash" ? (to) => `#${normalize(to)}` : void 0
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
var windowRouterAdapter = historyRouterAdapter;
|
|
122
|
+
|
|
123
|
+
export { defaultRouterAdapter, hashRouterAdapter, historyRouterAdapter, hostRouterAdapter, staticRouterAdapter, windowRouterAdapter };
|
|
124
|
+
//# sourceMappingURL=chunk-OXQGRJZT.js.map
|
|
125
|
+
//# sourceMappingURL=chunk-OXQGRJZT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/router/index.ts"],"names":[],"mappings":"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","file":"chunk-OXQGRJZT.js","sourcesContent":["// ---------------------------------------------------------------------------\n// Router adapters — the seam between SDK surfaces (storefront, portal, admin)\n// and however the host app addresses pages.\n//\n// A surface never reads `window.location` directly; it asks the adapter. That\n// is what lets the same components render under a hash SPA (the historical\n// default), a real-URL SPA, and a server render where there is no `window` at\n// all. `href()` is part of the contract for exactly this reason: a link's shape\n// is a property of the addressing scheme, not of the component drawing it, so\n// `<Link>` never branches on which adapter is active.\n// ---------------------------------------------------------------------------\n\nexport interface RouterAdapter {\n /** Move to `to` ('/product/x'). No-op where navigation is not possible (SSR). */\n navigate(to: string): void\n /**\n * Move to `to` without adding a history entry — for state that lives in the\n * URL (catalogue filters, sort) where every keystroke must not become a\n * \"back\" step. No-op under SSR.\n */\n replace(to: string): void\n /** Current in-app path, always leading-slash, never including the origin. */\n getCurrentPath(): string\n /** Subscribe to path changes. Returns an unsubscribe fn. */\n onPathChange(cb: (path: string) => void): () => void\n /**\n * The `href` an anchor to `to` should carry. Hash routing needs the '#'\n * prefix; real-URL routing passes the path through untouched.\n */\n href(to: string): string\n /**\n * Whether a plain left-click on an in-app anchor must be intercepted and\n * routed in-page. False for hash routing, where the browser already handles\n * fragment navigation natively without a document load.\n */\n readonly interceptsLinkClicks: boolean\n}\n\nfunction normalize(path: string): string {\n if (!path) return '/'\n return path.startsWith('/') ? path : `/${path}`\n}\n\n/**\n * Fragment addressing (`example.com/#/product/x`). The historical SDK default.\n *\n * Deliberately kept as-is: every shipped app addresses pages this way, and the\n * fragment survives static hosting with no server rewrite rules. Its cost is\n * that the fragment never reaches the server, so a hash-addressed page can be\n * neither server-rendered nor indexed as a distinct URL — use\n * `historyRouterAdapter` when either matters.\n */\nexport function hashRouterAdapter(): RouterAdapter {\n return {\n navigate(to) { window.location.hash = to },\n replace(to) { window.history.replaceState(null, '', `#${normalize(to)}`) },\n getCurrentPath() { return window.location.hash.slice(1) || '/' },\n onPathChange(cb) {\n const handler = () => cb(window.location.hash.slice(1) || '/')\n window.addEventListener('hashchange', handler)\n return () => window.removeEventListener('hashchange', handler)\n },\n href(to) { return `#${normalize(to)}` },\n interceptsLinkClicks: false,\n }\n}\n\n/**\n * Real-URL addressing (`example.com/product/x`) over the History API.\n *\n * `history.pushState` does NOT emit `popstate` (HTML spec), so a subscriber\n * list is the only way programmatic navigation can notify renderers — an\n * adapter that only listens for `popstate` silently changes the URL without\n * re-rendering. Back/forward still arrive via `popstate` and are fanned out to\n * the same subscribers.\n *\n * Requires the host to serve the app shell for unknown paths (SPA fallback);\n * without it a deep link 404s before the adapter ever runs.\n */\nexport function historyRouterAdapter(): RouterAdapter {\n const subscribers = new Set<(path: string) => void>()\n let popstateBound = false\n\n const currentPath = () => window.location.pathname + window.location.search\n const emit = () => { for (const cb of subscribers) cb(currentPath()) }\n\n return {\n navigate(to) {\n const next = normalize(to)\n if (next === currentPath()) return\n window.history.pushState(null, '', next)\n emit()\n },\n replace(to) {\n const next = normalize(to)\n if (next === currentPath()) return\n window.history.replaceState(null, '', next)\n emit()\n },\n getCurrentPath() { return currentPath() },\n onPathChange(cb) {\n subscribers.add(cb)\n if (!popstateBound) {\n window.addEventListener('popstate', emit)\n popstateBound = true\n }\n return () => {\n subscribers.delete(cb)\n if (subscribers.size === 0 && popstateBound) {\n window.removeEventListener('popstate', emit)\n popstateBound = false\n }\n }\n },\n href(to) { return normalize(to) },\n interceptsLinkClicks: true,\n }\n}\n\n/**\n * A fixed path with no browser behind it — the server half of a render.\n *\n * Every method is total: `navigate` is a no-op and `onPathChange` never fires,\n * so a component that navigates during render degrades to \"nothing happened\"\n * instead of throwing. Anchors still render real, crawlable hrefs, which is the\n * whole point of rendering server-side.\n */\nexport function staticRouterAdapter(\n path: string,\n options: {\n /**\n * How to write an anchor's href. Defaults to the path verbatim — real URLs,\n * which is the reason to render statically at all. A caller rendering a\n * store that is *served* as a hash SPA passes that scheme's writer instead,\n * because the addressing scheme is a property of how the store is served,\n * not of whether this particular render happens to be headless.\n */\n href?: (to: string) => string\n } = {},\n): RouterAdapter {\n const fixed = normalize(path)\n const writeHref = options.href ?? ((to: string) => normalize(to))\n return {\n navigate() {},\n replace() {},\n getCurrentPath() { return fixed },\n onPathChange() { return () => {} },\n href(to) { return writeHref(to) },\n interceptsLinkClicks: true,\n }\n}\n\n/**\n * Bridge any host router (TanStack Router, React Router, Next) into the SDK.\n * The host stays the single source of truth for history; the SDK only reads.\n */\nexport function hostRouterAdapter(host: {\n navigate: (to: string) => void\n /** Falls back to `navigate` when the host draws no push/replace distinction. */\n replace?: (to: string) => void\n currentPath: () => string\n subscribe?: (cb: (path: string) => void) => () => void\n}): RouterAdapter {\n return {\n navigate(to) { host.navigate(normalize(to)) },\n replace(to) { (host.replace ?? host.navigate)(normalize(to)) },\n getCurrentPath() { return normalize(host.currentPath()) },\n onPathChange(cb) { return host.subscribe?.(cb) ?? (() => {}) },\n href(to) { return normalize(to) },\n interceptsLinkClicks: true,\n }\n}\n\n/**\n * The adapter that fits the current environment: static during SSR (no\n * `window`), otherwise the caller's choice of addressing scheme.\n */\nexport function defaultRouterAdapter(\n scheme: 'hash' | 'history' = 'hash',\n ssrPath = '/',\n): RouterAdapter {\n if (typeof window !== 'undefined') {\n return scheme === 'history' ? historyRouterAdapter() : hashRouterAdapter()\n }\n // No window: a static adapter, but still writing hrefs in the requested\n // scheme. Dropping the scheme here would make a headless render of a\n // hash-served store emit `/x` links that do not resolve — the render must\n // describe how the store is served, not how it happens to be rendered.\n return staticRouterAdapter(ssrPath, {\n href: scheme === 'hash' ? (to) => `#${normalize(to)}` : undefined,\n })\n}\n\n/** @deprecated Use `historyRouterAdapter()` — this one never notified on push. */\nexport const windowRouterAdapter = historyRouterAdapter\n"]}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One answer to "is this app live or on mocks?".
|
|
3
|
+
*
|
|
4
|
+
* Every dogfood app had rewritten this by hand and no two agreed: some keyed off
|
|
5
|
+
* the mere presence of VITE_SUPABASE_URL, some off an explicit
|
|
6
|
+
* VITE_SUPABASE_ENABLED flag, some off `url && key` — and the key itself was
|
|
7
|
+
* read as `_ANON_KEY`, `_PUBLISHABLE_KEY ?? _ANON_KEY` or `_PUBLISHABLE_KEY ||
|
|
8
|
+
* _ANON_KEY` depending on the app. The divergence is why a pool conversion could
|
|
9
|
+
* leave one app live and its neighbour silently on mocks.
|
|
10
|
+
*
|
|
11
|
+
* Precedence:
|
|
12
|
+
* 1. `VITE_SUPABASE_ENABLED` — when set, it decides ('true' = live). The
|
|
13
|
+
* explicit kill switch wins even with credentials present, which is what
|
|
14
|
+
* lets an app sit on mocks while its pool is converted.
|
|
15
|
+
* 2. Otherwise credentials decide: live when BOTH url and a key are present.
|
|
16
|
+
*
|
|
17
|
+
* The publishable key is preferred over the anon key (browser-safe, and the one
|
|
18
|
+
* the industry pools issue); NEVER pass a service_role key through a VITE_ var.
|
|
19
|
+
*/
|
|
20
|
+
export interface BackendEnv {
|
|
21
|
+
/** True when the app should talk to a real Supabase project. */
|
|
22
|
+
live: boolean;
|
|
23
|
+
/** Undefined unless `live` — so passing these straight into config can't half-connect. */
|
|
24
|
+
supabaseUrl?: string;
|
|
25
|
+
supabaseAnonKey?: string;
|
|
26
|
+
/** 'supabase' | 'mock' — ready for `auth.adapter` / `org.adapter`. */
|
|
27
|
+
adapter: 'supabase' | 'mock';
|
|
28
|
+
}
|
|
29
|
+
type EnvRecord = Record<string, string | boolean | undefined>;
|
|
30
|
+
export interface ResolveBackendEnvOptions {
|
|
31
|
+
/** Defaults to `import.meta.env` (Vite). Pass a record in Node/tests. */
|
|
32
|
+
env?: EnvRecord;
|
|
33
|
+
/** Force the outcome regardless of env — escape hatch for previews/tests. */
|
|
34
|
+
force?: 'live' | 'mock';
|
|
35
|
+
}
|
|
36
|
+
export declare function resolveBackendEnv(options?: ResolveBackendEnvOptions): BackendEnv;
|
|
37
|
+
export {};
|
|
38
|
+
//# sourceMappingURL=backend-env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend-env.d.ts","sourceRoot":"","sources":["../../src/data/backend-env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,UAAU;IACzB,gEAAgE;IAChE,IAAI,EAAE,OAAO,CAAA;IACb,0FAA0F;IAC1F,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,sEAAsE;IACtE,OAAO,EAAE,UAAU,GAAG,MAAM,CAAA;CAC7B;AAED,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;AAE7D,MAAM,WAAW,wBAAwB;IACvC,yEAAyE;IACzE,GAAG,CAAC,EAAE,SAAS,CAAA;IACf,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACxB;AAMD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,UAAU,CAuBpF"}
|
package/dist/data/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { bulkCreate, countByTenant, createFayzApiProvider, createMockProvider, createSupabaseProvider, getSupabaseClientOptional, invalidateCount, resolveDataProvider, setGlobalSupabaseClient } from '../chunk-
|
|
1
|
+
export { bulkCreate, countByTenant, createFayzApiProvider, createMockProvider, createSupabaseProvider, getSupabaseClientOptional, invalidateCount, resolveDataProvider, setGlobalSupabaseClient } from '../chunk-JO7Z2AOE.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ResolvedDomainEvent } from '../types/plugins';
|
|
2
|
+
import type { RegisteredEntity } from './registry';
|
|
3
|
+
export type EntityEventAction = 'created' | 'updated' | 'deleted' | 'imported';
|
|
4
|
+
/** `registry.person:client.created` — a chave que webhook, auditoria e
|
|
5
|
+
* automações usam para falar do mesmo fato. */
|
|
6
|
+
export declare function entityEventKey(entityKey: string, action: EntityEventAction): string;
|
|
7
|
+
/**
|
|
8
|
+
* Os fatos de um cadastro. Todos auditados: "quem cadastrou este fornecedor?"
|
|
9
|
+
* e "quem apagou este registro?" são as perguntas que a trilha existe para
|
|
10
|
+
* responder, e são justamente as que ninguém pensa em declarar antes de
|
|
11
|
+
* precisar.
|
|
12
|
+
*/
|
|
13
|
+
export declare function buildEntityDomainEvents(entities: RegisteredEntity[]): ResolvedDomainEvent[];
|
|
14
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/entity/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAqBlD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;AAY9E;gDACgD;AAChD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAEnF;AAsBD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,mBAAmB,EAAE,CA6B3F"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { DomainEvent, DomainEventHandler } from './types';
|
|
2
|
+
export declare function emitDomainEvent(key: string, payload: Record<string, unknown>, meta?: {
|
|
3
|
+
actorId?: string | null;
|
|
4
|
+
tenantId?: string | null;
|
|
5
|
+
subject?: {
|
|
6
|
+
type: string;
|
|
7
|
+
id: string;
|
|
8
|
+
} | null;
|
|
9
|
+
occurredAt?: string;
|
|
10
|
+
}): DomainEvent;
|
|
11
|
+
export declare function registerEventSink(sink: (event: DomainEvent) => void): () => void;
|
|
12
|
+
export declare function clearEventSinks(): void;
|
|
13
|
+
/** Subscribes to ONE event. Returns the unsubscribe. */
|
|
14
|
+
export declare function onDomainEvent(key: string, handler: DomainEventHandler): () => void;
|
|
15
|
+
/**
|
|
16
|
+
* Subscribes to MANY by prefix — 'shop.*', or '*' for everything.
|
|
17
|
+
*
|
|
18
|
+
* The bus matches exact names, so the wildcard is resolved here: known events
|
|
19
|
+
* come from the runtime (active plugins), and subscribing one by one keeps the
|
|
20
|
+
* bus simple. Call again when the plugin list changes.
|
|
21
|
+
*/
|
|
22
|
+
export declare function onDomainEvents(keys: string[], known: string[], handler: DomainEventHandler): () => void;
|
|
23
|
+
/**
|
|
24
|
+
* Fills the payload's example fields. The message preview and the webhook test
|
|
25
|
+
* body both come from here, so the two show the SAME shape.
|
|
26
|
+
*/
|
|
27
|
+
export declare function sampleEventPayload(fields?: {
|
|
28
|
+
name: string;
|
|
29
|
+
example?: string;
|
|
30
|
+
}[]): Record<string, string>;
|
|
31
|
+
//# sourceMappingURL=envelope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/events/envelope.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAc9D,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,CAAC,EAAE;IACL,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GACA,WAAW,CAyBb;AAYD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI,CAGhF;AAED,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED,wDAAwD;AACxD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,MAAM,IAAI,CAElF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,EAAE,kBAAkB,GAC1B,MAAM,IAAI,CAKZ;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAIxG"}
|
package/dist/events/index.d.ts
CHANGED
|
@@ -13,4 +13,8 @@ export declare const eventBus: EventBus;
|
|
|
13
13
|
/** Subscribe to an event for the lifetime of the component. The latest handler
|
|
14
14
|
* is always invoked, so closures over fresh props/state work without resubscribing. */
|
|
15
15
|
export declare function useOnEvent<T = unknown>(event: string, handler: EventHandler<T>, deps?: React.DependencyList): void;
|
|
16
|
+
export { emitDomainEvent, onDomainEvent, onDomainEvents, sampleEventPayload, registerEventSink, clearEventSinks } from './envelope';
|
|
17
|
+
export type { EventField, DomainEvent, DomainEventHandler, DomainEventSubscription } from './types';
|
|
18
|
+
export { startEventLog, recordEventRun, loadEventRuns, EVENT_LOG_TABLE } from './log';
|
|
19
|
+
export type { EventRun, EventRunStatus } from './log';
|
|
16
20
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAA;AAE5D,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;IACnD,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAA;IACpE,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAA;IACtE,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IAC/D,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,wBAAgB,cAAc,IAAI,QAAQ,CAyCzC;AAED,oEAAoE;AACpE,eAAO,MAAM,QAAQ,EAAE,QAA2B,CAAA;AAElD;wFACwF;AACxF,wBAAgB,UAAU,CAAC,CAAC,GAAG,OAAO,EACpC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,IAAI,GAAE,KAAK,CAAC,cAAmB,GAC9B,IAAI,CAQN"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAA;AAE5D,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAA;IACnD,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAA;IACpE,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAA;IACtE,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IAC/D,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,wBAAgB,cAAc,IAAI,QAAQ,CAyCzC;AAED,oEAAoE;AACpE,eAAO,MAAM,QAAQ,EAAE,QAA2B,CAAA;AAElD;wFACwF;AACxF,wBAAgB,UAAU,CAAC,CAAC,GAAG,OAAO,EACpC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,IAAI,GAAE,KAAK,CAAC,cAAmB,GAC9B,IAAI,CAQN;AAID,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACnI,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAEnG,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AACrF,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { DomainEvent } from './types';
|
|
2
|
+
export declare const EVENT_LOG_TABLE = "plg_event_log";
|
|
3
|
+
/**
|
|
4
|
+
* 'recorded' the trigger fired and nobody acted yet (today's state: the catalog
|
|
5
|
+
* exists, message dispatch does not).
|
|
6
|
+
* 'sent' someone acted and it worked — `result` says what.
|
|
7
|
+
* 'skipped' acted and chose to do nothing (automation off, no channel).
|
|
8
|
+
* 'failed' tried and broke — `error` says why.
|
|
9
|
+
*/
|
|
10
|
+
export type EventRunStatus = 'recorded' | 'sent' | 'skipped' | 'failed';
|
|
11
|
+
export interface EventRun {
|
|
12
|
+
id: string;
|
|
13
|
+
eventKey: string;
|
|
14
|
+
status: EventRunStatus;
|
|
15
|
+
/** The firing's exact payload — what answers "why did the message go out with
|
|
16
|
+
* the wrong name?" without reproducing the case. */
|
|
17
|
+
payload: Record<string, unknown>;
|
|
18
|
+
result: Record<string, unknown> | null;
|
|
19
|
+
error: string | null;
|
|
20
|
+
actorId: string | null;
|
|
21
|
+
subjectType: string | null;
|
|
22
|
+
subjectId: string | null;
|
|
23
|
+
occurredAt: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Records a firing. Never throws and never awaits: the emitter must not get
|
|
27
|
+
* slower — or fail — because the history is unavailable. A saved customer stays
|
|
28
|
+
* saved when the log does not write.
|
|
29
|
+
*/
|
|
30
|
+
export declare function recordEventRun(event: DomainEvent, status?: EventRunStatus): void;
|
|
31
|
+
/**
|
|
32
|
+
* Turns the history on. Idempotent: calling twice does not write two rows, and
|
|
33
|
+
* the call comes from a plugin factory that re-runs on every hot reload.
|
|
34
|
+
*/
|
|
35
|
+
export declare function startEventLog(): () => void;
|
|
36
|
+
/**
|
|
37
|
+
* An event's most recent firings. With no client or no table it returns empty:
|
|
38
|
+
* "nothing has happened yet" is a complete state, and the screen can say it.
|
|
39
|
+
*/
|
|
40
|
+
export declare function loadEventRuns(eventKey: string, options?: {
|
|
41
|
+
tenantId?: string;
|
|
42
|
+
limit?: number;
|
|
43
|
+
}): Promise<EventRun[]>;
|
|
44
|
+
//# sourceMappingURL=log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/events/log.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAc1C,eAAO,MAAM,eAAe,kBAAkB,CAAA;AAE9C;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEvE,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,cAAc,CAAA;IACtB;yDACqD;IACrD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACtC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB;AAqBD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,GAAE,cAA2B,GAAG,IAAI,CAqB5F;AAID;;;GAGG;AACH,wBAAgB,aAAa,IAAI,MAAM,IAAI,CAK1C;AAED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgBrB"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Um campo do payload. É contrato, não documentação: o mesmo descritor gera os
|
|
3
|
+
* campos de mesclagem do editor de mensagem, o exemplo do corpo do webhook e a
|
|
4
|
+
* frase da linha de auditoria. Uma lista escrita à mão em cada um dos três
|
|
5
|
+
* diverge do que o emissor de fato manda — e ninguém percebe até o envio sair
|
|
6
|
+
* com `{{order_total}}` cru.
|
|
7
|
+
*/
|
|
8
|
+
export interface EventField {
|
|
9
|
+
/** Nome no payload. Vira `{{name}}` no editor de mensagem. */
|
|
10
|
+
name: string;
|
|
11
|
+
label: string;
|
|
12
|
+
type?: 'string' | 'number' | 'money' | 'date' | 'url' | 'id';
|
|
13
|
+
/** Valor de exemplo — a prévia da mensagem e o corpo de teste do webhook. */
|
|
14
|
+
example?: string;
|
|
15
|
+
}
|
|
16
|
+
/** O fato acontecido: a definição + os dados daquela vez. */
|
|
17
|
+
export interface DomainEvent<T = Record<string, unknown>> {
|
|
18
|
+
key: string;
|
|
19
|
+
payload: T;
|
|
20
|
+
/** Quem causou. Ausente quando foi o sistema (um agendador, um webhook). */
|
|
21
|
+
actorId?: string | null;
|
|
22
|
+
tenantId?: string | null;
|
|
23
|
+
/** ISO. Quem emite decide — um evento reprocessado guarda a hora original. */
|
|
24
|
+
occurredAt: string;
|
|
25
|
+
/** Registro que o fato descreve, para a auditoria e o link "abrir". */
|
|
26
|
+
subject?: {
|
|
27
|
+
type: string;
|
|
28
|
+
id: string;
|
|
29
|
+
} | null;
|
|
30
|
+
}
|
|
31
|
+
/** Um consumidor. Retorna void: quem emite não espera nem depende do resultado. */
|
|
32
|
+
export type DomainEventHandler = (event: DomainEvent) => void | Promise<void>;
|
|
33
|
+
export interface DomainEventSubscription {
|
|
34
|
+
/** Identidade do consumidor ('automations', 'webhooks', 'audit'). */
|
|
35
|
+
id: string;
|
|
36
|
+
/** Chaves ou prefixos: 'shop.order_paid', 'shop.*', '*'. */
|
|
37
|
+
keys: string[];
|
|
38
|
+
handler: DomainEventHandler;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"AAkBA;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAA;IAC5D,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,6DAA6D;AAC7D,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACtD,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,CAAC,CAAA;IACV,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,8EAA8E;IAC9E,UAAU,EAAE,MAAM,CAAA;IAClB,uEAAuE;IACvE,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAC9C;AAED,mFAAmF;AACnF,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAE7E,MAAM,WAAW,uBAAuB;IACtC,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAA;IACV,4DAA4D;IAC5D,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,OAAO,EAAE,kBAAkB,CAAA;CAC5B"}
|
package/dist/i18n/index.d.ts
CHANGED
|
@@ -13,6 +13,16 @@ interface LocaleStore {
|
|
|
13
13
|
}
|
|
14
14
|
export declare function setLocaleStore(store: LocaleStore): void;
|
|
15
15
|
export declare function getCurrentLocale(): string;
|
|
16
|
+
/**
|
|
17
|
+
* Pick a bilingual literal at CONFIG time — outside React, before any provider
|
|
18
|
+
* mounts. App config modules evaluate at import time, when `getCurrentLocale()`
|
|
19
|
+
* is still the 'en' default (ES imports hoist above `setCurrentLocale`), so this
|
|
20
|
+
* reads the persisted locale directly and treats pt-BR as the default for a
|
|
21
|
+
* first visit. Inside components use `useTranslation()` instead.
|
|
22
|
+
*
|
|
23
|
+
* name: tl('Appointments', 'Agenda')
|
|
24
|
+
*/
|
|
25
|
+
export declare function tl(en: string, ptBR: string): string;
|
|
16
26
|
export declare function setCurrentLocale(locale: string): void;
|
|
17
27
|
export declare const coreTranslations: Record<string, Record<string, string>>;
|
|
18
28
|
export declare function registerTranslations(translations?: Record<string, Record<string, string>>): void;
|
package/dist/i18n/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACrD;AAQD,eAAO,MAAM,YAAY,4BAAuB,CAAA;AAEhD,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED,wBAAgB,cAAc,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,CA0BlG;AAGD,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAQD,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAEvD;AAwBD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAOrD;AAGD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmTnE,CAAA;AAMD,wBAAgB,oBAAoB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAGhG;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC5C,GAAG,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,GACtE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CASxC;AAsBD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB3D"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACrD;AAQD,eAAO,MAAM,YAAY,4BAAuB,CAAA;AAEhD,wBAAgB,aAAa,IAAI,UAAU,CAE1C;AAED,wBAAgB,cAAc,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,CA0BlG;AAGD,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAQD,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAEvD;AAwBD,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAKD;;;;;;;;GAQG;AACH,wBAAgB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAOnD;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAOrD;AAGD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmTnE,CAAA;AAMD,wBAAgB,oBAAoB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAGhG;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC5C,GAAG,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,GACtE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CASxC;AAsBD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB3D"}
|
package/dist/i18n/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { I18nProvider, coreTranslations, getCurrentLocale, mergeTranslations, preloadLocale, registerTranslations, setCurrentLocale, setLocaleStore, useI18nConfig, useTranslation } from '../chunk-
|
|
1
|
+
export { I18nProvider, coreTranslations, getCurrentLocale, mergeTranslations, preloadLocale, registerTranslations, setCurrentLocale, setLocaleStore, tl, useI18nConfig, useTranslation } from '../chunk-M27JPX3K.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,8 @@ export type { PlanEntitlements, LimitDeclaration } from './types/entitlements';
|
|
|
10
10
|
export type { ThemeBrand, ThemeRadius, ThemeMode } from './types/theme';
|
|
11
11
|
export type { LocaleConfig } from './types/i18n';
|
|
12
12
|
export { createSupabaseProvider, setGlobalSupabaseClient, getSupabaseClientOptional } from './data/supabase';
|
|
13
|
+
export { resolveBackendEnv } from './data/backend-env';
|
|
14
|
+
export type { BackendEnv, ResolveBackendEnvOptions } from './data/backend-env';
|
|
13
15
|
export { countByTenant, invalidateCount } from './data/count';
|
|
14
16
|
export type { CountByTenantOptions } from './data/count';
|
|
15
17
|
export { createFayzApiProvider } from './data/platform-api';
|
|
@@ -24,15 +26,15 @@ export type { RangeFilter } from './data/filters';
|
|
|
24
26
|
export { DATA_CHANGED_EVENT, emitDataChanged, matchesDataChange, useDataChanged, } from './data/refresh';
|
|
25
27
|
export type { DataChangedPayload, DataChangedMatch } from './data/refresh';
|
|
26
28
|
export { createSafeDataProvider } from './plugin/createSafeDataProvider';
|
|
27
|
-
export { COUNTRIES, DEFAULT_COUNTRY, getCountry, unmaskPhone, maskPhone, maskDigitCount, } from './phone';
|
|
28
|
-
export type { CountryDef } from './phone';
|
|
29
|
-
export { normalizePostalCode, formatPostalCode, isValidPostalCode, createViaCepProvider, setPostalLookupProvider, getPostalLookupProvider, lookupPostalCode, clearPostalCache, } from './address';
|
|
30
|
-
export type { PostalAddress, PostalLookupProvider } from './address';
|
|
29
|
+
export { COUNTRIES, DEFAULT_COUNTRY, getCountry, unmaskPhone, maskPhone, maskDigitCount, } from './lib/phone';
|
|
30
|
+
export type { CountryDef } from './lib/phone';
|
|
31
|
+
export { normalizePostalCode, formatPostalCode, isValidPostalCode, createViaCepProvider, setPostalLookupProvider, getPostalLookupProvider, lookupPostalCode, clearPostalCache, } from './lib/address';
|
|
32
|
+
export type { PostalAddress, PostalLookupProvider } from './lib/address';
|
|
31
33
|
export type { PaymentProvider, PaymentMethod, ChargeStatus, CreateChargeInput, PixCharge, } from './types/payment';
|
|
32
|
-
export { useSeo, applySeo, absoluteUrl, seoOrigin, breadcrumbJsonLd, organizationJsonLd, } from './seo';
|
|
33
|
-
export type { SeoConfig, BreadcrumbItem } from './seo';
|
|
34
|
+
export { useSeo, applySeo, buildSeoTags, absoluteUrl, seoOrigin, breadcrumbJsonLd, organizationJsonLd, } from './lib/seo';
|
|
35
|
+
export type { SeoConfig, BreadcrumbItem, SeoTags, SeoMetaTag, SeoLinkTag } from './lib/seo';
|
|
34
36
|
export type { DataProvider, CrudQuery, CrudResult, SupabaseProviderConfig, FayzApiProviderConfig } from './data/index';
|
|
35
|
-
export { setActiveTenantId, getActiveTenantId, subscribeActiveTenant, useActiveTenantId } from './tenant';
|
|
37
|
+
export { setActiveTenantId, getActiveTenantId, subscribeActiveTenant, useActiveTenantId } from './lib/tenant';
|
|
36
38
|
export { createFayzRuntimeClient, FayzRuntimeError } from './runtime';
|
|
37
39
|
export type { FayzRuntimeClientOptions, FayzRuntimeEnvironment, GoogleCalendarEvent, GoogleCalendarEventInput, GoogleCalendarEventTime, ListGoogleCalendarEventsInput, PluginOAuthExchangeInput, PluginOAuthExchangeResponse, RuntimePluginOAuthGrant, } from './runtime';
|
|
38
40
|
export { assertPluginManifestContract, assertConnectorContract, PluginContractError } from './testing';
|
|
@@ -43,28 +45,36 @@ export { exportCSV, buildCSV, downloadCSV } from './lib/csv';
|
|
|
43
45
|
export type { CSVColumn } from './lib/csv';
|
|
44
46
|
export { globalCache, createCacheStore, stableKey, clearGlobalCache } from './lib/cache';
|
|
45
47
|
export type { CacheStore } from './lib/cache';
|
|
46
|
-
export { definePlugin, resolvePluginRuntime, getWidgetsForZone, getDashboardWidgets, PluginRuntimeProvider, usePluginRuntime, usePluginRuntimeOptional, useConnectorsForPlugin, PLUGIN_API_VERSION, resolvePluginComponent } from './plugin/runtime';
|
|
48
|
+
export { definePlugin, resolvePluginRuntime, getWidgetsForZone, getDashboardWidgets, getAnalyticsCards, PluginRuntimeProvider, usePluginRuntime, usePluginRuntimeOptional, useConnectorsForPlugin, PLUGIN_API_VERSION, resolvePluginComponent } from './plugin/runtime';
|
|
47
49
|
export type { PluginEventDefinition, PluginQuickAction } from './types/plugins';
|
|
48
|
-
export { createEventBus, eventBus, useOnEvent } from './events';
|
|
49
|
-
export type { EventBus, EventHandler } from './events';
|
|
50
50
|
export { registerEntity, getEntityByKey, getAllEntities, clearEntityRegistry, deriveEntityKey } from './entity/registry';
|
|
51
51
|
export type { RegisteredEntity } from './entity/registry';
|
|
52
|
+
export { entityEventKey, buildEntityDomainEvents } from './entity/events';
|
|
53
|
+
export type { EntityEventAction } from './entity/events';
|
|
52
54
|
export { searchEverything, clearSearchCache, setSearchIndexAvailable, isSearchIndexAvailable, MIN_QUERY_LENGTH, foldText, foldWithMap, digitsOf, normalizeQuery, similarity, scoreCandidate, highlightRanges, } from './search';
|
|
53
55
|
export type { SearchTarget, SearchHit, SearchGroup, SearchPath, SearchOptions, GlobalSearchResult, NormalizedQuery, RankCandidate, } from './search';
|
|
54
|
-
export { Registry, isCustomId, componentRegistry, blockRegistry, pageRegistry, scaffoldRegistry, metricRegistry, pluginRegistry, registerComponent, getComponent, registerBlock, getBlock, listBlocks, registerPage, getPage, registerScaffold, getScaffold, registerMetric, getMetric, listMetrics, registerPlugin, getPlugin, listPlugins, pluginFactoryRegistry, registerPluginFactory, getPluginFactory, listPluginFactories, } from './registry';
|
|
55
|
-
export type {
|
|
56
|
-
export type {
|
|
57
|
-
export {
|
|
58
|
-
export type {
|
|
56
|
+
export { Registry, isCustomId, componentRegistry, blockRegistry, pageRegistry, scaffoldRegistry, metricRegistry, pluginRegistry, registerComponent, getComponent, registerBlock, defineBlock, getBlock, getBlockMeta, listBlocks, registerPage, getPage, registerScaffold, getScaffold, registerMetric, getMetric, listMetrics, registerPlugin, getPlugin, listPlugins, pluginFactoryRegistry, registerPluginFactory, getPluginFactory, listPluginFactories, settingsToJsonSchema, defaultPropsFromSettings, BLOCK_SETTING_TYPES, describeBlock, describeBlocks, isBlockEnabledOn, auditBlocks, summarizeBlockAudit, handleRegistry, registerHandle, getHandle, hasHandle, resolveHandle, listHandles, handleNameFor, clearHandles, checkBlockConstraints, checkNodePlacement, checkBlockContext, repairBlockTree, loaderRegistry, defineLoader, resolveLoader, hasLoader, listLoaders, clearLoaders, describeLoaders, isLoaderParamRef, isLoaderPropRef, dataNeedKey, ENTITY_FIELD_TYPES, GENERIC_ENTITY_TABLE, RESERVED_ENTITY_FIELDS, SIDECAR_REFERENCES, entityDeclarationRegistry, defineEntity, resolveEntityDeclaration, hasEntityDeclaration, listEntityDeclarations, clearEntityDeclarations, entityRecordSchema, validateEntityRecordData, describeEntities, entityAdminForm, sidecarDeclarationRegistry, defineSidecarFields, resolveSidecarDeclaration, hasSidecarDeclaration, clearSidecarDeclarations, checkAgainstSchema, formatSchemaIssues, extensionPointRegistry, defineExtensionPoint, registerExtensionHandler, unregisterExtensionHandler, runExtensionPoint, runEscapeValve, describeExtensionPoints, hasExtensionPoint, listExtensionPoints, listExtensionHandlers, clearExtensionPoints, extensionAfterHooks, } from './registry';
|
|
57
|
+
export type { SchemaIssue, ExtensionPointMode, ExtensionPointDeclaration, ExtensionHandlerOptions, ExtensionHandler, ExtensionContribution, ExtensionHandlerDescriptor, ExtensionPointDescriptor, } from './registry';
|
|
58
|
+
export type { EntityFieldType, EntityField, EntityReadAccess, EntityAccess, EntityStorageDescriptor, EntityDeclarationInput, EntityDeclaration, EntityRecordIssue, EntityDescriptor, EntityAdminFormDescriptor, SidecarReference, SidecarDeclaration, } from './registry';
|
|
59
|
+
export type { PluginFactory, RegisterHandleOptions } from './registry';
|
|
60
|
+
export type { LoaderContext, LoaderImpl, LoaderDescriptor, LoaderParamRef, LoaderPropRef, BlockDataNeed, BlockDataNeeds, } from './registry';
|
|
61
|
+
export type { BlockSetting, BlockSettingType, BlockSettingOption, BlockPreset, BlockStability, BlockDescriptor, BlockCatalogOptions, BlockAudit, BlockAuditLevel, RequiredBlockChild, BlockTreeNode, BlockConstraintRule, BlockConstraintViolation, BlockContextFinding, BlockTreeRepair, RepairBlockTreeResult, } from './registry';
|
|
62
|
+
export type { JsonSchema, RegistrySource, RegistryMeta, RegistryEntry, RegistryEntryDescriptor, MetricFormat, MetricContext, MetricValue, MetricDefinition, } from './registry';
|
|
63
|
+
export { BlockRenderer, renderBlocks, BlockChildren, BlockErrorBoundary, setBlockErrorVisibility, getBlockErrorVisibility, setBlockEditorMode, blockEditorMode, useBlockPath, BLOCK_PATH_ATTRIBUTE, BLOCK_TYPE_ATTRIBUTE, } from './registry/blocks';
|
|
64
|
+
export type { BlockNode, BlockComponentProps, BlockErrorVisibility } from './registry/blocks';
|
|
59
65
|
export { CURRENT_MANIFEST_VERSION, registerManifestMigration, migrateManifest, validateManifest, } from './manifest';
|
|
60
66
|
export type { AppManifest, BackendProvider, BackendRef, SurfaceManifest, PageManifest, PluginRef, ManifestMigration, AgentContract, AgentDomainKnowledge, EntityContract, AIToolContract, RpcContract, } from './manifest';
|
|
61
67
|
export { serializeManifest, computeContractHash, serializeManifestWithHash } from './manifest/serialize';
|
|
62
68
|
export { default as appManifestSchema } from './manifest/app-manifest.schema.json';
|
|
63
69
|
export { defineApp, renderApp, useManifest } from './app/render';
|
|
64
70
|
export type { RenderAppOptions } from './app/render';
|
|
65
|
-
export { I18nProvider, useI18nConfig, useTranslation, coreTranslations, mergeTranslations, registerTranslations, getCurrentLocale, setCurrentLocale, preloadLocale, setLocaleStore } from './i18n/index';
|
|
66
|
-
export { hashRouterAdapter, windowRouterAdapter } from './router/index';
|
|
71
|
+
export { I18nProvider, useI18nConfig, useTranslation, coreTranslations, mergeTranslations, registerTranslations, getCurrentLocale, setCurrentLocale, preloadLocale, setLocaleStore, tl } from './i18n/index';
|
|
72
|
+
export { hashRouterAdapter, historyRouterAdapter, staticRouterAdapter, hostRouterAdapter, defaultRouterAdapter, windowRouterAdapter, } from './router/index';
|
|
67
73
|
export type { RouterAdapter } from './router/index';
|
|
68
74
|
export { useNavHistoryStore, recordNavigation, useNavReferrer, navHistoryBack, routeModule, } from './router/history';
|
|
69
75
|
export type { NavHistoryEntry } from './router/history';
|
|
76
|
+
export type { AnalyticsCardDef, ResolvedAnalyticsCard, AnalyticsQuery, AnalyticsSource, AnalyticsRunContext, AnalyticsDimension, AnalyticsMeasure, AnalyticsAgg, AnalyticsGrain, AnalyticsFormat, AnalyticsFilterDef, AnalyticsFilterOption, AnalyticsVizDef, AnalyticsVizType, AnalyticsColumnDef, AnalyticsPlacement, AnalyticsDateRange, AnalyticsCompare, AnalyticsQueryState, AnalyticsResult, AnalyticsSummary, AnalyticsProvider, AnalyticsRow, } from './types/analytics';
|
|
77
|
+
export type { ResolvedDomainEvent } from './types/plugins';
|
|
78
|
+
export * from './events';
|
|
79
|
+
export * from './messaging';
|
|
70
80
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|