* ci: migrate bundled artifacts update from pull request to direct commit
* ci: update lint workflow to include code formatting and auto-commit
* chore: update .prettierignore to include yaml files
- Remove the exclusion of `*.yaml` and `*.yml` files from being formatted by Prettier in the `.prettierignore` file.
* ci: update lint workflow conditions
* ci: format code
---------
Co-authored-by: Sped0n <Sped0n@users.noreply.github.com>
* refactor: refactor navigateVector logic and remove unused functions
* refactor: refactor HTML structure and styling in single.html
- Modify the `.info` class to `article` in `_article.scss`
- Remove the `nav.html` partial in `single.html`
- Change the class name from `info` to `article` in `single.html`
- Add the `nav.html` partial in `single.html`
* refactor: update handling of 404 page
- Now hugo will set unknown page title as "404"
- Add condition to return an empty image array if the document title starts with "404"
* docs: update documentation
* feat: refactor file structure and imports in mobile and desktop components
- Removed the import of `scrollable` from `assets/ts/mobile/scroll.ts`
- Renamed `assets/ts/mobile/mounted.ts` to `assets/ts/mobile/state.ts`
- Changed the import of `active` from `./stage` to `./state` in `assets/ts/desktop/customCursor.ts`
- Changed the import of `active` from `../state` to `../globalState` in `assets/ts/desktop/stage.ts`
- Changed the import of `active` from `./stage` to `./state` in `assets/ts/desktop/stageNav.ts`
- Renamed `assets/ts/state.ts` to `assets/ts/globalState.ts`
- Created a new file `assets/ts/desktop/state.ts`
- Added the interface `HistoryItem` to `assets/ts/desktop/state.ts`
- Added the variables `cordHist`, `isOpen`, `active`, and `isLoading` to `assets/ts/desktop/state.ts`
- Deleted the function `loader` from `assets/ts/desktop/stage.ts` and replaced it with `setLoaderForImage`
- Deleted the import of `./stage` from `assets/ts/desktop/stageNav.ts`
- Added the import of `minimizeImage` from `./stage` in `assets/ts/desktop/stageNav.ts`
- Deleted the import of `./mounted` from `assets/ts/mobile/collection.ts`
- Changed the import of `mounted` from `./mounted` to `./state` in `
* refactor: refactor the `onVisible` function to improve performance
- Modify the type of the `onVisible` function parameter `T` to extend `HTMLElement`
- Change the `entries.forEach` loop in the `onVisible` function to `entries.every`
* feat: add new function for detecting opacity changes in element
- Add a new function `onOpacityOne` in `assets/ts/utils.ts`
- The function uses a `MutationObserver` to check for opacity changes on an element
- When the element's opacity reaches `1`, the provided callback function is called
- The `MutationObserver` is disconnected after the callback is executed
* refactor: refactor function names and parameters in intersection and mutation observers
- Change the function name `onVisible` to `onIntersection`
- Modify the `callback` parameter in the `onIntersection` function to accept `IntersectionObserverEntry[]` and `IntersectionObserver` parameters
- Remove the code block that checks for intersection ratio and immediately calls the `callback` function in the `onIntersection` function
- Modify the function name `onOpacityOne` to `onMutation`
- Modify the `callback` parameter in the `onMutation` function to accept `MutationRecord[]` and `MutationObserver` parameters
- Add a default value for the `observeOptions` parameter in the `onMutation` function
* refactor: refine preload logic on both mobile and desktop
* refactor: refactor import statements and add new files
- The import statement for `Watchable` in `assets/ts/globalState.ts` has been changed from `../utils` to `../globalUtils`
- The import statement for `Watchable` in `assets/ts/desktop/state.ts` has been changed from `../utils` to `../globalUtils`
- The import statement for `decrement` and `increment` in `assets/ts/desktop/stageNav.ts` has been changed from `../utils` to `../globalUtils`
- A new file `utils.ts` has been added in the `assets/ts/desktop` directory
- The import statements for `getRandom`, `onIntersection`, and `type MobileImage` in `assets/ts/mobile/collection.ts` have been changed from `../utils` to `./utils`
- The `imgs` array in `assets/ts/mobile/collection.ts` has been changed from an array of `HTMLImageElement` to an array of `MobileImage`
- The import statements for `expand`, `loadGsap`, `loadSwiper`, and `removeDuplicates` in `assets/ts/mobile/gallery.ts` have been changed from `../utils` to `../globalUtils`
- The import statement for `type MobileImage` in `assets/ts/mobile/gallery.ts` has been changed from `./utils` to `../mobile/utils`
- The `galleryLoadImages` function in `assets/ts/mobile/gallery.ts` has been removed
- A new file `utils.ts`
* refactor: refactor swiper import and functions in mobile and global utils
* refactor: refactor navigation and image loading logic in desktop and mobile
* refactor: remove print function and optimize removeDuplicates return
* refactor: update text variable assignments and attributes
* refactor: update variable types in galleryImages and collectionImages in mobile/gallery.ts
* refactor: refactor variable types for consistency with naming conventions
* refactor: update animation durations and types in gallery functions
* refactor: refactor image loading logic and add console logs
* refactor: refactor sass hierarchy
* refactor: remove console logs in multiple files
* refactor: output article element when needed
* refactor: refactor container styles and media queries
- Add the `$tablet` variable to `_container.scss`
- Add a media query to `_container.scss`
- Import `_container.scss` in `critical.scss`
- Remove the import of `_container.scss` in `style.scss`
* feat: add new CSS rule for hiding elements
- Add a new CSS rule for the class "hide" with a display property set to "none".
* feat: refactor image loading and navigation logic on desktop
- Add a line of code in `assets/ts/desktop/stage.ts` to reset the `src` of `elc` and add a class `hide` to it
- Add a line of code in `assets/ts/desktop/stage.ts` to call the `loader` function with `elc` as an argument
- Add a function `loader` in `assets/ts/desktop/stage.ts` to handle image loading and error events
- Modify the `initStageNav` function in `assets/ts/desktop/stageNav.ts` to watch the `isLoading` state and set custom cursor accordingly
- Modify the `initStageNav` function in `assets/ts/desktop/stageNav.ts` to handle close click events by calling the `handleClick` function and setting `isLoading` state to false
- Modify the `initStageNav` function in `assets/ts/desktop/stageNav.ts` to handle previous/next click events by calling the `handleClick` function only if `isLoading` is false
- Modify the `initStageNav` function in `assets/ts/desktop/stageNav.ts` to handle previous/next hover events by setting `loadedText` and updating custom cursor depending on `isLoading` state
* feat: refactor createGallery function and enhance loading functionality on mobile
- Add a loading text element to the gallery.scss file
- Add a loading indicator to the createGallery function in gallery.ts
- Modify the createGallery function in gallery.ts to hide the loading text element on image load
- Move the image element append logic to the parent container in the createGallery function in gallery.ts
* feat: update translations and add new loading translation in i18n files
* chore: remove css source map
* chore: modify build command to ignore css source map
* refactor: remove unnecessary style
* fix: fix desktop cursor text transition bug
* feat: refactor image retrieval logic and improve variable initialization
- Add a new file `layouts/partials/function/getImageSlice.html`
- Initialize variables `$context`, `$Path`, and `$params`
- Set `$Path` based on the result of the `partial/function/currentMenuItem.html` partial
- Retrieve the page `$gallery` based on `$Path`
- Return all resources of type `image` from `$gallery`
* refactor: adapt getImageSlice function to `single.json`
* feat: refactor navigation UI components to use static go template
* feat: update navigation functionality and threshold rendering
* fix: import `_partial/container.scss` in `style.scss`
- Add import for `_partial/container.scss` in `style.scss`
* chore: ignore CSS map files in .gitignore
- Added a new entry for `*.css.map` to the .gitignore file
* chore: update dependabot interval to weekly
- Update the interval of the dependabot from daily to weekly.
* fix: try to fix safari floating address bar issue
* fix: try again with svh
* feat: refactor condition for checking `site.Params.bundled`
- Add default condition for checking if `site.Params.bundled` is true or false
* refactor: update info page content
* chore: update site description
* refactor: refactor variable assignments and return statement in menu template
- Change the variable assignment from `.DirName` to `.Identifier` in the file `layouts/_default/single.json`
- Change the variable assignments in the file `layouts/partials/function/currentMenuItem.html`:
- From `$dirName := ""` to `$identifier := ""`
- From `$id := -1` to `$title := ""` and `$weight := -1`
- From `$dirName = .Identifier` to `$identifier = .Identifier`, `$title = .Title`, and `$weight = .Weight`
- Change the return statement in the file `layouts/partials/function/currentMenuItem.html` from `(dict "DirName" $dirName "ID" $id)` to `(dict "Identifier" $identifier "Title" $title "Weight" $weight)`
* feat: update nav links structure for current link styling
- Remove javascript code related to setting current link style and title
- Update nav links to use updated HTML structure for current link styling
* feat: update page titles and meta tags in layout files
- Update the `baseof.html` layout to include the current page title in the `<title>` tag
- Add OpenGraph meta tags for the page title and description in `meta.html` layout