Compare commits

..

No commits in common. "e617f344f886376c4be2cc5a044450954f609c18" and "654bb749fb7ce80b80891052e09fd94bd7a20af9" have entirely different histories.

12 changed files with 36 additions and 68 deletions

BIN
bun.lockb

Binary file not shown.

View file

@ -1,32 +0,0 @@
# Versioning & Development Cycle
The versioning policy follows the [Semantic Versioning](https://semver.org/).
Since Tutu is an app for the end user, we redefine the some words in the policy:
- API changes: the app is no longer available on certain platforms.
## Development Cycle
Dependency Freeze -> Development -> Release
### Dependency Freeze
This step is for:
- Update dependencies
- Prepare the new version (like, bump the version number).
New dependencies should not be added in this step.
### Development
In this step, dependencies can only be updated if it's required to fix bugs.
New dependencies should be added as their use, in this step.
### Release
The version is released to production in this step.
Before the next development step, new versions can still be released to
fix bugs.

View file

@ -17,33 +17,33 @@
"author": "Rubicon",
"license": "Apache-2.0",
"devDependencies": {
"@solid-devtools/overlay": "^0.33.0",
"@solid-devtools/overlay": "^0.30.1",
"@suid/vite-plugin": "^0.3.1",
"@testing-library/webdriverio": "^3.2.1",
"@types/hammerjs": "^2.0.46",
"@types/masonry-layout": "^4.2.8",
"@vite-pwa/assets-generator": "^0.2.6",
"@wdio/cli": "^9.5.1",
"@wdio/lighthouse-service": "^9.5.1",
"@wdio/local-runner": "^9.5.1",
"@wdio/mocha-framework": "^9.5.0",
"@wdio/spec-reporter": "^9.5.0",
"@wdio/cli": "^9.4.5",
"@wdio/lighthouse-service": "^9.4.5",
"@wdio/local-runner": "^9.4.5",
"@wdio/mocha-framework": "^9.4.4",
"@wdio/spec-reporter": "^9.4.4",
"postcss": "^8.4.49",
"prettier": "^3.4.2",
"prettier": "^3.3.3",
"tsx": "^4.19.2",
"typescript": "^5.7.2",
"vite": "^6.0.7",
"typescript": "^5.6.3",
"vite": "^5.4.11",
"vite-plugin-package-version": "^1.1.0",
"vite-plugin-pwa": "^0.21.1",
"vite-plugin-solid": "^2.11.0",
"vite-plugin-pwa": "^0.20.5",
"vite-plugin-solid": "^2.10.2",
"vite-plugin-solid-styled": "^0.11.1",
"wdio-vite-service": "^2.0.0",
"wdio-wait-for": "^3.0.11",
"workbox-build": "^7.3.0",
"wrangler": "^3.99.0"
"wrangler": "^3.86.1"
},
"dependencies": {
"@formatjs/intl-localematcher": "^0.5.10",
"@formatjs/intl-localematcher": "^0.5.7",
"@nanostores/persistent": "^0.10.2",
"@nanostores/solid": "^0.5.0",
"@solid-primitives/event-listener": "^2.3.3",
@ -52,7 +52,7 @@
"@solid-primitives/map": "^0.4.13",
"@solid-primitives/page-visibility": "^2.0.17",
"@solid-primitives/resize-observer": "^2.0.26",
"@solidjs/router": "^0.15.2",
"@solidjs/router": "^0.15.1",
"@suid/icons-material": "^0.8.1",
"@suid/material": "^0.18.0",
"blurhash": "^2.0.5",
@ -65,7 +65,7 @@
"masto": "^6.10.1",
"nanostores": "^0.11.3",
"normalize.css": "^8.0.1",
"solid-devtools": "^0.33.0",
"solid-devtools": "^0.30.1",
"solid-js": "^1.9.3",
"solid-styled": "^0.11.1",
"solid-transition-group": "^0.2.3",

View file

@ -51,7 +51,7 @@ function animateSlideInFromBottom(element: HTMLElement, reverse?: boolean) {
}
const BottomSheet: ParentComponent<BottomSheetProps> = (props) => {
let element!: HTMLDialogElement;
let element: HTMLDialogElement;
let animation: Animation | undefined;
const child = children(() => props.children);

View file

@ -108,7 +108,7 @@ function animateGrowFromTopLeft(
* - Use {@link MenuItem} from SUID as children.
*/
const Menu: Component<MenuProps> = (oprops) => {
let root!: HTMLDialogElement;
let root: HTMLDialogElement;
const windowSize = useWindowSize();
const [props, rest] = splitProps(oprops, [
"open",

View file

@ -38,7 +38,7 @@ function clamp(input: number, min: number, max: number) {
}
const MediaViewer: ParentComponent<MediaViewerProps> = (props) => {
let rootRef!: HTMLDialogElement;
let rootRef: HTMLDialogElement;
type State = {
ref?: HTMLElement;

View file

@ -17,7 +17,7 @@ const PullDownToRefresh: Component<{
linkedElement?: HTMLElement;
onRefresh?: () => void;
}> = (props) => {
let rootElement!: HTMLDivElement;
let rootElement: HTMLDivElement;
const [pullDown, setPullDown] = createSignal(0);
const stopPos = () => 160;

View file

@ -23,7 +23,7 @@ type ChooseTootLangProps = {
};
const ChooseTootLang: Component<ChooseTootLangProps> = (props) => {
let listRef!: HTMLUListElement;
let listRef: HTMLUListElement;
const [t] = createTranslator(
(code) =>
import(`./i18n/${code}.json`) as Promise<{

View file

@ -17,7 +17,7 @@ export function PreviewCard(props: {
src: mastodon.v1.PreviewCard;
alwaysCompact?: boolean;
}) {
let root!: HTMLAnchorElement;
let root: HTMLAnchorElement;
createEffect(() => {
if (props.alwaysCompact) {

View file

@ -33,7 +33,7 @@ type TootPollProps = {
};
const TootPoll: Component<TootPollProps> = (props) => {
let list!: HTMLUListElement;
let list: HTMLUListElement;
const { vote } = useTootEnv();
const now = useTimeSource();

View file

@ -2,8 +2,8 @@
"compilerOptions": {
"strict": true,
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "bundler",
"module": "esnext",
"moduleResolution": "node",
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"noEmit": true,

View file

@ -4,7 +4,7 @@ import solidStyled from "vite-plugin-solid-styled";
import suid from "@suid/vite-plugin";
import { VitePWA } from "vite-plugin-pwa";
import version from "vite-plugin-package-version";
import manifest from "./manifest.config.js";
import manifest from "./manifest.config";
import { GetManualChunk } from "rollup";
import devtools from "solid-devtools/vite";
import { resolve } from "node:path";
@ -70,17 +70,17 @@ export default defineConfig(({ mode }) => {
plugins: [
devtools({
autoname: true,
locator: devConf["DEV_LOCATOR_EDITOR"]
? {
targetIDE: devConf["DEV_LOCATOR_EDITOR"] as
| "vscode"
| "atom"
| "webstorm"
| "vscode-insiders",
componentLocation: true,
jsxLocation: true,
}
: undefined,
locator: {
targetIDE:
(devConf["DEV_LOCATOR_EDITOR"] as
| "vscode"
| "atom"
| "webstorm"
| "vscode-insiders"
| "") || undefined,
componentLocation: true,
jsxLocation: true,
},
}),
suid(),
solid(),