@syntrologie/runtime-sdk 2.1.0 → 2.2.0-canary.1
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/CAPABILITIES.md +50 -43
- package/README.md +7 -7
- package/dist/RuntimeProvider.d.ts +1 -1
- package/dist/ShadowRootContext.d.ts +19 -0
- package/dist/SmartCanvasApp.d.ts +3 -3
- package/dist/SmartCanvasElement.d.ts +7 -2
- package/dist/SmartCanvasPortal.d.ts +1 -1
- package/dist/actions/executors/index.d.ts +3 -3
- package/dist/actions/executors/tour.d.ts +1 -1
- package/dist/actions/index.d.ts +4 -3
- package/dist/actions/schema.d.ts +1229 -0
- package/dist/actions/schema.js +67 -0
- package/dist/actions/schema.js.map +7 -0
- package/dist/adaptives/adaptive-chatbot/index.js +4 -4
- package/dist/adaptives/adaptive-chatbot/index.js.map +4 -4
- package/dist/adaptives/adaptive-content/index.js +2 -2
- package/dist/adaptives/adaptive-content/index.js.map +4 -4
- package/dist/adaptives/adaptive-faq/index.js +23 -6
- package/dist/adaptives/adaptive-faq/index.js.map +4 -4
- package/dist/adaptives/adaptive-gamification/index.js.map +1 -1
- package/dist/adaptives/adaptive-nav/index.js +22 -7
- package/dist/adaptives/adaptive-nav/index.js.map +4 -4
- package/dist/adaptives/adaptive-overlays/index.js +13 -13
- package/dist/adaptives/adaptive-overlays/index.js.map +4 -4
- package/dist/api.d.ts +2 -2
- package/dist/apps/examples/gamification-app.example.d.ts +4 -4
- package/dist/apps/index.d.ts +7 -7
- package/dist/blocks/data/index.d.ts +1 -1
- package/dist/blocks/index.d.ts +2 -2
- package/dist/blocks/interactive/index.d.ts +1 -1
- package/dist/blocks/notification/NotificationBlock.d.ts +1 -1
- package/dist/blocks/notification/index.d.ts +1 -1
- package/dist/bootstrap.d.ts +4 -4
- package/dist/chunk-AYTRRBR5.js +251 -0
- package/dist/chunk-AYTRRBR5.js.map +7 -0
- package/dist/chunk-HJKAXD5S.js +7921 -0
- package/dist/chunk-HJKAXD5S.js.map +7 -0
- package/dist/components/ShadowCanvasOverlay.d.ts +2 -2
- package/dist/components/TileCard.d.ts +1 -1
- package/dist/context/ContextManager.d.ts +1 -1
- package/dist/context/index.d.ts +3 -3
- package/dist/decisions/engine.d.ts +1 -1
- package/dist/decisions/index.d.ts +3 -3
- package/dist/decisions/schema.d.ts +24 -24
- package/dist/decisions/strategies/rules.d.ts +1 -1
- package/dist/decisions/strategies/score.d.ts +1 -1
- package/dist/editorLoader.d.ts +4 -4
- package/dist/events/EventAccumulator.d.ts +1 -1
- package/dist/events/EventBus.d.ts +1 -1
- package/dist/events/index.d.ts +7 -6
- package/dist/events/registerConfigPredicates.d.ts +19 -0
- package/dist/experiments/adapters/growthbook.d.ts +1 -1
- package/dist/experiments/index.d.ts +2 -2
- package/dist/experiments/registry.d.ts +1 -1
- package/dist/fetchers/index.d.ts +2 -2
- package/dist/hooks/useShadowCanvasConfig.d.ts +1 -1
- package/dist/hostPatcher/index.d.ts +2 -2
- package/dist/index.d.ts +24 -21
- package/dist/index.js +816 -75
- package/dist/index.js.map +7 -1
- package/dist/metrics/index.d.ts +1 -1
- package/dist/notifications/index.d.ts +6 -6
- package/dist/overlays/runtime/index.d.ts +3 -3
- package/dist/overlays/runtime/overlay/root.d.ts +17 -1
- package/dist/overlays/runtime/overlay/tooltip.d.ts +1 -1
- package/dist/react.js +90 -134
- package/dist/react.js.map +7 -1
- package/dist/render/RenderContext.d.ts +2 -2
- package/dist/render/index.d.ts +2 -2
- package/dist/render/types.d.ts +2 -2
- package/dist/runtime.d.ts +8 -8
- package/dist/smart-canvas.esm.js +127 -124
- package/dist/smart-canvas.esm.js.map +4 -4
- package/dist/smart-canvas.js +17160 -16782
- package/dist/smart-canvas.js.map +4 -4
- package/dist/smart-canvas.min.js +127 -124
- package/dist/smart-canvas.min.js.map +4 -4
- package/dist/state/StateStore.d.ts +1 -1
- package/dist/state/helpers/cooldowns.d.ts +1 -1
- package/dist/state/helpers/dismissals.d.ts +1 -1
- package/dist/state/helpers/frequency.d.ts +1 -1
- package/dist/state/index.d.ts +3 -3
- package/dist/surfaces/index.d.ts +3 -3
- package/dist/surfaces/positioning.d.ts +1 -1
- package/dist/telemetry/adapters/posthog.d.ts +2 -2
- package/dist/telemetry/index.d.ts +3 -3
- package/dist/telemetry/registry.d.ts +1 -1
- package/dist/theme/ThemeProvider.d.ts +1 -1
- package/dist/theme/extractHostTheme.d.ts +1 -1
- package/dist/theme/index.d.ts +4 -4
- package/dist/types-only.d.ts +1 -1
- package/dist/types-only.js +1 -11
- package/dist/types-only.js.map +7 -1
- package/dist/types.d.ts +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/widgets/index.d.ts +1 -1
- package/package.json +24 -17
- package/schema/canvas-config.base.schema.json +351 -0
- package/schema/canvas-config.schema.json +3202 -440
- package/scripts/validate-config.mjs +54 -58
- package/dist/RuntimeProvider.js +0 -113
- package/dist/RuntimeProvider.js.map +0 -1
- package/dist/SmartCanvasApp.js +0 -143
- package/dist/SmartCanvasApp.js.map +0 -1
- package/dist/SmartCanvasElement.js +0 -138
- package/dist/SmartCanvasElement.js.map +0 -1
- package/dist/SmartCanvasPortal.js +0 -17
- package/dist/SmartCanvasPortal.js.map +0 -1
- package/dist/actions/ActionEngine.js +0 -272
- package/dist/actions/ActionEngine.js.map +0 -1
- package/dist/actions/executors/index.js +0 -240
- package/dist/actions/executors/index.js.map +0 -1
- package/dist/actions/executors/tour.js +0 -332
- package/dist/actions/executors/tour.js.map +0 -1
- package/dist/actions/index.js +0 -12
- package/dist/actions/index.js.map +0 -1
- package/dist/actions/types.js +0 -8
- package/dist/actions/types.js.map +0 -1
- package/dist/actions/validation.js +0 -577
- package/dist/actions/validation.js.map +0 -1
- package/dist/antiFlicker.js +0 -39
- package/dist/antiFlicker.js.map +0 -1
- package/dist/api.js +0 -205
- package/dist/api.js.map +0 -1
- package/dist/apps/AppContext.js +0 -91
- package/dist/apps/AppContext.js.map +0 -1
- package/dist/apps/AppLoader.js +0 -293
- package/dist/apps/AppLoader.js.map +0 -1
- package/dist/apps/AppRegistry.js +0 -317
- package/dist/apps/AppRegistry.js.map +0 -1
- package/dist/apps/examples/gamification-app.example.js +0 -329
- package/dist/apps/examples/gamification-app.example.js.map +0 -1
- package/dist/apps/index.js +0 -16
- package/dist/apps/index.js.map +0 -1
- package/dist/apps/types.js +0 -8
- package/dist/apps/types.js.map +0 -1
- package/dist/blocks/data/ComparisonBlock.js +0 -95
- package/dist/blocks/data/ComparisonBlock.js.map +0 -1
- package/dist/blocks/data/StatsBlock.js +0 -102
- package/dist/blocks/data/StatsBlock.js.map +0 -1
- package/dist/blocks/data/index.js +0 -3
- package/dist/blocks/data/index.js.map +0 -1
- package/dist/blocks/index.js +0 -93
- package/dist/blocks/index.js.map +0 -1
- package/dist/blocks/interactive/ChecklistBlock.js +0 -111
- package/dist/blocks/interactive/ChecklistBlock.js.map +0 -1
- package/dist/blocks/interactive/RatingBlock.js +0 -147
- package/dist/blocks/interactive/RatingBlock.js.map +0 -1
- package/dist/blocks/interactive/index.js +0 -3
- package/dist/blocks/interactive/index.js.map +0 -1
- package/dist/blocks/notification/NotificationBlock.js +0 -171
- package/dist/blocks/notification/NotificationBlock.js.map +0 -1
- package/dist/blocks/notification/index.js +0 -2
- package/dist/blocks/notification/index.js.map +0 -1
- package/dist/blocks/theme-tokens.js +0 -25
- package/dist/blocks/theme-tokens.js.map +0 -1
- package/dist/bootstrap.js +0 -448
- package/dist/bootstrap.js.map +0 -1
- package/dist/bundle-entry.js +0 -9
- package/dist/bundle-entry.js.map +0 -1
- package/dist/components/ShadowCanvasOverlay.js +0 -327
- package/dist/components/ShadowCanvasOverlay.js.map +0 -1
- package/dist/components/TileCard.js +0 -103
- package/dist/components/TileCard.js.map +0 -1
- package/dist/components/TileWheel.js +0 -50
- package/dist/components/TileWheel.js.map +0 -1
- package/dist/config-validator.js +0 -173
- package/dist/config-validator.js.map +0 -1
- package/dist/configFetcher.js +0 -131
- package/dist/configFetcher.js.map +0 -1
- package/dist/context/ContextManager.js +0 -269
- package/dist/context/ContextManager.js.map +0 -1
- package/dist/context/index.js +0 -7
- package/dist/context/index.js.map +0 -1
- package/dist/context/schema.js +0 -50
- package/dist/context/schema.js.map +0 -1
- package/dist/context/types.js +0 -8
- package/dist/context/types.js.map +0 -1
- package/dist/controller.js +0 -34
- package/dist/controller.js.map +0 -1
- package/dist/decisions/engine.js +0 -117
- package/dist/decisions/engine.js.map +0 -1
- package/dist/decisions/index.js +0 -10
- package/dist/decisions/index.js.map +0 -1
- package/dist/decisions/schema.js +0 -151
- package/dist/decisions/schema.js.map +0 -1
- package/dist/decisions/strategies/rules.js +0 -166
- package/dist/decisions/strategies/rules.js.map +0 -1
- package/dist/decisions/strategies/score.js +0 -29
- package/dist/decisions/strategies/score.js.map +0 -1
- package/dist/decisions/types.js +0 -2
- package/dist/decisions/types.js.map +0 -1
- package/dist/earlyPatcher.js +0 -20
- package/dist/earlyPatcher.js.map +0 -1
- package/dist/editorLoader.js +0 -254
- package/dist/editorLoader.js.map +0 -1
- package/dist/events/EventAccumulator.js +0 -101
- package/dist/events/EventAccumulator.js.map +0 -1
- package/dist/events/EventBus.js +0 -152
- package/dist/events/EventBus.js.map +0 -1
- package/dist/events/index.js +0 -11
- package/dist/events/index.js.map +0 -1
- package/dist/events/normalizers/canvas.js +0 -116
- package/dist/events/normalizers/canvas.js.map +0 -1
- package/dist/events/normalizers/posthog.js +0 -171
- package/dist/events/normalizers/posthog.js.map +0 -1
- package/dist/events/schema.js +0 -30
- package/dist/events/schema.js.map +0 -1
- package/dist/events/types.js +0 -54
- package/dist/events/types.js.map +0 -1
- package/dist/experiments/adapters/growthbook.js +0 -81
- package/dist/experiments/adapters/growthbook.js.map +0 -1
- package/dist/experiments/index.js +0 -4
- package/dist/experiments/index.js.map +0 -1
- package/dist/experiments/registry.js +0 -30
- package/dist/experiments/registry.js.map +0 -1
- package/dist/experiments/types.js +0 -2
- package/dist/experiments/types.js.map +0 -1
- package/dist/fetchers/cdnFetcher.js +0 -96
- package/dist/fetchers/cdnFetcher.js.map +0 -1
- package/dist/fetchers/experimentsFetcher.js +0 -109
- package/dist/fetchers/experimentsFetcher.js.map +0 -1
- package/dist/fetchers/index.js +0 -5
- package/dist/fetchers/index.js.map +0 -1
- package/dist/fetchers/mergeConfigs.js +0 -38
- package/dist/fetchers/mergeConfigs.js.map +0 -1
- package/dist/fetchers/registry.js +0 -58
- package/dist/fetchers/registry.js.map +0 -1
- package/dist/fetchers/types.js +0 -2
- package/dist/fetchers/types.js.map +0 -1
- package/dist/hooks/useCanvasOverlays.js +0 -128
- package/dist/hooks/useCanvasOverlays.js.map +0 -1
- package/dist/hooks/useHostPatches.js +0 -40
- package/dist/hooks/useHostPatches.js.map +0 -1
- package/dist/hooks/useShadowCanvasConfig.js +0 -63
- package/dist/hooks/useShadowCanvasConfig.js.map +0 -1
- package/dist/hostPatcher/core/patcher.js +0 -181
- package/dist/hostPatcher/core/patcher.js.map +0 -1
- package/dist/hostPatcher/core/sanitizer.js +0 -66
- package/dist/hostPatcher/core/sanitizer.js.map +0 -1
- package/dist/hostPatcher/core/types.js +0 -2
- package/dist/hostPatcher/core/types.js.map +0 -1
- package/dist/hostPatcher/index.js +0 -7
- package/dist/hostPatcher/index.js.map +0 -1
- package/dist/hostPatcher/policy/defaultPolicy.js +0 -23
- package/dist/hostPatcher/policy/defaultPolicy.js.map +0 -1
- package/dist/hostPatcher/utils/anchors.js +0 -105
- package/dist/hostPatcher/utils/anchors.js.map +0 -1
- package/dist/hostPatcher/utils/observer.js +0 -11
- package/dist/hostPatcher/utils/observer.js.map +0 -1
- package/dist/logger.js +0 -81
- package/dist/logger.js.map +0 -1
- package/dist/metrics/index.js +0 -5
- package/dist/metrics/index.js.map +0 -1
- package/dist/metrics/sessionMetrics.js +0 -178
- package/dist/metrics/sessionMetrics.js.map +0 -1
- package/dist/notifications/NotificationToastStack.js +0 -118
- package/dist/notifications/NotificationToastStack.js.map +0 -1
- package/dist/notifications/index.js +0 -6
- package/dist/notifications/index.js.map +0 -1
- package/dist/notifications/matcher.js +0 -66
- package/dist/notifications/matcher.js.map +0 -1
- package/dist/notifications/types.js +0 -13
- package/dist/notifications/types.js.map +0 -1
- package/dist/notifications/useNotifications.js +0 -104
- package/dist/notifications/useNotifications.js.map +0 -1
- package/dist/notifications/useNotifyWatcher.js +0 -62
- package/dist/notifications/useNotifyWatcher.js.map +0 -1
- package/dist/overlays/fetcher.js +0 -15
- package/dist/overlays/fetcher.js.map +0 -1
- package/dist/overlays/recipeRegistry.js +0 -32
- package/dist/overlays/recipeRegistry.js.map +0 -1
- package/dist/overlays/runtime/anchor/resolve.js +0 -87
- package/dist/overlays/runtime/anchor/resolve.js.map +0 -1
- package/dist/overlays/runtime/index.js +0 -8
- package/dist/overlays/runtime/index.js.map +0 -1
- package/dist/overlays/runtime/overlay/highlight.js +0 -160
- package/dist/overlays/runtime/overlay/highlight.js.map +0 -1
- package/dist/overlays/runtime/overlay/modal.js +0 -78
- package/dist/overlays/runtime/overlay/modal.js.map +0 -1
- package/dist/overlays/runtime/overlay/root.js +0 -297
- package/dist/overlays/runtime/overlay/root.js.map +0 -1
- package/dist/overlays/runtime/overlay/runner.js +0 -602
- package/dist/overlays/runtime/overlay/runner.js.map +0 -1
- package/dist/overlays/runtime/overlay/tooltip.js +0 -232
- package/dist/overlays/runtime/overlay/tooltip.js.map +0 -1
- package/dist/overlays/runtime/utils/dom.js +0 -12
- package/dist/overlays/runtime/utils/dom.js.map +0 -1
- package/dist/overlays/schema.js +0 -52
- package/dist/overlays/schema.js.map +0 -1
- package/dist/overlays/types.js +0 -2
- package/dist/overlays/types.js.map +0 -1
- package/dist/render/RenderContext.js +0 -69
- package/dist/render/RenderContext.js.map +0 -1
- package/dist/render/index.js +0 -3
- package/dist/render/index.js.map +0 -1
- package/dist/render/types.js +0 -2
- package/dist/render/types.js.map +0 -1
- package/dist/runtime.js +0 -237
- package/dist/runtime.js.map +0 -1
- package/dist/state/StateStore.js +0 -176
- package/dist/state/StateStore.js.map +0 -1
- package/dist/state/helpers/cooldowns.js +0 -31
- package/dist/state/helpers/cooldowns.js.map +0 -1
- package/dist/state/helpers/dismissals.js +0 -34
- package/dist/state/helpers/dismissals.js.map +0 -1
- package/dist/state/helpers/frequency.js +0 -43
- package/dist/state/helpers/frequency.js.map +0 -1
- package/dist/state/index.js +0 -7
- package/dist/state/index.js.map +0 -1
- package/dist/state/schema.js +0 -25
- package/dist/state/schema.js.map +0 -1
- package/dist/state/types.js +0 -9
- package/dist/state/types.js.map +0 -1
- package/dist/store/example.js +0 -43
- package/dist/store/example.js.map +0 -1
- package/dist/store/mini-effector.js +0 -88
- package/dist/store/mini-effector.js.map +0 -1
- package/dist/surfaces/Surfaces.js +0 -361
- package/dist/surfaces/Surfaces.js.map +0 -1
- package/dist/surfaces/index.js +0 -12
- package/dist/surfaces/index.js.map +0 -1
- package/dist/surfaces/positioning.js +0 -228
- package/dist/surfaces/positioning.js.map +0 -1
- package/dist/surfaces/types.js +0 -23
- package/dist/surfaces/types.js.map +0 -1
- package/dist/telemetry/adapters/noop.js +0 -42
- package/dist/telemetry/adapters/noop.js.map +0 -1
- package/dist/telemetry/adapters/posthog.js +0 -180
- package/dist/telemetry/adapters/posthog.js.map +0 -1
- package/dist/telemetry/index.js +0 -4
- package/dist/telemetry/index.js.map +0 -1
- package/dist/telemetry/registry.js +0 -29
- package/dist/telemetry/registry.js.map +0 -1
- package/dist/telemetry/types.js +0 -2
- package/dist/telemetry/types.js.map +0 -1
- package/dist/theme/ThemeProvider.js +0 -109
- package/dist/theme/ThemeProvider.js.map +0 -1
- package/dist/theme/defaultTheme.js +0 -190
- package/dist/theme/defaultTheme.js.map +0 -1
- package/dist/theme/extractHostTheme.js +0 -259
- package/dist/theme/extractHostTheme.js.map +0 -1
- package/dist/theme/index.js +0 -7
- package/dist/theme/index.js.map +0 -1
- package/dist/theme/types.js +0 -6
- package/dist/theme/types.js.map +0 -1
- package/dist/token.js +0 -44
- package/dist/token.js.map +0 -1
- package/dist/types.js +0 -17
- package/dist/types.js.map +0 -1
- package/dist/version.js +0 -14
- package/dist/version.js.map +0 -1
- package/dist/widgets/WidgetRegistry.js +0 -190
- package/dist/widgets/WidgetRegistry.js.map +0 -1
- package/dist/widgets/index.js +0 -7
- package/dist/widgets/index.js.map +0 -1
package/dist/bootstrap.js
DELETED
|
@@ -1,448 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bootstrap module for single-token SDK initialization.
|
|
3
|
-
*
|
|
4
|
-
* Usage:
|
|
5
|
-
* ```typescript
|
|
6
|
-
* import { Syntro } from '@syntrologie/runtime-sdk';
|
|
7
|
-
*
|
|
8
|
-
* const { canvas, runtime } = await Syntro.init({
|
|
9
|
-
* token: "syn_eyJ2IjoxLCJleHAiOnsiayI6InNkay14eHgiLCJwIjoiZ3Jvd3RoYm9vayJ9fQ"
|
|
10
|
-
* });
|
|
11
|
-
*
|
|
12
|
-
* // Access runtime providers
|
|
13
|
-
* runtime.telemetry?.trackAction(...);
|
|
14
|
-
* runtime.context.subscribe((ctx, prev) => { ... });
|
|
15
|
-
* runtime.events.subscribe({ names: ['ui.click'] }, (event) => { ... });
|
|
16
|
-
* runtime.state.dismissals.mark('my-tile');
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
import { createSmartCanvas } from './api';
|
|
20
|
-
import { createAppLoader } from './apps/AppLoader';
|
|
21
|
-
import { createCanvasConfigFetcher } from './configFetcher';
|
|
22
|
-
import { getEditorConf, getEditorSource } from './editorLoader';
|
|
23
|
-
import { createEventBus } from './events/EventBus';
|
|
24
|
-
import { createPostHogNormalizer } from './events/normalizers/posthog';
|
|
25
|
-
import { createExperimentClient } from './experiments/registry';
|
|
26
|
-
import { createConfigFetcher } from './fetchers/registry';
|
|
27
|
-
import { initLogger, debug, warn, error as logError } from './logger';
|
|
28
|
-
import { createSessionMetricTracker } from './metrics';
|
|
29
|
-
import { createSmartCanvasRuntime } from './runtime';
|
|
30
|
-
import { createTelemetryClient } from './telemetry/registry';
|
|
31
|
-
import { decodeToken, encodeToken } from './token';
|
|
32
|
-
/**
|
|
33
|
-
* Get environment variable, supporting both Vite and Next.js patterns.
|
|
34
|
-
*/
|
|
35
|
-
function getEnvVar(name) {
|
|
36
|
-
if (typeof process !== 'undefined' && process.env) {
|
|
37
|
-
// Next.js / Node.js
|
|
38
|
-
return process.env[name];
|
|
39
|
-
}
|
|
40
|
-
// Vite uses import.meta.env - use try/catch to avoid esbuild IIFE warning
|
|
41
|
-
try {
|
|
42
|
-
// eslint-disable-next-line no-eval -- Required for Vite compatibility; import.meta cannot be accessed statically in IIFE bundles
|
|
43
|
-
const meta = (0, eval)('import.meta');
|
|
44
|
-
if (meta === null || meta === void 0 ? void 0 : meta.env) {
|
|
45
|
-
return meta.env[name];
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
catch {
|
|
49
|
-
// import.meta not available (IIFE bundle)
|
|
50
|
-
}
|
|
51
|
-
return undefined;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Check if we're in editor mode (editor_conf.mode === 'editor').
|
|
55
|
-
*/
|
|
56
|
-
function isEditorMode() {
|
|
57
|
-
if (typeof window === 'undefined') {
|
|
58
|
-
debug('Syntro Bootstrap', 'isEditorMode: not in browser');
|
|
59
|
-
return false;
|
|
60
|
-
}
|
|
61
|
-
const conf = getEditorConf();
|
|
62
|
-
const source = getEditorSource();
|
|
63
|
-
const isEditor = !!((source === null || source === void 0 ? void 0 : source.token) && (conf === null || conf === void 0 ? void 0 : conf.mode) === 'editor');
|
|
64
|
-
debug('Syntro Bootstrap', 'isEditorMode:', isEditor);
|
|
65
|
-
return isEditor;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Check if we're in audit mode (editor_conf.mode === 'audit').
|
|
69
|
-
*/
|
|
70
|
-
function isAuditMode() {
|
|
71
|
-
if (typeof window === 'undefined') {
|
|
72
|
-
debug('Syntro Bootstrap', 'isAuditMode: not in browser');
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
const conf = getEditorConf();
|
|
76
|
-
const source = getEditorSource();
|
|
77
|
-
const isAudit = !!((source === null || source === void 0 ? void 0 : source.token) && (conf === null || conf === void 0 ? void 0 : conf.mode) === 'audit');
|
|
78
|
-
debug('Syntro Bootstrap', 'isAuditMode:', isAudit);
|
|
79
|
-
return isAudit;
|
|
80
|
-
}
|
|
81
|
-
// ============================================================================
|
|
82
|
-
// Segment Attribute Caching (localStorage)
|
|
83
|
-
// ============================================================================
|
|
84
|
-
const SEGMENT_CACHE_KEY = 'syntro_segment_attributes';
|
|
85
|
-
/**
|
|
86
|
-
* Load cached segment attributes from localStorage.
|
|
87
|
-
* Returns cached values for instant Phase 1 evaluation.
|
|
88
|
-
*/
|
|
89
|
-
function loadCachedSegmentAttributes() {
|
|
90
|
-
if (typeof window === 'undefined')
|
|
91
|
-
return {};
|
|
92
|
-
try {
|
|
93
|
-
const cached = localStorage.getItem(SEGMENT_CACHE_KEY);
|
|
94
|
-
if (cached) {
|
|
95
|
-
const attrs = JSON.parse(cached);
|
|
96
|
-
debug('Syntro Bootstrap', 'Loaded cached segment attributes:', attrs);
|
|
97
|
-
return attrs;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
catch (err) {
|
|
101
|
-
warn('Syntro Bootstrap', 'Failed to load cached segment attributes:', err);
|
|
102
|
-
}
|
|
103
|
-
return {};
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Save segment attributes to localStorage for faster future loads.
|
|
107
|
-
*/
|
|
108
|
-
function cacheSegmentAttributes(attrs) {
|
|
109
|
-
if (typeof window === 'undefined')
|
|
110
|
-
return;
|
|
111
|
-
try {
|
|
112
|
-
localStorage.setItem(SEGMENT_CACHE_KEY, JSON.stringify(attrs));
|
|
113
|
-
debug('Syntro Bootstrap', 'Cached segment attributes:', attrs);
|
|
114
|
-
}
|
|
115
|
-
catch (err) {
|
|
116
|
-
warn('Syntro Bootstrap', 'Failed to cache segment attributes:', err);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Extract segment flags (in_segment_*) from PostHog feature flags.
|
|
121
|
-
*/
|
|
122
|
-
function extractSegmentFlags(allFlags) {
|
|
123
|
-
if (!allFlags)
|
|
124
|
-
return {};
|
|
125
|
-
const segmentFlags = {};
|
|
126
|
-
for (const [key, value] of Object.entries(allFlags)) {
|
|
127
|
-
if (key.startsWith('in_segment_')) {
|
|
128
|
-
segmentFlags[key] = value === true;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return segmentFlags;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Initialize the Syntro SDK with a single token.
|
|
135
|
-
*
|
|
136
|
-
* Environment variable overrides (for dev):
|
|
137
|
-
* SYNTRO_EXPERIMENT_HOST - Override experiment server URL
|
|
138
|
-
* SYNTRO_TELEMETRY_HOST - Override telemetry server URL
|
|
139
|
-
*
|
|
140
|
-
* In editor mode (when editor_token is in URL), the token is optional.
|
|
141
|
-
* The editor SDK handles its own authentication.
|
|
142
|
-
*
|
|
143
|
-
* @param options - Initialization options
|
|
144
|
-
* @returns The initialized SDK components
|
|
145
|
-
*/
|
|
146
|
-
async function init(options) {
|
|
147
|
-
var _a, _b, _c;
|
|
148
|
-
// Initialize logger early (URL param works without token)
|
|
149
|
-
initLogger();
|
|
150
|
-
debug('Syntro Bootstrap', '====== INIT ======');
|
|
151
|
-
debug('Syntro Bootstrap', 'Options:', {
|
|
152
|
-
hasToken: !!options.token,
|
|
153
|
-
tokenPrefix: `${(_a = options.token) === null || _a === void 0 ? void 0 : _a.slice(0, 15)}...`,
|
|
154
|
-
hasCanvasOptions: !!options.canvas,
|
|
155
|
-
});
|
|
156
|
-
// In editor or audit mode, token is optional - SDK handles auth differently
|
|
157
|
-
const editorMode = isEditorMode();
|
|
158
|
-
const auditMode = isAuditMode();
|
|
159
|
-
const sdkMode = editorMode ? 'editor' : auditMode ? 'audit' : null;
|
|
160
|
-
debug('Syntro Bootstrap', 'SDK mode:', sdkMode !== null && sdkMode !== void 0 ? sdkMode : 'normal');
|
|
161
|
-
let payload;
|
|
162
|
-
if (options.token) {
|
|
163
|
-
// If token is provided and starts with syn_, decode it
|
|
164
|
-
if (options.token.startsWith('syn_')) {
|
|
165
|
-
debug('Syntro Bootstrap', 'Token starts with syn_, decoding...');
|
|
166
|
-
payload = decodeToken(options.token);
|
|
167
|
-
// Re-init logger with token's debug flag
|
|
168
|
-
initLogger(payload.d);
|
|
169
|
-
}
|
|
170
|
-
else if (!sdkMode) {
|
|
171
|
-
// Not a syn_ token and not in special mode - error
|
|
172
|
-
logError('Syntro Bootstrap', '❌ Token does not start with syn_ and NOT in editor/audit mode!');
|
|
173
|
-
logError('Syntro Bootstrap', 'Token received:', options.token);
|
|
174
|
-
throw new Error("Invalid Syntro token: must start with 'syn_'");
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
debug('Syntro Bootstrap', `✓ Non-syn_ token allowed (${sdkMode} mode)`);
|
|
178
|
-
}
|
|
179
|
-
// If in editor/audit mode with non-syn_ token, skip token decoding
|
|
180
|
-
}
|
|
181
|
-
else if (!sdkMode) {
|
|
182
|
-
// No token and not in special mode - error
|
|
183
|
-
logError('Syntro Bootstrap', '❌ No token provided and NOT in editor/audit mode!');
|
|
184
|
-
throw new Error('Syntro token is required (unless in editor or audit mode)');
|
|
185
|
-
}
|
|
186
|
-
else {
|
|
187
|
-
debug('Syntro Bootstrap', `✓ No token, but ${sdkMode} mode - proceeding`);
|
|
188
|
-
}
|
|
189
|
-
// Host resolution priority: env var > token > default
|
|
190
|
-
// Env vars are checked at build time by bundlers (Next.js/Vite)
|
|
191
|
-
const experimentHost = getEnvVar('NEXT_PUBLIC_SYNTRO_EXPERIMENT_HOST') ||
|
|
192
|
-
getEnvVar('VITE_SYNTRO_EXPERIMENT_HOST') ||
|
|
193
|
-
(payload === null || payload === void 0 ? void 0 : payload.eh); // from token
|
|
194
|
-
const telemetryHost = getEnvVar('NEXT_PUBLIC_SYNTRO_TELEMETRY_HOST') ||
|
|
195
|
-
getEnvVar('VITE_SYNTRO_TELEMETRY_HOST') ||
|
|
196
|
-
(payload === null || payload === void 0 ? void 0 : payload.th); // from token
|
|
197
|
-
// Editor SDK URL (for loading editor in edit mode)
|
|
198
|
-
const editorUrl = getEnvVar('NEXT_PUBLIC_SYNTRO_EDITOR_URL') ||
|
|
199
|
-
getEnvVar('VITE_SYNTRO_EDITOR_URL') ||
|
|
200
|
-
((_b = options.canvas) === null || _b === void 0 ? void 0 : _b.editorUrl);
|
|
201
|
-
// ============================================================================
|
|
202
|
-
// PHASE 1: Load cached segment attributes for instant evaluation
|
|
203
|
-
// ============================================================================
|
|
204
|
-
const cachedSegmentAttrs = loadCachedSegmentAttributes();
|
|
205
|
-
debug('Syntro Bootstrap', 'Phase 1: Using cached segment attributes:', cachedSegmentAttrs);
|
|
206
|
-
// Will be set when experiments client is created
|
|
207
|
-
let experiments;
|
|
208
|
-
// ============================================================================
|
|
209
|
-
// Create EventBus early so we can wire PostHog events into it
|
|
210
|
-
// ============================================================================
|
|
211
|
-
const events = createEventBus();
|
|
212
|
-
console.log('[Syntro Bootstrap] EventBus created');
|
|
213
|
-
// Create PostHog normalizer that feeds events into the EventBus
|
|
214
|
-
const postHogNormalizer = createPostHogNormalizer((event) => {
|
|
215
|
-
events.publishEvent(event);
|
|
216
|
-
});
|
|
217
|
-
// Callback for when PostHog feature flags are loaded (Phase 2)
|
|
218
|
-
const onFeatureFlagsLoaded = (allFlags) => {
|
|
219
|
-
var _a, _b, _c;
|
|
220
|
-
debug('Syntro Bootstrap', 'Phase 2: PostHog feature flags loaded');
|
|
221
|
-
// Extract segment flags (in_segment_*)
|
|
222
|
-
const segmentFlags = extractSegmentFlags(allFlags);
|
|
223
|
-
debug('Syntro Bootstrap', 'Segment flags from PostHog:', segmentFlags);
|
|
224
|
-
// Cache for next page load
|
|
225
|
-
cacheSegmentAttributes(segmentFlags);
|
|
226
|
-
// Update GrowthBook with fresh segment attributes
|
|
227
|
-
if (experiments) {
|
|
228
|
-
// Get current session metrics if available
|
|
229
|
-
const sessionAttrs = (_b = (_a = sessionMetrics === null || sessionMetrics === void 0 ? void 0 : sessionMetrics.getAll) === null || _a === void 0 ? void 0 : _a.call(sessionMetrics)) !== null && _b !== void 0 ? _b : {};
|
|
230
|
-
// Merge session metrics + segment flags and update GrowthBook
|
|
231
|
-
const updatedAttrs = { ...sessionAttrs, ...segmentFlags };
|
|
232
|
-
debug('Syntro Bootstrap', 'Updating GrowthBook with attributes:', updatedAttrs);
|
|
233
|
-
(_c = experiments.setAttributes) === null || _c === void 0 ? void 0 : _c.call(experiments, updatedAttrs);
|
|
234
|
-
}
|
|
235
|
-
};
|
|
236
|
-
// Initialize telemetry client with feature flags callback and event capture
|
|
237
|
-
let telemetry;
|
|
238
|
-
if (payload === null || payload === void 0 ? void 0 : payload.t) {
|
|
239
|
-
const provider = payload.t === 'noop' ? 'noop' : 'posthog';
|
|
240
|
-
telemetry = createTelemetryClient(provider, {
|
|
241
|
-
apiKey: payload.t,
|
|
242
|
-
apiHost: telemetryHost, // undefined falls back to adapter default
|
|
243
|
-
// Enable PostHog feature flags for segment membership
|
|
244
|
-
enableFeatureFlags: true,
|
|
245
|
-
// Wire up callback for when flags are loaded (Phase 2)
|
|
246
|
-
onFeatureFlagsLoaded,
|
|
247
|
-
// Wire up event capture to feed into EventBus
|
|
248
|
-
onCapture: postHogNormalizer,
|
|
249
|
-
});
|
|
250
|
-
console.log(`[Syntro Bootstrap] Telemetry client created (${provider}) with EventBus wiring`);
|
|
251
|
-
}
|
|
252
|
-
// ============================================================================
|
|
253
|
-
// Initialize experiment client with CACHED attributes (Phase 1)
|
|
254
|
-
// PostHog will update these when /decide returns (Phase 2)
|
|
255
|
-
// ============================================================================
|
|
256
|
-
let sessionMetrics;
|
|
257
|
-
if (payload === null || payload === void 0 ? void 0 : payload.e) {
|
|
258
|
-
experiments = createExperimentClient('growthbook', {
|
|
259
|
-
clientKey: payload.e,
|
|
260
|
-
apiHost: experimentHost, // undefined falls back to adapter default
|
|
261
|
-
// Phase 1: Use cached segment attributes for instant evaluation
|
|
262
|
-
attributes: cachedSegmentAttrs,
|
|
263
|
-
// Wire experiment tracking to telemetry provider
|
|
264
|
-
onExperimentViewed: (telemetry === null || telemetry === void 0 ? void 0 : telemetry.trackExperiment)
|
|
265
|
-
? (key, variationId, variationName) => {
|
|
266
|
-
telemetry.trackExperiment(key, variationId, variationName);
|
|
267
|
-
}
|
|
268
|
-
: undefined,
|
|
269
|
-
});
|
|
270
|
-
}
|
|
271
|
-
// Create session metric tracker if enabled
|
|
272
|
-
if (options.enableSessionMetrics) {
|
|
273
|
-
sessionMetrics = createSessionMetricTracker({
|
|
274
|
-
experiments,
|
|
275
|
-
onMetricChange: (key, value) => {
|
|
276
|
-
debug('Syntro Bootstrap', `Session metric changed: ${key} = ${value}`);
|
|
277
|
-
},
|
|
278
|
-
});
|
|
279
|
-
debug('Syntro Bootstrap', 'SessionMetricTracker created');
|
|
280
|
-
}
|
|
281
|
-
// Determine runtime mode
|
|
282
|
-
let runtimeMode = 'production';
|
|
283
|
-
if (editorMode)
|
|
284
|
-
runtimeMode = 'editor';
|
|
285
|
-
else if (auditMode)
|
|
286
|
-
runtimeMode = 'audit';
|
|
287
|
-
else if (getEnvVar('NODE_ENV') === 'development')
|
|
288
|
-
runtimeMode = 'development';
|
|
289
|
-
// ============================================================================
|
|
290
|
-
// Create runtime FIRST (before canvas, so we can wire up app loading)
|
|
291
|
-
// ============================================================================
|
|
292
|
-
const runtime = createSmartCanvasRuntime({
|
|
293
|
-
telemetry,
|
|
294
|
-
sessionMetrics,
|
|
295
|
-
mode: runtimeMode,
|
|
296
|
-
events, // Use the EventBus we created earlier (already wired to PostHog)
|
|
297
|
-
});
|
|
298
|
-
debug('Syntro Bootstrap', 'Runtime created:', {
|
|
299
|
-
version: runtime.version,
|
|
300
|
-
mode: runtime.mode,
|
|
301
|
-
hasContext: !!runtime.context,
|
|
302
|
-
hasEvents: !!runtime.events,
|
|
303
|
-
hasState: !!runtime.state,
|
|
304
|
-
});
|
|
305
|
-
// ============================================================================
|
|
306
|
-
// Core app executors are registered synchronously in ExecutorRegistry
|
|
307
|
-
// No async registration needed - they're available immediately
|
|
308
|
-
// ============================================================================
|
|
309
|
-
debug('Syntro Bootstrap', 'Core app executors already registered');
|
|
310
|
-
// ============================================================================
|
|
311
|
-
// Create app loader for external apps from CDN
|
|
312
|
-
// ============================================================================
|
|
313
|
-
const cdnBase = options.cdnBase ||
|
|
314
|
-
getEnvVar('NEXT_PUBLIC_SYNTRO_CDN_BASE') ||
|
|
315
|
-
getEnvVar('VITE_SYNTRO_CDN_BASE') ||
|
|
316
|
-
'https://cdn.syntrologie.com';
|
|
317
|
-
const appLoader = createAppLoader({
|
|
318
|
-
cdnBase,
|
|
319
|
-
registry: runtime.apps,
|
|
320
|
-
onLoadStart: (appId) => {
|
|
321
|
-
debug('Syntro Bootstrap', `Loading app from CDN: ${appId}`);
|
|
322
|
-
},
|
|
323
|
-
onLoadEnd: (appId, success, error) => {
|
|
324
|
-
if (success) {
|
|
325
|
-
debug('Syntro Bootstrap', `App loaded successfully: ${appId}`);
|
|
326
|
-
}
|
|
327
|
-
else {
|
|
328
|
-
warn('Syntro Bootstrap', `Failed to load app: ${appId}`, error);
|
|
329
|
-
}
|
|
330
|
-
},
|
|
331
|
-
});
|
|
332
|
-
// ============================================================================
|
|
333
|
-
// Expose global SynOS object for UMD app self-registration
|
|
334
|
-
// ============================================================================
|
|
335
|
-
if (typeof window !== 'undefined') {
|
|
336
|
-
window.SynOS = {
|
|
337
|
-
...window.SynOS,
|
|
338
|
-
appRegistry: runtime.apps,
|
|
339
|
-
runtime,
|
|
340
|
-
version: runtime.version,
|
|
341
|
-
};
|
|
342
|
-
debug('Syntro Bootstrap', 'Global SynOS object exposed');
|
|
343
|
-
}
|
|
344
|
-
// ============================================================================
|
|
345
|
-
// Ensure experiment features are loaded before config resolution
|
|
346
|
-
// gb.init({ streaming: true }) is fire-and-forget in the adapter constructor,
|
|
347
|
-
// so features may not be ready yet. Await them now.
|
|
348
|
-
// ============================================================================
|
|
349
|
-
if (experiments === null || experiments === void 0 ? void 0 : experiments.refreshFeatures) {
|
|
350
|
-
try {
|
|
351
|
-
await experiments.refreshFeatures();
|
|
352
|
-
debug('Syntro Bootstrap', 'GrowthBook features loaded');
|
|
353
|
-
}
|
|
354
|
-
catch (err) {
|
|
355
|
-
warn('Syntro Bootstrap', 'Failed to load GrowthBook features:', err);
|
|
356
|
-
}
|
|
357
|
-
}
|
|
358
|
-
// ============================================================================
|
|
359
|
-
// Create base config fetcher
|
|
360
|
-
// Priority: custom fetcher > token-specified fetcher > experiments-based
|
|
361
|
-
// ============================================================================
|
|
362
|
-
let baseFetcher;
|
|
363
|
-
if (options.fetcher) {
|
|
364
|
-
// Custom fetcher provided - use it directly (for local dev / bypassing experiments)
|
|
365
|
-
baseFetcher = options.fetcher;
|
|
366
|
-
}
|
|
367
|
-
else if (payload === null || payload === void 0 ? void 0 : payload.f) {
|
|
368
|
-
// Explicit fetcher type specified in token
|
|
369
|
-
const configFetcher = createConfigFetcher(payload.f, (_c = payload.o) !== null && _c !== void 0 ? _c : {});
|
|
370
|
-
baseFetcher = async () => {
|
|
371
|
-
var _a;
|
|
372
|
-
const result = await configFetcher.fetch();
|
|
373
|
-
return {
|
|
374
|
-
...result.config,
|
|
375
|
-
tiles: (_a = result.config.tiles) !== null && _a !== void 0 ? _a : [],
|
|
376
|
-
};
|
|
377
|
-
};
|
|
378
|
-
}
|
|
379
|
-
else if (experiments) {
|
|
380
|
-
// Default: use experiments-based fetcher (GrowthBook config or URI)
|
|
381
|
-
baseFetcher = createCanvasConfigFetcher({ experiments });
|
|
382
|
-
}
|
|
383
|
-
// ============================================================================
|
|
384
|
-
// Wrap fetcher to automatically load required apps when config is fetched
|
|
385
|
-
// ============================================================================
|
|
386
|
-
// Track which app load failures we've already warned about
|
|
387
|
-
const warnedAppFailures = new Set();
|
|
388
|
-
const appLoadingFetcher = baseFetcher
|
|
389
|
-
? async () => {
|
|
390
|
-
const config = await baseFetcher();
|
|
391
|
-
// Analyze config for required apps
|
|
392
|
-
// Cast to CanvasConfigForLoader - the loader only looks at action kinds
|
|
393
|
-
const configForLoader = config;
|
|
394
|
-
const requiredApps = appLoader.getRequiredApps(configForLoader);
|
|
395
|
-
debug('Syntro Bootstrap', 'Config fetched, required apps:', requiredApps);
|
|
396
|
-
if (requiredApps.length > 0) {
|
|
397
|
-
// Load external apps from CDN (built-in apps are already registered)
|
|
398
|
-
// This runs in parallel - we don't block on it
|
|
399
|
-
const loadPromise = appLoader.loadAppsForConfig(configForLoader).then(async (results) => {
|
|
400
|
-
// Only warn about new failures (not previously warned)
|
|
401
|
-
const newFailures = results.filter((r) => !r.success && !warnedAppFailures.has(r.appId));
|
|
402
|
-
if (newFailures.length > 0) {
|
|
403
|
-
warn('Syntro Bootstrap', 'Some apps failed to load:', newFailures);
|
|
404
|
-
newFailures.forEach((r) => warnedAppFailures.add(r.appId));
|
|
405
|
-
}
|
|
406
|
-
// Activate required apps after loading
|
|
407
|
-
for (const appId of requiredApps) {
|
|
408
|
-
if (runtime.apps.has(appId)) {
|
|
409
|
-
try {
|
|
410
|
-
await runtime.apps.activate(appId);
|
|
411
|
-
}
|
|
412
|
-
catch (err) {
|
|
413
|
-
warn('Syntro Bootstrap', `Failed to activate app: ${appId}`, err);
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
|
-
});
|
|
418
|
-
// For actions that need external apps, we need to wait
|
|
419
|
-
// But for core app actions, they can execute immediately
|
|
420
|
-
await loadPromise;
|
|
421
|
-
}
|
|
422
|
-
return config;
|
|
423
|
-
}
|
|
424
|
-
: undefined;
|
|
425
|
-
// ============================================================================
|
|
426
|
-
// Create canvas with runtime and app-loading fetcher
|
|
427
|
-
// ============================================================================
|
|
428
|
-
const canvas = await createSmartCanvas({
|
|
429
|
-
...options.canvas,
|
|
430
|
-
fetcher: appLoadingFetcher,
|
|
431
|
-
integrations: { experiments, telemetry },
|
|
432
|
-
editorUrl,
|
|
433
|
-
runtime, // Pass runtime so actions can be applied
|
|
434
|
-
});
|
|
435
|
-
return { canvas, runtime, experiments, telemetry, sessionMetrics, appLoader };
|
|
436
|
-
}
|
|
437
|
-
/**
|
|
438
|
-
* The Syntro namespace for single-token initialization.
|
|
439
|
-
*/
|
|
440
|
-
export const Syntro = {
|
|
441
|
-
init,
|
|
442
|
-
encodeToken,
|
|
443
|
-
decodeToken,
|
|
444
|
-
};
|
|
445
|
-
if (typeof window !== 'undefined') {
|
|
446
|
-
window.Syntro = Syntro;
|
|
447
|
-
}
|
|
448
|
-
//# sourceMappingURL=bootstrap.js.map
|
package/dist/bootstrap.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
package/dist/bundle-entry.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bundle entry point - exports public SDK API
|
|
3
|
-
*/
|
|
4
|
-
// Export the main SDK creation function
|
|
5
|
-
export { createSmartCanvas } from './api';
|
|
6
|
-
// Ready to export additional functionality in the future:
|
|
7
|
-
// export { applyPatchesEarly, extractPatchesFromConfig } from './earlyPatcher';
|
|
8
|
-
// export type { Patch } from './hostPatcher/core/types';
|
|
9
|
-
//# sourceMappingURL=bundle-entry.js.map
|
package/dist/bundle-entry.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bundle-entry.js","sourceRoot":"","sources":["../src/bundle-entry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wCAAwC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE1C,0DAA0D;AAC1D,gFAAgF;AAChF,yDAAyD"}
|