From 320f5fedfb0fe0c6761ba0ba5a4d37b730975f41 Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 13 Mar 2021 00:18:41 +0900 Subject: eslintrcとtsconfigを整理 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/.eslintrc | 6 ++++++ src/client/.eslintrc | 20 ++++++++++++++++++++ src/tsconfig.json | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+) create mode 100644 src/.eslintrc create mode 100644 src/tsconfig.json (limited to 'src') diff --git a/src/.eslintrc b/src/.eslintrc new file mode 100644 index 0000000000..d54e20f6b6 --- /dev/null +++ b/src/.eslintrc @@ -0,0 +1,6 @@ +{ + "env": { + "node": true, + "commonjs": true + } +} diff --git a/src/client/.eslintrc b/src/client/.eslintrc index 8829472b49..fffa28d9e4 100644 --- a/src/client/.eslintrc +++ b/src/client/.eslintrc @@ -1,4 +1,24 @@ { + "env": { + "node": false, + }, + "extends": [ + "eslint:recommended", + "plugin:vue/recommended" + ], + "rules": { + "vue/require-v-for-key": 0, + "vue/max-attributes-per-line": 0, + "vue/html-indent": 0, + "vue/html-self-closing": 0, + "vue/no-unused-vars": 0, + "vue/attributes-order": 0, + "vue/require-prop-types": 0, + "vue/require-default-prop": 0, + "vue/html-closing-bracket-spacing": 0, + "vue/singleline-html-element-content-newline": 0, + "vue/no-v-html": 0 + }, "globals": { "_DEV_": false, "_LANGS_": false, diff --git a/src/tsconfig.json b/src/tsconfig.json new file mode 100644 index 0000000000..95cb35fc5f --- /dev/null +++ b/src/tsconfig.json @@ -0,0 +1,39 @@ +{ + "compilerOptions": { + "allowJs": true, + "noEmitOnError": false, + "noImplicitAny": true, + "noImplicitReturns": true, + "noUnusedParameters": false, + "noUnusedLocals": true, + "noFallthroughCasesInSwitch": true, + "declaration": false, + "sourceMap": true, + "target": "es2017", + "module": "commonjs", + "moduleResolution": "node", + "removeComments": false, + "noLib": false, + "strict": true, + "strictNullChecks": true, + "strictPropertyInitialization": false, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "resolveJsonModule": true, + "isolatedModules": true, + "typeRoots": [ + "../node_modules/@types", + "./@types" + ], + "lib": [ + "esnext" + ] + }, + "compileOnSave": false, + "include": [ + "./**/*.ts" + ], + "exclude": [ + "./client/**/*.ts" + ] +} -- cgit v1.2.3-freya From a87930542a2975af05799adc5250771a08301811 Mon Sep 17 00:00:00 2001 From: Zero King Date: Fri, 12 Mar 2021 17:07:18 +0000 Subject: Fix typo (#7334) --- src/services/following/create.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/services/following/create.ts b/src/services/following/create.ts index c0583cdb86..6bc98aee87 100644 --- a/src/services/following/create.ts +++ b/src/services/following/create.ts @@ -93,7 +93,7 @@ export async function insertFollowingDoc(followee: User, follower: User) { // Publish followed event if (Users.isLocalUser(followee)) { - Users.pack(follower, followee).then(packed => publishMainStream(followee.id, 'followed', packed)), + Users.pack(follower, followee).then(packed => publishMainStream(followee.id, 'followed', packed)); // 通知を作成 createNotification(followee.id, 'follow', { -- cgit v1.2.3-freya From bc4315da1edc8a729310d74eeec1f7b1d4a5e220 Mon Sep 17 00:00:00 2001 From: tamaina Date: Sat, 13 Mar 2021 10:55:29 +0900 Subject: Improve flush (#7328) --- src/server/web/views/flush.pug | 63 ++++++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 27 deletions(-) (limited to 'src') diff --git a/src/server/web/views/flush.pug b/src/server/web/views/flush.pug index 59fed1f15d..ec585a34db 100644 --- a/src/server/web/views/flush.pug +++ b/src/server/web/views/flush.pug @@ -4,35 +4,44 @@ html #msg script. const msg = document.getElementById('msg'); + const successText = `\nSuccess Flush! Back to Misskey\n成功しました。Misskeyを開き直してください。`; - try { - localStorage.clear(); - message('localStorage cleared'); - - const delidb = indexedDB.deleteDatabase('MisskeyClient'); - delidb.onsuccess = () => message('indexedDB cleared'); - - if (navigator.serviceWorker.controller) { - navigator.serviceWorker.controller.postMessage('clear'); - navigator.serviceWorker.getRegistrations() - .then(registrations => { - return Promise.all(registrations.map(registration => registration.unregister())); - }) - .then(() => { - message('Success Flush! Please reopen Misskey.\n成功しました。Misskeyを開き直してください。'); - }) - .catch(e => { throw Error(e) }); - } else { - message('Success Flush! Please reopen Misskey.\n成功しました。Misskeyを開き直してください。'); + message('Start flushing.'); + + (async function() { + try { + localStorage.clear(); + message('localStorage cleared.'); + + const idbPromises = ['MisskeyClient', 'keyval-store'].map((name, i, arr) => new Promise((res, rej) => { + const delidb = indexedDB.deleteDatabase(name); + delidb.onsuccess = () => res(message(`indexedDB "${name}" cleared. (${i + 1}/${arr.length})`)); + delidb.onerror = e => rej(e) + })); + + await Promise.all(idbPromises); + + if (navigator.serviceWorker.controller) { + navigator.serviceWorker.controller.postMessage('clear'); + await navigator.serviceWorker.getRegistrations() + .then(registrations => { + return Promise.all(registrations.map(registration => registration.unregister())); + }) + .catch(e => { throw Error(e) }); + } + + message(successText); + } catch (e) { + message(`\n${e}\n\nFlush Failed. Please retry.\n失敗しました。もう一度試してみてください。`); + message(`\nIf you retry more than 3 times, clear the browser cache or contact to instance admin.\n3回以上試しても失敗する場合、ブラウザのキャッシュを消去し、それでもだめならインスタンス管理者に連絡してみてください。\n`) + + console.error(e); + setTimeout(() => { + location = '/'; + }, 10000) } - } catch (e) { - console.error(e); - message(`${e}¥n¥nFlush Failed. Please reopen Misskey.\n失敗しました。Misskeyを開き直してください。`); - setTimeout(() => { - location = '/'; - }, 10000) - } + })(); function message(text) { - msg.insertAdjacentHTML('beforeend', `

[${(new Date()).toString()}] ${text.replace(/¥n/g,'
')}

`) + msg.insertAdjacentHTML('beforeend', `

[${(new Date()).toString()}] ${text.replace(/\n/g,'
')}

`) } -- cgit v1.2.3-freya From 522dbb1e138f9fa2180a5ccc0b9075da306d72aa Mon Sep 17 00:00:00 2001 From: marihachi Date: Sat, 13 Mar 2021 10:56:27 +0900 Subject: update page editor (#7317) * fix buttons visibility * fix title of page editor --- src/client/pages/page-editor/page-editor.vue | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/client/pages/page-editor/page-editor.vue b/src/client/pages/page-editor/page-editor.vue index 45997dfd65..08856ebfe4 100644 --- a/src/client/pages/page-editor/page-editor.vue +++ b/src/client/pages/page-editor/page-editor.vue @@ -4,9 +4,9 @@ {{ $ts._pages.viewPage }}
- {{ $ts.save }} + {{ $ts.save }} {{ $ts.duplicate }} - {{ $ts.delete }} + {{ $ts.delete }}
@@ -134,12 +134,18 @@ export default defineComponent({ data() { return { - INFO: computed(() => this.initPageId ? { - title: this.$ts._pages.editPage, - icon: faPencilAlt, - } : { - title: this.$ts._pages.newPage, - icon: faPencilAlt, + INFO: computed(() => { + let title = this.$ts._pages.newPage; + if (this.initPageId) { + title = this.$ts._pages.editPage; + } + else if (this.initPageName && this.initUser) { + title = this.$ts._pages.readPage; + } + return { + title: title, + icon: faPencilAlt, + }; }), author: this.$i, readonly: false, -- cgit v1.2.3-freya From f41c85110825443bfe26001161b72d828af56d7b Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 13 Mar 2021 11:43:07 +0900 Subject: gulp refactor --- gulpfile.ts | 8 -------- src/client/pages/doc.vue | 2 +- src/server/web/index.ts | 8 ++++++++ 3 files changed, 9 insertions(+), 9 deletions(-) (limited to 'src') diff --git a/gulpfile.ts b/gulpfile.ts index 0cdd016fd7..771a5c0e32 100644 --- a/gulpfile.ts +++ b/gulpfile.ts @@ -77,17 +77,9 @@ gulp.task('cleanall', gulp.parallel('clean', cb => rimraf('./node_modules', cb) )); -gulp.task('copy:docs', () => - gulp.src([ - './src/docs/**/*', - ]) - .pipe(gulp.dest('./built/assets/docs/')) -); - gulp.task('build', gulp.parallel( 'build:ts', 'build:copy', - 'copy:docs', )); gulp.task('default', gulp.task('build')); diff --git a/src/client/pages/doc.vue b/src/client/pages/doc.vue index 3379a5fe68..ed4eae4d02 100644 --- a/src/client/pages/doc.vue +++ b/src/client/pages/doc.vue @@ -60,7 +60,7 @@ export default defineComponent({ methods: { fetchDoc() { - fetch(`${url}/assets/docs/${lang}/${this.doc}.md`).then(res => res.text()).then(md => { + fetch(`${url}/doc-assets/${lang}/${this.doc}.md`).then(res => res.text()).then(md => { this.parse(md); }); }, diff --git a/src/server/web/index.ts b/src/server/web/index.ts index 7b0b82eedf..c1f879f913 100644 --- a/src/server/web/index.ts +++ b/src/server/web/index.ts @@ -29,6 +29,7 @@ const markdown = MarkdownIt({ }); const staticAssets = `${__dirname}/../../../assets/`; +const docAssets = `${__dirname}/../../../src/docs/`; const assets = `${__dirname}/../../assets/`; // Init app @@ -65,6 +66,13 @@ router.get('/static-assets/(.*)', async ctx => { }); }); +router.get('/doc-assets/(.*)', async ctx => { + await send(ctx as any, ctx.path.replace('/doc-assets/', ''), { + root: docAssets, + maxage: ms('7 days'), + }); +}); + router.get('/assets/(.*)', async ctx => { await send(ctx as any, ctx.path.replace('/assets/', ''), { root: assets, -- cgit v1.2.3-freya From dfe10ac61f989d0b96915f870793b3066b7e1661 Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 13 Mar 2021 13:05:20 +0900 Subject: Improve usability --- src/client/components/ui/modal.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/client/components/ui/modal.vue b/src/client/components/ui/modal.vue index ff5b98d39f..db6564bacc 100644 --- a/src/client/components/ui/modal.vue +++ b/src/client/components/ui/modal.vue @@ -1,7 +1,7 @@