mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-15 15:52:21 +00:00
refactor(fires): separate source, rendering and interaction components
This commit is contained in:
1 parent
e99cc8cf68
commit
6a9f13eab8
28 files changed
+2540
-1731
No files matched your search
@@ -0,0 +1,42 @@
|
||||
import { createModel } from './model.js';
|
||||
import { createIngestion } from './ingestion.js';
|
||||
import { createRendering } from './rendering.js';
|
||||
import { createCards } from './cards.js';
|
||||
import { createSelection } from './selection.js';
|
||||
import { createViewport } from './viewport.js';
|
||||
import { createLifecycle } from './lifecycle.js';
|
||||
import { createQueries } from './queries.js';
|
||||
import { createFirmsState } from './state.js';
|
||||
|
||||
export function createFirmsHelpers({ services }) {
|
||||
const layerState = createFirmsState({ services, config: {} });
|
||||
return createModel({ layerState, services, config: {}, components: {} });
|
||||
}
|
||||
|
||||
/** Compose one fire layer with explicit source and scene operations. */
|
||||
export function createFirmsHeatmapLayer({ services, feed, ...config }) {
|
||||
if (typeof feed?.getSnapshot !== 'function')
|
||||
throw new TypeError('Fires require a snapshot source');
|
||||
const layerState = createFirmsState({ services, config });
|
||||
const components = {};
|
||||
const context = { layerState, services, config, components, feed };
|
||||
components.model = createModel(context);
|
||||
components.ingestion = createIngestion(context);
|
||||
components.rendering = createRendering(context);
|
||||
components.cards = createCards(context);
|
||||
components.selection = createSelection(context);
|
||||
components.viewport = createViewport(context);
|
||||
components.lifecycle = createLifecycle(context);
|
||||
components.queries = createQueries(context);
|
||||
return Object.assign(
|
||||
{},
|
||||
components.queries.methods,
|
||||
components.lifecycle.methods,
|
||||
components.ingestion.methods,
|
||||
);
|
||||
}
|
||||
|
||||
export { createFirmsSource } from './source.js';
|
||||
export { createFireAnchors, FIRE_ANCHOR_LIFT_M } from './anchors.js';
|
||||
export * from '../../data/firmsAdapt.js';
|
||||
export * from '../../data/firmsLabels.js';
|
||||
Reference in new issue
Block a user