From 18737c7c45f9ce112d9c8a7764023afbb5c1fe87 Mon Sep 17 00:00:00 2001 From: Chris Date: Fri, 2 Jan 2026 09:26:11 -0800 Subject: [PATCH 1/3] refactor(initiator): refactor initiator code --- .eslintignore | 3 ++- packages/snap-preact-demo/snap/src/modern.ts | 2 +- packages/snap-preact-demo/snap/src/universal.ts | 2 +- packages/snap-preact-demo/snap/webpack.modern.js | 2 +- packages/snap-preact-demo/templates/src/modern.ts | 4 ++++ packages/snap-preact-demo/templates/src/universal.ts | 7 +++++++ packages/snap-preact-demo/templates/webpack.modern.js | 2 +- packages/snap-preact/src/Snap.tsx | 4 ++-- packages/snap-tracker/src/Tracker.ts | 2 +- 9 files changed, 20 insertions(+), 8 deletions(-) create mode 100644 packages/snap-preact-demo/templates/src/modern.ts diff --git a/.eslintignore b/.eslintignore index 582a34f44b..197ebf4de8 100644 --- a/.eslintignore +++ b/.eslintignore @@ -5,4 +5,5 @@ **/mocks/** **/__tests__/** **/__mocks__/** -**/jest.config.js \ No newline at end of file +**/jest.config.js +**/webpack.modern.js \ No newline at end of file diff --git a/packages/snap-preact-demo/snap/src/modern.ts b/packages/snap-preact-demo/snap/src/modern.ts index d417b7af14..d74d0a8169 100644 --- a/packages/snap-preact-demo/snap/src/modern.ts +++ b/packages/snap-preact-demo/snap/src/modern.ts @@ -1,4 +1,4 @@ window.searchspring = window.searchspring || {}; -window.searchspring.initiator = 'snap-managed'; +window.searchspring.managed = true; import('./index'); diff --git a/packages/snap-preact-demo/snap/src/universal.ts b/packages/snap-preact-demo/snap/src/universal.ts index 1111b6e7fc..b29e10a2d1 100644 --- a/packages/snap-preact-demo/snap/src/universal.ts +++ b/packages/snap-preact-demo/snap/src/universal.ts @@ -17,7 +17,7 @@ Promise.all(promises).then(() => { // @ts-ignore - types not important window.searchspring.build = 'universal'; // @ts-ignore - types not important - window.searchspring.initiator = 'snap-managed'; + window.searchspring.managed = true; import('./index'); }); diff --git a/packages/snap-preact-demo/snap/webpack.modern.js b/packages/snap-preact-demo/snap/webpack.modern.js index 1e2e7d00ab..1ca78a6631 100644 --- a/packages/snap-preact-demo/snap/webpack.modern.js +++ b/packages/snap-preact-demo/snap/webpack.modern.js @@ -6,7 +6,7 @@ const branchName = childProcess.execSync('git rev-parse --abbrev-ref HEAD').toSt module.exports = merge(common, { mode: 'production', - entry: './snap/src/index.ts', + entry: './snap/src/modern.ts', output: { path: path.resolve(__dirname, 'dist'), filename: 'bundle.js', diff --git a/packages/snap-preact-demo/templates/src/modern.ts b/packages/snap-preact-demo/templates/src/modern.ts new file mode 100644 index 0000000000..d74d0a8169 --- /dev/null +++ b/packages/snap-preact-demo/templates/src/modern.ts @@ -0,0 +1,4 @@ +window.searchspring = window.searchspring || {}; +window.searchspring.managed = true; + +import('./index'); diff --git a/packages/snap-preact-demo/templates/src/universal.ts b/packages/snap-preact-demo/templates/src/universal.ts index a6aca50571..b29e10a2d1 100644 --- a/packages/snap-preact-demo/templates/src/universal.ts +++ b/packages/snap-preact-demo/templates/src/universal.ts @@ -12,5 +12,12 @@ if (!('Symbol' in window) || !('flatMap' in Array.prototype) || !('includes' in } promises.push(polyfills); Promise.all(promises).then(() => { + // @ts-ignore - types not important + window.searchspring = window.searchspring || {}; + // @ts-ignore - types not important + window.searchspring.build = 'universal'; + // @ts-ignore - types not important + window.searchspring.managed = true; + import('./index'); }); diff --git a/packages/snap-preact-demo/templates/webpack.modern.js b/packages/snap-preact-demo/templates/webpack.modern.js index d78e3b22cf..e48d6a41b7 100644 --- a/packages/snap-preact-demo/templates/webpack.modern.js +++ b/packages/snap-preact-demo/templates/webpack.modern.js @@ -6,7 +6,7 @@ const branchName = childProcess.execSync('git rev-parse --abbrev-ref HEAD').toSt module.exports = merge(common, { mode: 'production', - entry: './templates/src/index.ts', + entry: './templates/src/modern.ts', output: { path: path.resolve(__dirname, 'dist'), filename: 'bundle.js', diff --git a/packages/snap-preact/src/Snap.tsx b/packages/snap-preact/src/Snap.tsx index c9030043aa..be560670d7 100644 --- a/packages/snap-preact/src/Snap.tsx +++ b/packages/snap-preact/src/Snap.tsx @@ -451,8 +451,8 @@ export class Snap { }); } - const initiator = window?.searchspring?.initiator || 'self-snap'; - const trackerConfig = deepmerge(this.config.tracker?.config || {}, { framework: `${initiator}/preact`, mode: this.mode }); + const initiatorPrefix = window?.searchspring?.managed ? `managed/` : ''; + const trackerConfig = deepmerge(this.config.tracker?.config || {}, { framework: `${initiatorPrefix}snap/preact`, mode: this.mode }); this.tracker = services?.tracker || new Tracker(trackerGlobals, trackerConfig); // log version diff --git a/packages/snap-tracker/src/Tracker.ts b/packages/snap-tracker/src/Tracker.ts index bcf1e4da90..209c42d570 100644 --- a/packages/snap-tracker/src/Tracker.ts +++ b/packages/snap-tracker/src/Tracker.ts @@ -32,7 +32,7 @@ export class Tracker extends Beacon { constructor(globals: TrackerGlobals, config?: TrackerConfig & BeaconConfig) { config = deepmerge(defaultConfig, config || {}); - config.initiator = `searchspring/${config.framework}/${version}`; + config.initiator = `athos/${config.framework}/${version}`; super(globals, config); if (typeof globals != 'object' || typeof globals.siteId != 'string') { From b8046d32eb7e9f6d3f64619a56ec71a5043f070e Mon Sep 17 00:00:00 2001 From: Chris Date: Wed, 7 Jan 2026 15:28:26 -0800 Subject: [PATCH 2/3] refactor(lintignore): remove webpack line --- .eslintignore | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.eslintignore b/.eslintignore index 197ebf4de8..582a34f44b 100644 --- a/.eslintignore +++ b/.eslintignore @@ -5,5 +5,4 @@ **/mocks/** **/__tests__/** **/__mocks__/** -**/jest.config.js -**/webpack.modern.js \ No newline at end of file +**/jest.config.js \ No newline at end of file From 3edae3fc4c4e100847d135266e2a19d1f75dba85 Mon Sep 17 00:00:00 2001 From: kevin Date: Thu, 8 Jan 2026 13:22:03 -0700 Subject: [PATCH 3/3] refactor(preact-demo): removing ts-ignores from universal build index files --- packages/snap-preact-demo/snap/src/universal.ts | 11 +++-------- packages/snap-preact-demo/templates/src/universal.ts | 11 +++-------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/packages/snap-preact-demo/snap/src/universal.ts b/packages/snap-preact-demo/snap/src/universal.ts index b29e10a2d1..f42a6051d5 100644 --- a/packages/snap-preact-demo/snap/src/universal.ts +++ b/packages/snap-preact-demo/snap/src/universal.ts @@ -3,21 +3,16 @@ import { polyfills } from '@searchspring/snap-preact'; const promises = []; if (!('fetch' in window)) { - // @ts-ignore - types not important - promises.push(import('whatwg-fetch') as any); + promises.push(import('whatwg-fetch')); } if (!('Symbol' in window) || !('flatMap' in Array.prototype) || !('includes' in Array.prototype)) { - // @ts-ignore - types not important - promises.push(import('core-js/stable') as any); + promises.push(import('core-js/stable')); } promises.push(polyfills); Promise.all(promises).then(() => { - // @ts-ignore - types not important window.searchspring = window.searchspring || {}; - // @ts-ignore - types not important - window.searchspring.build = 'universal'; - // @ts-ignore - types not important window.searchspring.managed = true; + window.searchspring.build = 'universal'; import('./index'); }); diff --git a/packages/snap-preact-demo/templates/src/universal.ts b/packages/snap-preact-demo/templates/src/universal.ts index b29e10a2d1..f42a6051d5 100644 --- a/packages/snap-preact-demo/templates/src/universal.ts +++ b/packages/snap-preact-demo/templates/src/universal.ts @@ -3,21 +3,16 @@ import { polyfills } from '@searchspring/snap-preact'; const promises = []; if (!('fetch' in window)) { - // @ts-ignore - types not important - promises.push(import('whatwg-fetch') as any); + promises.push(import('whatwg-fetch')); } if (!('Symbol' in window) || !('flatMap' in Array.prototype) || !('includes' in Array.prototype)) { - // @ts-ignore - types not important - promises.push(import('core-js/stable') as any); + promises.push(import('core-js/stable')); } promises.push(polyfills); Promise.all(promises).then(() => { - // @ts-ignore - types not important window.searchspring = window.searchspring || {}; - // @ts-ignore - types not important - window.searchspring.build = 'universal'; - // @ts-ignore - types not important window.searchspring.managed = true; + window.searchspring.build = 'universal'; import('./index'); });