@iann29/rastro 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 +9 -1
- package/agent/integration.md +23 -1
- package/agent/manifest.json +4 -4
- package/dist/client/federation.d.ts +114 -9
- package/dist/client/federation.d.ts.map +1 -1
- package/dist/client/federation.js +54 -2
- package/dist/client/federation.js.map +1 -1
- package/dist/client/index.d.ts +637 -8
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +385 -9
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/api.d.ts +14 -0
- package/dist/component/_generated/api.d.ts.map +1 -1
- package/dist/component/_generated/api.js.map +1 -1
- package/dist/component/_generated/component.d.ts +277 -1
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/_generated/server.d.ts +4 -0
- package/dist/component/_generated/server.d.ts.map +1 -1
- package/dist/component/_generated/server.js.map +1 -1
- package/dist/component/constants.d.ts +5 -0
- package/dist/component/constants.d.ts.map +1 -1
- package/dist/component/constants.js +10 -0
- package/dist/component/constants.js.map +1 -1
- package/dist/component/convex.config.d.ts +4 -0
- package/dist/component/convex.config.js +9 -0
- package/dist/component/convex.config.js.map +1 -1
- package/dist/component/errors.d.ts +1 -1
- package/dist/component/errors.d.ts.map +1 -1
- package/dist/component/errors.js.map +1 -1
- package/dist/component/leads.d.ts +69 -3
- package/dist/component/leads.d.ts.map +1 -1
- package/dist/component/leads.js +419 -16
- package/dist/component/leads.js.map +1 -1
- package/dist/component/meta.d.ts +352 -0
- package/dist/component/meta.d.ts.map +1 -0
- package/dist/component/meta.js +1239 -0
- package/dist/component/meta.js.map +1 -0
- package/dist/component/metaCapi.d.ts +162 -0
- package/dist/component/metaCapi.d.ts.map +1 -0
- package/dist/component/metaCapi.js +754 -0
- package/dist/component/metaCapi.js.map +1 -0
- package/dist/component/metaFake.d.ts +5 -0
- package/dist/component/metaFake.d.ts.map +1 -0
- package/dist/component/metaFake.js +225 -0
- package/dist/component/metaFake.js.map +1 -0
- package/dist/component/metaGraph.d.ts +165 -0
- package/dist/component/metaGraph.d.ts.map +1 -0
- package/dist/component/metaGraph.js +507 -0
- package/dist/component/metaGraph.js.map +1 -0
- package/dist/component/metaSync.d.ts +186 -0
- package/dist/component/metaSync.d.ts.map +1 -0
- package/dist/component/metaSync.js +961 -0
- package/dist/component/metaSync.js.map +1 -0
- package/dist/component/pipeline.d.ts +98 -0
- package/dist/component/pipeline.d.ts.map +1 -0
- package/dist/component/pipeline.js +324 -0
- package/dist/component/pipeline.js.map +1 -0
- package/dist/component/schema.d.ts +404 -2
- package/dist/component/schema.d.ts.map +1 -1
- package/dist/component/schema.js +168 -2
- package/dist/component/schema.js.map +1 -1
- package/dist/component/secrets.d.ts +15 -0
- package/dist/component/secrets.d.ts.map +1 -0
- package/dist/component/secrets.js +67 -0
- package/dist/component/secrets.js.map +1 -0
- package/dist/component/validators.d.ts +1052 -15
- package/dist/component/validators.d.ts.map +1 -1
- package/dist/component/validators.js +307 -3
- package/dist/component/validators.js.map +1 -1
- package/dist/tracker/generated.d.ts +1 -1
- package/dist/tracker/generated.d.ts.map +1 -1
- package/dist/tracker/generated.js +1 -1
- package/dist/tracker/generated.js.map +1 -1
- package/dist/ui/campaigns/CampaignsView.d.ts +48 -0
- package/dist/ui/campaigns/CampaignsView.d.ts.map +1 -0
- package/dist/ui/campaigns/CampaignsView.js +47 -0
- package/dist/ui/campaigns/CampaignsView.js.map +1 -0
- package/dist/ui/campaigns/Conversions.d.ts +16 -0
- package/dist/ui/campaigns/Conversions.d.ts.map +1 -0
- package/dist/ui/campaigns/Conversions.js +40 -0
- package/dist/ui/campaigns/Conversions.js.map +1 -0
- package/dist/ui/campaigns/Drawer.d.ts +24 -0
- package/dist/ui/campaigns/Drawer.d.ts.map +1 -0
- package/dist/ui/campaigns/Drawer.js +120 -0
- package/dist/ui/campaigns/Drawer.js.map +1 -0
- package/dist/ui/campaigns/Icons.d.ts +35 -0
- package/dist/ui/campaigns/Icons.d.ts.map +1 -0
- package/dist/ui/campaigns/Icons.js +41 -0
- package/dist/ui/campaigns/Icons.js.map +1 -0
- package/dist/ui/campaigns/Summary.d.ts +21 -0
- package/dist/ui/campaigns/Summary.d.ts.map +1 -0
- package/dist/ui/campaigns/Summary.js +56 -0
- package/dist/ui/campaigns/Summary.js.map +1 -0
- package/dist/ui/campaigns/Thumbnail.d.ts +11 -0
- package/dist/ui/campaigns/Thumbnail.d.ts.map +1 -0
- package/dist/ui/campaigns/Thumbnail.js +23 -0
- package/dist/ui/campaigns/Thumbnail.js.map +1 -0
- package/dist/ui/campaigns/Tree.d.ts +12 -0
- package/dist/ui/campaigns/Tree.d.ts.map +1 -0
- package/dist/ui/campaigns/Tree.js +105 -0
- package/dist/ui/campaigns/Tree.js.map +1 -0
- package/dist/ui/campaigns/glyphs.d.ts +20 -0
- package/dist/ui/campaigns/glyphs.d.ts.map +1 -0
- package/dist/ui/campaigns/glyphs.js +19 -0
- package/dist/ui/campaigns/glyphs.js.map +1 -0
- package/dist/ui/campaigns/index.d.ts +4 -0
- package/dist/ui/campaigns/index.d.ts.map +1 -0
- package/dist/ui/campaigns/index.js +3 -0
- package/dist/ui/campaigns/index.js.map +1 -0
- package/dist/ui/campaigns/labels.d.ts +53 -0
- package/dist/ui/campaigns/labels.d.ts.map +1 -0
- package/dist/ui/campaigns/labels.js +169 -0
- package/dist/ui/campaigns/labels.js.map +1 -0
- package/dist/ui/campaigns/model.d.ts +99 -0
- package/dist/ui/campaigns/model.d.ts.map +1 -0
- package/dist/ui/campaigns/model.js +230 -0
- package/dist/ui/campaigns/model.js.map +1 -0
- package/dist/ui/campaigns/modes.d.ts +18 -0
- package/dist/ui/campaigns/modes.d.ts.map +1 -0
- package/dist/ui/campaigns/modes.js +7 -0
- package/dist/ui/campaigns/modes.js.map +1 -0
- package/dist/ui/index.d.ts +21 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +19 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/integrations/AccountPicker.d.ts +26 -0
- package/dist/ui/integrations/AccountPicker.d.ts.map +1 -0
- package/dist/ui/integrations/AccountPicker.js +97 -0
- package/dist/ui/integrations/AccountPicker.js.map +1 -0
- package/dist/ui/integrations/ClientCards.d.ts +17 -0
- package/dist/ui/integrations/ClientCards.d.ts.map +1 -0
- package/dist/ui/integrations/ClientCards.js +38 -0
- package/dist/ui/integrations/ClientCards.js.map +1 -0
- package/dist/ui/integrations/ClientsTable.d.ts +36 -0
- package/dist/ui/integrations/ClientsTable.d.ts.map +1 -0
- package/dist/ui/integrations/ClientsTable.js +127 -0
- package/dist/ui/integrations/ClientsTable.js.map +1 -0
- package/dist/ui/integrations/Connect.d.ts +29 -0
- package/dist/ui/integrations/Connect.d.ts.map +1 -0
- package/dist/ui/integrations/Connect.js +49 -0
- package/dist/ui/integrations/Connect.js.map +1 -0
- package/dist/ui/integrations/Connection.d.ts +37 -0
- package/dist/ui/integrations/Connection.d.ts.map +1 -0
- package/dist/ui/integrations/Connection.js +94 -0
- package/dist/ui/integrations/Connection.js.map +1 -0
- package/dist/ui/integrations/Dialogs.d.ts +18 -0
- package/dist/ui/integrations/Dialogs.d.ts.map +1 -0
- package/dist/ui/integrations/Dialogs.js +25 -0
- package/dist/ui/integrations/Dialogs.js.map +1 -0
- package/dist/ui/integrations/EventsFeed.d.ts +15 -0
- package/dist/ui/integrations/EventsFeed.d.ts.map +1 -0
- package/dist/ui/integrations/EventsFeed.js +57 -0
- package/dist/ui/integrations/EventsFeed.js.map +1 -0
- package/dist/ui/integrations/EventsSheet.d.ts +28 -0
- package/dist/ui/integrations/EventsSheet.d.ts.map +1 -0
- package/dist/ui/integrations/EventsSheet.js +121 -0
- package/dist/ui/integrations/EventsSheet.js.map +1 -0
- package/dist/ui/integrations/Icons.d.ts +36 -0
- package/dist/ui/integrations/Icons.d.ts.map +1 -0
- package/dist/ui/integrations/Icons.js +38 -0
- package/dist/ui/integrations/Icons.js.map +1 -0
- package/dist/ui/integrations/IntegrationsView.d.ts +14 -0
- package/dist/ui/integrations/IntegrationsView.d.ts.map +1 -0
- package/dist/ui/integrations/IntegrationsView.js +113 -0
- package/dist/ui/integrations/IntegrationsView.js.map +1 -0
- package/dist/ui/integrations/Overlay.d.ts +18 -0
- package/dist/ui/integrations/Overlay.d.ts.map +1 -0
- package/dist/ui/integrations/Overlay.js +36 -0
- package/dist/ui/integrations/Overlay.js.map +1 -0
- package/dist/ui/integrations/RowMenu.d.ts +15 -0
- package/dist/ui/integrations/RowMenu.d.ts.map +1 -0
- package/dist/ui/integrations/RowMenu.js +47 -0
- package/dist/ui/integrations/RowMenu.js.map +1 -0
- package/dist/ui/integrations/UnlinkDialog.d.ts +18 -0
- package/dist/ui/integrations/UnlinkDialog.d.ts.map +1 -0
- package/dist/ui/integrations/UnlinkDialog.js +29 -0
- package/dist/ui/integrations/UnlinkDialog.js.map +1 -0
- package/dist/ui/integrations/format.d.ts +28 -0
- package/dist/ui/integrations/format.d.ts.map +1 -0
- package/dist/ui/integrations/format.js +101 -0
- package/dist/ui/integrations/format.js.map +1 -0
- package/dist/ui/integrations/index.d.ts +5 -0
- package/dist/ui/integrations/index.d.ts.map +1 -0
- package/dist/ui/integrations/index.js +3 -0
- package/dist/ui/integrations/index.js.map +1 -0
- package/dist/ui/integrations/model.d.ts +84 -0
- package/dist/ui/integrations/model.d.ts.map +1 -0
- package/dist/ui/integrations/model.js +131 -0
- package/dist/ui/integrations/model.js.map +1 -0
- package/dist/ui/integrations/overlay.d.ts +10 -0
- package/dist/ui/integrations/overlay.d.ts.map +1 -0
- package/dist/ui/integrations/overlay.js +77 -0
- package/dist/ui/integrations/overlay.js.map +1 -0
- package/dist/ui/integrations/parts.d.ts +36 -0
- package/dist/ui/integrations/parts.d.ts.map +1 -0
- package/dist/ui/integrations/parts.js +85 -0
- package/dist/ui/integrations/parts.js.map +1 -0
- package/dist/ui/integrations/types.d.ts +96 -0
- package/dist/ui/integrations/types.d.ts.map +1 -0
- package/dist/ui/integrations/types.js +2 -0
- package/dist/ui/integrations/types.js.map +1 -0
- package/dist/ui/metrics.d.ts +106 -0
- package/dist/ui/metrics.d.ts.map +1 -0
- package/dist/ui/metrics.js +166 -0
- package/dist/ui/metrics.js.map +1 -0
- package/dist/ui/portfolio/PortfolioView.d.ts +26 -0
- package/dist/ui/portfolio/PortfolioView.d.ts.map +1 -0
- package/dist/ui/portfolio/PortfolioView.js +216 -0
- package/dist/ui/portfolio/PortfolioView.js.map +1 -0
- package/dist/ui/portfolio/SpendChart.d.ts +10 -0
- package/dist/ui/portfolio/SpendChart.d.ts.map +1 -0
- package/dist/ui/portfolio/SpendChart.js +196 -0
- package/dist/ui/portfolio/SpendChart.js.map +1 -0
- package/dist/ui/portfolio/alerts.d.ts +74 -0
- package/dist/ui/portfolio/alerts.d.ts.map +1 -0
- package/dist/ui/portfolio/alerts.js +291 -0
- package/dist/ui/portfolio/alerts.js.map +1 -0
- package/dist/ui/portfolio/figures.d.ts +79 -0
- package/dist/ui/portfolio/figures.d.ts.map +1 -0
- package/dist/ui/portfolio/figures.js +103 -0
- package/dist/ui/portfolio/figures.js.map +1 -0
- package/dist/ui/portfolio/format.d.ts +8 -0
- package/dist/ui/portfolio/format.d.ts.map +1 -0
- package/dist/ui/portfolio/format.js +28 -0
- package/dist/ui/portfolio/format.js.map +1 -0
- package/dist/ui/sample.d.ts +474 -0
- package/dist/ui/sample.d.ts.map +1 -0
- package/dist/ui/sample.js +553 -0
- package/dist/ui/sample.js.map +1 -0
- package/dist/ui/seed.d.ts +188 -0
- package/dist/ui/seed.d.ts.map +1 -0
- package/dist/ui/seed.js +563 -0
- package/dist/ui/seed.js.map +1 -0
- package/dist/ui/ui.css +3356 -0
- package/docs/federation.md +46 -1
- package/docs/meta-ads.md +746 -0
- package/docs/upgrading.md +95 -0
- package/llms.txt +3 -0
- package/package.json +15 -3
- package/src/component/_generated/api.ts +14 -0
- package/src/component/_generated/component.ts +323 -1
- package/src/component/_generated/server.ts +4 -0
- package/src/component/constants.ts +10 -0
- package/src/component/convex.config.ts +9 -0
- package/src/component/errors.ts +5 -1
- package/src/component/leads.ts +517 -17
- package/src/component/meta.ts +1461 -0
- package/src/component/metaCapi.ts +921 -0
- package/src/component/metaFake.ts +277 -0
- package/src/component/metaGraph.ts +722 -0
- package/src/component/metaSync.ts +1164 -0
- package/src/component/pipeline.ts +392 -0
- package/src/component/schema.ts +197 -1
- package/src/component/secrets.ts +98 -0
- package/src/component/validators.ts +376 -3
- package/src/tracker/generated.ts +1 -1
- package/src/ui/seed.ts +755 -0
package/docs/federation.md
CHANGED
|
@@ -62,6 +62,21 @@ The exact generated surface is:
|
|
|
62
62
|
`listFunnels`, `upsertFunnel`, `removeFunnel`, `listAffiliates`,
|
|
63
63
|
`upsertAffiliate`, `removeAffiliate`, `retentionStatus`, `setRetentionPolicy`,
|
|
64
64
|
and `disableRetentionPolicy`
|
|
65
|
+
- the tracked links (optional capability `trackedLinks`, hosts from `0.5.0`):
|
|
66
|
+
`listTrackedLinks` for any reader, and `createTrackedLink`,
|
|
67
|
+
`updateTrackedLink`, and `deleteTrackedLink`, which need `analytics:configure`
|
|
68
|
+
- `getVisitorProfile` and `listPeople` (optional capabilities `visitorProfiles`
|
|
69
|
+
and `people`, hosts from `0.6.0`); see
|
|
70
|
+
[Identified visitor profiles](#identified-visitor-profiles)
|
|
71
|
+
- `transferConnection` (optional capability `transfer`, hosts from `0.2.0` that
|
|
72
|
+
pass the callback); see
|
|
73
|
+
[`federation-setup.md`](federation-setup.md#transfer-a-connection-to-another-organization)
|
|
74
|
+
- the lead reads (opt-in capability `leads`, hosts from `0.8.0` that pass
|
|
75
|
+
`leads: true`): `leadsReport`, `listLeads`, `leadJourney`, and, from `0.10.0`,
|
|
76
|
+
`leadsDaily`
|
|
77
|
+
- the Meta reads (opt-in capability `metaAds`, hosts from `0.10.0` that pass
|
|
78
|
+
`metaAds: true`): `metaStatus` and `metaConversions`; see
|
|
79
|
+
[Leads and Meta ads](#leads-and-meta-ads)
|
|
65
80
|
|
|
66
81
|
Hosts from `alpha.11` also advertise the optional capability `localDays`: their
|
|
67
82
|
`overview` answers a daily range that covers whole calendar days in the site's
|
|
@@ -338,7 +353,7 @@ the dashboard never calls them for a read-only connection.
|
|
|
338
353
|
| `FEDERATION_ISSUER_MISMATCH` | Identity came from another issuer |
|
|
339
354
|
| `FEDERATION_INVALID_CLAIMS` | Required bounded claims or permission absent |
|
|
340
355
|
| `FEDERATION_CONNECTION_DENIED` | Connection missing, revoked, or malformed |
|
|
341
|
-
| `FEDERATION_INVALID_SCOPE` | Requested site list violates
|
|
356
|
+
| `FEDERATION_INVALID_SCOPE` | Requested site list violates limits, or capability not opted in |
|
|
342
357
|
| `FEDERATION_SITE_DENIED` | Requested site is outside the connection |
|
|
343
358
|
| `FEDERATION_CONFIGURE_FORBIDDEN` | Token or grant lacks `analytics:configure` |
|
|
344
359
|
| `FEDERATION_PUBLIC_FORBIDDEN` | Public token outside its surface, or grant lacks `analytics:public` |
|
|
@@ -354,6 +369,9 @@ Consumers should branch on `ConvexError.data.code`, not human-readable messages.
|
|
|
354
369
|
- A public token runs only the public surface, and only when the grant lists
|
|
355
370
|
`analytics:public`; `rastro_site_ids` narrows every token to the granted sites
|
|
356
371
|
it names.
|
|
372
|
+
- A lead or Meta read runs only on a host that opted into its capability
|
|
373
|
+
(`leads`, `metaAds`); connecting Meta ad accounts or a pixel is never part of
|
|
374
|
+
the surface.
|
|
357
375
|
- Report queries must request one through ten unique, bounded site IDs.
|
|
358
376
|
- The resolved connection ID and organization must match the token.
|
|
359
377
|
- Revoked, missing, malformed, empty, or duplicate-site connections are denied.
|
|
@@ -429,3 +447,30 @@ to one site and filter. This query requires `analytics:read`; public tokens
|
|
|
429
447
|
cannot list people. Profile writes and the bounded `backfillVisitorProfiles`
|
|
430
448
|
upgrade remain host-authorized operations outside federation. See
|
|
431
449
|
[the directory contract and upgrade steps](identity.md#project-defined-attributes-and-the-people-directory).
|
|
450
|
+
|
|
451
|
+
## Leads and Meta ads
|
|
452
|
+
|
|
453
|
+
Two opt-in capabilities carry what a host's server reports rather than what the
|
|
454
|
+
tracker sees. The host turns each on in `exposeFederatedAnalyticsApi`:
|
|
455
|
+
|
|
456
|
+
- `leads: true` (hosts from `0.8.0`) advertises `leads` and serves
|
|
457
|
+
`leadsReport`, `listLeads`, `leadJourney` and, from `0.10.0`, `leadsDaily`:
|
|
458
|
+
the leads its server records, counted by cohort per origin, per campaign → ad
|
|
459
|
+
set → ad, and per day.
|
|
460
|
+
- `metaAds: true` (hosts from `0.10.0`) advertises `metaAds` and serves
|
|
461
|
+
`metaStatus` and `metaConversions`: the Meta ad accounts and pixel each site
|
|
462
|
+
links, and the conversions sent to the pixel.
|
|
463
|
+
|
|
464
|
+
Without the option a host refuses those functions with
|
|
465
|
+
`FEDERATION_INVALID_SCOPE` before it examines the connection, and its manifest
|
|
466
|
+
neither advertises the capability nor names them, so a dashboard hides what they
|
|
467
|
+
feed. Both are reads for any reader (`analytics:read`) inside the grant's sites;
|
|
468
|
+
a public link's token is refused with `FEDERATION_PUBLIC_FORBIDDEN`. The Meta
|
|
469
|
+
spend inside `leadsReport` and `leadsDaily` needs no flag: it is `null`, meaning
|
|
470
|
+
unknown, until a site links an ad account. With `metaAds: true` the surface also
|
|
471
|
+
serves the dashboard's own Meta setup (connecting Meta, linking ad accounts, the
|
|
472
|
+
pixel and the event map) as `analytics:configure` writes that act for the
|
|
473
|
+
dashboard connection's owner, and the host exports `authorizeMetaAction` for its
|
|
474
|
+
actions. No function of the surface returns a token or the hashed user data of a
|
|
475
|
+
conversion. See [Meta ads](meta-ads.md) for the shapes, the host environment,
|
|
476
|
+
and the security invariants.
|