diff --git a/.vite/lib/content-scripts.js b/.vite/lib/content-scripts.js index a59da49..35b12a6 100644 --- a/.vite/lib/content-scripts.js +++ b/.vite/lib/content-scripts.js @@ -51,6 +51,7 @@ function wrapScriptIntoIIFE() { function makeAliases(rootDir) { return { "$config": path.resolve(rootDir, 'src/config'), + "$content": path.resolve(rootDir, 'src/content'), "$lib": path.resolve(rootDir, 'src/lib'), "$entities": path.resolve(rootDir, 'src/lib/extension/entities'), "$styles": path.resolve(rootDir, 'src/styles'), diff --git a/src/lib/components/FullscreenViewer.ts b/src/content/components/FullscreenViewer.ts similarity index 97% rename from src/lib/components/FullscreenViewer.ts rename to src/content/components/FullscreenViewer.ts index 7e78b92..bf2ed23 100644 --- a/src/lib/components/FullscreenViewer.ts +++ b/src/content/components/FullscreenViewer.ts @@ -1,7 +1,7 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; +import { BaseComponent } from "$content/components/base/BaseComponent"; import MiscSettings, { type FullscreenViewerSize } from "$lib/extension/settings/MiscSettings"; -import { emit, on } from "$lib/components/events/comms"; -import { EVENT_SIZE_LOADED } from "$lib/components/events/fullscreen-viewer-events"; +import { emit, on } from "$content/components/events/comms"; +import { EVENT_SIZE_LOADED } from "$content/components/events/fullscreen-viewer-events"; export class FullscreenViewer extends BaseComponent { #videoElement: HTMLVideoElement = document.createElement('video'); diff --git a/src/lib/components/ImageShowFullscreenButton.ts b/src/content/components/ImageShowFullscreenButton.ts similarity index 89% rename from src/lib/components/ImageShowFullscreenButton.ts rename to src/content/components/ImageShowFullscreenButton.ts index f2c0993..b2dc612 100644 --- a/src/lib/components/ImageShowFullscreenButton.ts +++ b/src/content/components/ImageShowFullscreenButton.ts @@ -1,8 +1,8 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; import MiscSettings from "$lib/extension/settings/MiscSettings"; -import { FullscreenViewer } from "$lib/components/FullscreenViewer"; -import type { MediaBoxTools } from "$lib/components/MediaBoxTools"; +import { FullscreenViewer } from "$content/components/FullscreenViewer"; +import type { MediaBoxTools } from "$content/components/MediaBoxTools"; export class ImageShowFullscreenButton extends BaseComponent { #mediaBoxTools: MediaBoxTools | null = null; diff --git a/src/lib/components/MaintenancePopup.ts b/src/content/components/MaintenancePopup.ts similarity index 97% rename from src/lib/components/MaintenancePopup.ts rename to src/content/components/MaintenancePopup.ts index 8cac1c6..acdeacb 100644 --- a/src/lib/components/MaintenancePopup.ts +++ b/src/content/components/MaintenancePopup.ts @@ -1,16 +1,16 @@ import MaintenanceSettings from "$lib/extension/settings/MaintenanceSettings"; import MaintenanceProfile from "$entities/MaintenanceProfile"; -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; import ScrapedAPI from "$lib/booru/scraped/ScrapedAPI"; import { tagsBlacklist } from "$config/tags"; -import { emitterAt } from "$lib/components/events/comms"; +import { emitterAt } from "$content/components/events/comms"; import { EVENT_ACTIVE_PROFILE_CHANGED, EVENT_MAINTENANCE_STATE_CHANGED, EVENT_TAGS_UPDATED -} from "$lib/components/events/maintenance-popup-events"; -import type { MediaBoxTools } from "$lib/components/MediaBoxTools"; +} from "$content/components/events/maintenance-popup-events"; +import type { MediaBoxTools } from "$content/components/MediaBoxTools"; class BlackListedTagsEncounteredError extends Error { constructor(tagName: string) { diff --git a/src/lib/components/MaintenanceStatusIcon.ts b/src/content/components/MaintenanceStatusIcon.ts similarity index 80% rename from src/lib/components/MaintenanceStatusIcon.ts rename to src/content/components/MaintenanceStatusIcon.ts index d28e9f0..9c67830 100644 --- a/src/lib/components/MaintenanceStatusIcon.ts +++ b/src/content/components/MaintenanceStatusIcon.ts @@ -1,8 +1,8 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; -import { on } from "$lib/components/events/comms"; -import { EVENT_MAINTENANCE_STATE_CHANGED } from "$lib/components/events/maintenance-popup-events"; -import type { MediaBoxTools } from "$lib/components/MediaBoxTools"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; +import { on } from "$content/components/events/comms"; +import { EVENT_MAINTENANCE_STATE_CHANGED } from "$content/components/events/maintenance-popup-events"; +import type { MediaBoxTools } from "$content/components/MediaBoxTools"; export class MaintenanceStatusIcon extends BaseComponent { #mediaBoxTools: MediaBoxTools | null = null; diff --git a/src/lib/components/MediaBoxTools.ts b/src/content/components/MediaBoxTools.ts similarity index 81% rename from src/lib/components/MediaBoxTools.ts rename to src/content/components/MediaBoxTools.ts index 4cbbf6b..662dfe6 100644 --- a/src/lib/components/MediaBoxTools.ts +++ b/src/content/components/MediaBoxTools.ts @@ -1,9 +1,9 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; -import { MaintenancePopup } from "$lib/components/MaintenancePopup"; -import { on } from "$lib/components/events/comms"; -import { EVENT_ACTIVE_PROFILE_CHANGED } from "$lib/components/events/maintenance-popup-events"; -import type { MediaBoxWrapper } from "$lib/components/MediaBoxWrapper"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; +import { MaintenancePopup } from "$content/components/MaintenancePopup"; +import { on } from "$content/components/events/comms"; +import { EVENT_ACTIVE_PROFILE_CHANGED } from "$content/components/events/maintenance-popup-events"; +import type { MediaBoxWrapper } from "$content/components/MediaBoxWrapper"; import type MaintenanceProfile from "$entities/MaintenanceProfile"; export class MediaBoxTools extends BaseComponent { diff --git a/src/lib/components/MediaBoxWrapper.ts b/src/content/components/MediaBoxWrapper.ts similarity index 91% rename from src/lib/components/MediaBoxWrapper.ts rename to src/content/components/MediaBoxWrapper.ts index cc8ac2a..a694f70 100644 --- a/src/lib/components/MediaBoxWrapper.ts +++ b/src/content/components/MediaBoxWrapper.ts @@ -1,8 +1,8 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; import { buildTagsAndAliasesMap } from "$lib/booru/tag-utils"; -import { on } from "$lib/components/events/comms"; -import { EVENT_TAGS_UPDATED } from "$lib/components/events/maintenance-popup-events"; +import { on } from "$content/components/events/comms"; +import { EVENT_TAGS_UPDATED } from "$content/components/events/maintenance-popup-events"; export class MediaBoxWrapper extends BaseComponent { #thumbnailContainer: HTMLElement | null = null; diff --git a/src/lib/components/TagDropdownWrapper.ts b/src/content/components/TagDropdownWrapper.ts similarity index 95% rename from src/lib/components/TagDropdownWrapper.ts rename to src/content/components/TagDropdownWrapper.ts index 6f414c9..f970792 100644 --- a/src/lib/components/TagDropdownWrapper.ts +++ b/src/content/components/TagDropdownWrapper.ts @@ -1,11 +1,11 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; +import { BaseComponent } from "$content/components/base/BaseComponent"; import MaintenanceProfile from "$entities/MaintenanceProfile"; import MaintenanceSettings from "$lib/extension/settings/MaintenanceSettings"; -import { getComponent } from "$lib/components/base/component-utils"; +import { getComponent } from "$content/components/base/component-utils"; import CustomCategoriesResolver from "$lib/extension/CustomCategoriesResolver"; -import { on } from "$lib/components/events/comms"; -import { EVENT_FORM_EDITOR_UPDATED } from "$lib/components/events/tags-form-events"; -import { EVENT_TAG_GROUP_RESOLVED } from "$lib/components/events/tag-dropdown-events"; +import { on } from "$content/components/events/comms"; +import { EVENT_FORM_EDITOR_UPDATED } from "$content/components/events/tags-form-events"; +import { EVENT_TAG_GROUP_RESOLVED } from "$content/components/events/tag-dropdown-events"; import type TagGroup from "$entities/TagGroup"; const categoriesResolver = new CustomCategoriesResolver(); diff --git a/src/lib/components/TagsForm.ts b/src/content/components/TagsForm.ts similarity index 90% rename from src/lib/components/TagsForm.ts rename to src/content/components/TagsForm.ts index 567e923..ab79c8c 100644 --- a/src/lib/components/TagsForm.ts +++ b/src/content/components/TagsForm.ts @@ -1,8 +1,8 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; -import { emit, on, type UnsubscribeFunction } from "$lib/components/events/comms"; -import { EVENT_FETCH_COMPLETE } from "$lib/components/events/booru-events"; -import { EVENT_FORM_EDITOR_UPDATED } from "$lib/components/events/tags-form-events"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; +import { emit, on, type UnsubscribeFunction } from "$content/components/events/comms"; +import { EVENT_FETCH_COMPLETE } from "$content/components/events/booru-events"; +import { EVENT_FORM_EDITOR_UPDATED } from "$content/components/events/tags-form-events"; export class TagsForm extends BaseComponent { protected init() { diff --git a/src/lib/components/TagsListBlock.ts b/src/content/components/TagsListBlock.ts similarity index 94% rename from src/lib/components/TagsListBlock.ts rename to src/content/components/TagsListBlock.ts index d63edd5..3a5bf5e 100644 --- a/src/lib/components/TagsListBlock.ts +++ b/src/content/components/TagsListBlock.ts @@ -1,10 +1,10 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; +import { BaseComponent } from "$content/components/base/BaseComponent"; import type TagGroup from "$entities/TagGroup"; -import type { TagDropdownWrapper } from "$lib/components/TagDropdownWrapper"; -import { on } from "$lib/components/events/comms"; -import { EVENT_FORM_EDITOR_UPDATED } from "$lib/components/events/tags-form-events"; -import { getComponent } from "$lib/components/base/component-utils"; -import { EVENT_TAG_GROUP_RESOLVED } from "$lib/components/events/tag-dropdown-events"; +import type { TagDropdownWrapper } from "$content/components/TagDropdownWrapper"; +import { on } from "$content/components/events/comms"; +import { EVENT_FORM_EDITOR_UPDATED } from "$content/components/events/tags-form-events"; +import { getComponent } from "$content/components/base/component-utils"; +import { EVENT_TAG_GROUP_RESOLVED } from "$content/components/events/tag-dropdown-events"; import TagSettings from "$lib/extension/settings/TagSettings"; export class TagsListBlock extends BaseComponent { diff --git a/src/lib/components/base/BaseComponent.ts b/src/content/components/base/BaseComponent.ts similarity index 97% rename from src/lib/components/base/BaseComponent.ts rename to src/content/components/base/BaseComponent.ts index fd3ecdd..30b95b3 100644 --- a/src/lib/components/base/BaseComponent.ts +++ b/src/content/components/base/BaseComponent.ts @@ -1,4 +1,4 @@ -import { bindComponent } from "$lib/components/base/component-utils"; +import { bindComponent } from "$content/components/base/component-utils"; type ComponentEventListener = (this: HTMLElement, event: HTMLElementEventMap[EventName]) => void; diff --git a/src/lib/components/base/component-utils.ts b/src/content/components/base/component-utils.ts similarity index 91% rename from src/lib/components/base/component-utils.ts rename to src/content/components/base/component-utils.ts index 49442ce..441add6 100644 --- a/src/lib/components/base/component-utils.ts +++ b/src/content/components/base/component-utils.ts @@ -1,4 +1,4 @@ -import type { BaseComponent } from "$lib/components/base/BaseComponent"; +import type { BaseComponent } from "$content/components/base/BaseComponent"; const instanceSymbol = Symbol.for('instance'); diff --git a/src/lib/components/events/booru-events.ts b/src/content/components/events/booru-events.ts similarity index 100% rename from src/lib/components/events/booru-events.ts rename to src/content/components/events/booru-events.ts diff --git a/src/lib/components/events/comms.ts b/src/content/components/events/comms.ts similarity index 82% rename from src/lib/components/events/comms.ts rename to src/content/components/events/comms.ts index 7682ee7..c31bae0 100644 --- a/src/lib/components/events/comms.ts +++ b/src/content/components/events/comms.ts @@ -1,9 +1,9 @@ -import type { MaintenancePopupEventsMap } from "$lib/components/events/maintenance-popup-events"; -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import type { FullscreenViewerEventsMap } from "$lib/components/events/fullscreen-viewer-events"; -import type { BooruEventsMap } from "$lib/components/events/booru-events"; -import type { TagsFormEventsMap } from "$lib/components/events/tags-form-events"; -import type { TagDropdownEvents } from "$lib/components/events/tag-dropdown-events"; +import type { MaintenancePopupEventsMap } from "$content/components/events/maintenance-popup-events"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import type { FullscreenViewerEventsMap } from "$content/components/events/fullscreen-viewer-events"; +import type { BooruEventsMap } from "$content/components/events/booru-events"; +import type { TagsFormEventsMap } from "$content/components/events/tags-form-events"; +import type { TagDropdownEvents } from "$content/components/events/tag-dropdown-events"; type EventsMapping = MaintenancePopupEventsMap diff --git a/src/lib/components/events/fullscreen-viewer-events.ts b/src/content/components/events/fullscreen-viewer-events.ts similarity index 100% rename from src/lib/components/events/fullscreen-viewer-events.ts rename to src/content/components/events/fullscreen-viewer-events.ts diff --git a/src/lib/components/events/maintenance-popup-events.ts b/src/content/components/events/maintenance-popup-events.ts similarity index 100% rename from src/lib/components/events/maintenance-popup-events.ts rename to src/content/components/events/maintenance-popup-events.ts diff --git a/src/lib/components/events/tag-dropdown-events.ts b/src/content/components/events/tag-dropdown-events.ts similarity index 100% rename from src/lib/components/events/tag-dropdown-events.ts rename to src/content/components/events/tag-dropdown-events.ts diff --git a/src/lib/components/events/tags-form-events.ts b/src/content/components/events/tags-form-events.ts similarity index 100% rename from src/lib/components/events/tags-form-events.ts rename to src/content/components/events/tags-form-events.ts diff --git a/src/lib/components/listing/ImageListContainer.ts b/src/content/components/listing/ImageListContainer.ts similarity index 76% rename from src/lib/components/listing/ImageListContainer.ts rename to src/content/components/listing/ImageListContainer.ts index eb11ac1..3f07bdc 100644 --- a/src/lib/components/listing/ImageListContainer.ts +++ b/src/content/components/listing/ImageListContainer.ts @@ -1,5 +1,5 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { ImageListInfo } from "$lib/components/listing/ImageListInfo"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { ImageListInfo } from "$content/components/listing/ImageListInfo"; export class ImageListContainer extends BaseComponent { #info: ImageListInfo | null = null; diff --git a/src/lib/components/listing/ImageListInfo.ts b/src/content/components/listing/ImageListInfo.ts similarity index 97% rename from src/lib/components/listing/ImageListInfo.ts rename to src/content/components/listing/ImageListInfo.ts index d75114d..44fbd21 100644 --- a/src/lib/components/listing/ImageListInfo.ts +++ b/src/content/components/listing/ImageListInfo.ts @@ -1,4 +1,4 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; +import { BaseComponent } from "$content/components/base/BaseComponent"; export class ImageListInfo extends BaseComponent { #tagElement: HTMLElement | null = null; diff --git a/src/content/listing.ts b/src/content/listing.ts index 13733a6..5f20635 100644 --- a/src/content/listing.ts +++ b/src/content/listing.ts @@ -1,9 +1,9 @@ -import { createMaintenancePopup } from "$lib/components/MaintenancePopup"; -import { createMediaBoxTools } from "$lib/components/MediaBoxTools"; -import { calculateMediaBoxesPositions, initializeMediaBox } from "$lib/components/MediaBoxWrapper"; -import { createMaintenanceStatusIcon } from "$lib/components/MaintenanceStatusIcon"; -import { createImageShowFullscreenButton } from "$lib/components/ImageShowFullscreenButton"; -import { initializeImageListContainer } from "$lib/components/listing/ImageListContainer"; +import { createMaintenancePopup } from "$content/components/MaintenancePopup"; +import { createMediaBoxTools } from "$content/components/MediaBoxTools"; +import { calculateMediaBoxesPositions, initializeMediaBox } from "$content/components/MediaBoxWrapper"; +import { createMaintenanceStatusIcon } from "$content/components/MaintenanceStatusIcon"; +import { createImageShowFullscreenButton } from "$content/components/ImageShowFullscreenButton"; +import { initializeImageListContainer } from "$content/components/listing/ImageListContainer"; const mediaBoxes = document.querySelectorAll('.media-box'); const imageListContainer = document.querySelector('#imagelist-container'); diff --git a/src/content/tags-editor.ts b/src/content/tags-editor.ts index 6ab8292..e12559d 100644 --- a/src/content/tags-editor.ts +++ b/src/content/tags-editor.ts @@ -1,5 +1,5 @@ -import { TagsForm } from "$lib/components/TagsForm"; -import { initializeAllTagsLists, watchForUpdatedTagLists } from "$lib/components/TagsListBlock"; +import { TagsForm } from "$content/components/TagsForm"; +import { initializeAllTagsLists, watchForUpdatedTagLists } from "$content/components/TagsListBlock"; initializeAllTagsLists(); watchForUpdatedTagLists(); diff --git a/src/content/tags.ts b/src/content/tags.ts index a4fa996..b012167 100644 --- a/src/content/tags.ts +++ b/src/content/tags.ts @@ -1,4 +1,4 @@ -import { watchTagDropdownsInTagsEditor, wrapTagDropdown } from "$lib/components/TagDropdownWrapper"; +import { watchTagDropdownsInTagsEditor, wrapTagDropdown } from "$content/components/TagDropdownWrapper"; for (let tagDropdownElement of document.querySelectorAll('.tag.dropdown')) { wrapTagDropdown(tagDropdownElement); diff --git a/src/lib/extension/CustomCategoriesResolver.ts b/src/lib/extension/CustomCategoriesResolver.ts index 11e9935..7a8f996 100644 --- a/src/lib/extension/CustomCategoriesResolver.ts +++ b/src/lib/extension/CustomCategoriesResolver.ts @@ -1,8 +1,8 @@ -import type { TagDropdownWrapper } from "$lib/components/TagDropdownWrapper"; +import type { TagDropdownWrapper } from "$content/components/TagDropdownWrapper"; import TagGroup from "$entities/TagGroup"; import { escapeRegExp } from "$lib/utils"; -import { emit } from "$lib/components/events/comms"; -import { EVENT_TAG_GROUP_RESOLVED } from "$lib/components/events/tag-dropdown-events"; +import { emit } from "$content/components/events/comms"; +import { EVENT_TAG_GROUP_RESOLVED } from "$content/components/events/tag-dropdown-events"; export default class CustomCategoriesResolver { #exactGroupMatches = new Map(); diff --git a/svelte.config.js b/svelte.config.js index 1c9eb41..e5821c9 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -15,6 +15,7 @@ const config = { }, alias: { "$config": "./src/config", + "$content": "./src/content", "$components": "./src/components", "$styles": "./src/styles", "$stores": "./src/stores", diff --git a/tests/lib/components/base/BaseComponent.spec.ts b/tests/content/components/base/BaseComponent.spec.ts similarity index 95% rename from tests/lib/components/base/BaseComponent.spec.ts rename to tests/content/components/base/BaseComponent.spec.ts index 9a80330..0a0ac4d 100644 --- a/tests/lib/components/base/BaseComponent.spec.ts +++ b/tests/content/components/base/BaseComponent.spec.ts @@ -1,5 +1,5 @@ -import { BaseComponent } from "$lib/components/base/BaseComponent"; -import { getComponent } from "$lib/components/base/component-utils"; +import { BaseComponent } from "$content/components/base/BaseComponent"; +import { getComponent } from "$content/components/base/component-utils"; import { randomString } from "$tests/utils"; describe('BaseComponent', () => {