diff --git a/app/src/renderer/src/components/SessionImage.ce.vue b/app/src/renderer/src/components/SessionImage.ce.vue new file mode 100644 index 0000000..ea54e17 --- /dev/null +++ b/app/src/renderer/src/components/SessionImage.ce.vue @@ -0,0 +1,94 @@ + + + + + diff --git a/app/src/renderer/src/main.js b/app/src/renderer/src/main.js index 51b05a1..a564358 100644 --- a/app/src/renderer/src/main.js +++ b/app/src/renderer/src/main.js @@ -6,6 +6,7 @@ import router from './router.js'; import { commitInitialData, fetchInitialData } from './data.js'; import { noteSessionUpdated, sessionLiveState } from './session-live.mjs'; import { createGlobalDataRefreshCoordinator } from './session-global-refresh.mjs'; +import { registerSessionImageElement } from './session-image-element.js'; // Import shared renderer CSS globally import '../styles/base.css'; @@ -14,6 +15,8 @@ import '../styles/toolbar.css'; import '../styles/list.css'; import '../styles/detail.css'; +registerSessionImageElement(); + const app = createApp(App); app.use(router); diff --git a/app/src/renderer/src/session-image-element.js b/app/src/renderer/src/session-image-element.js new file mode 100644 index 0000000..f365952 --- /dev/null +++ b/app/src/renderer/src/session-image-element.js @@ -0,0 +1,9 @@ +import { defineCustomElement } from 'vue'; +import SessionImage from './components/SessionImage.ce.vue'; + +export const SESSION_IMAGE_TAG = 'obelisk-session-image'; + +export function registerSessionImageElement() { + if (customElements.get(SESSION_IMAGE_TAG)) return; + customElements.define(SESSION_IMAGE_TAG, defineCustomElement(SessionImage)); +}