Compare commits
140 Commits
develop
...
sim-dev-pl
Author | SHA1 | Date | |
---|---|---|---|
7a6b524f9d | |||
|
79311124cb | ||
|
384afefde2 | ||
|
84d6f6634a | ||
|
7d11634c7c | ||
|
0b707da157 | ||
|
46a310292f | ||
|
52ba77a8e1 | ||
|
c494eec931 | ||
|
f9f72d954c | ||
|
a8c7c0745c | ||
|
14f4c78aa9 | ||
|
b6554a4f53 | ||
|
9bfa6a949c | ||
|
4a9c68401a | ||
|
b035f82e7d | ||
|
bad1ec7833 | ||
|
addf1f7a26 | ||
|
81f79c86c4 | ||
|
3acbd5eda7 | ||
|
a0ccda2c61 | ||
|
2484fbc9ed | ||
|
cdc3fe81a0 | ||
|
23fd790231 | ||
|
6690fd8443 | ||
|
9ebed95fb6 | ||
|
d03e9a4da1 | ||
|
09c9bdb95d | ||
|
004cf8fa91 | ||
|
09cb1bba71 | ||
|
21ec16b50f | ||
|
66d92ea4fe | ||
|
628f91a96c | ||
|
3b49cb4e27 | ||
|
4f95837240 | ||
|
5042354ce0 | ||
|
2adbc3c0c8 | ||
|
20c0b2bedf | ||
|
b7f2b6c322 | ||
|
3fbfd1a145 | ||
|
16717567b7 | ||
|
fbe42927df | ||
|
6085ae1b87 | ||
|
8bc8f5551c | ||
|
83d0a84a6d | ||
|
c7e7d8e822 | ||
|
10d03e7e21 | ||
|
d1f0cca197 | ||
|
76dfeec604 | ||
|
f5d9322d45 | ||
|
9a9e77a44b | ||
|
283f0b6d62 | ||
|
d3e4d76148 | ||
|
7ae9d4163f | ||
|
1438b2a3d7 | ||
|
5acc7a4c97 | ||
|
7c1e28d301 | ||
|
bacdacee99 | ||
|
b40d9370af | ||
|
af12409036 | ||
|
c90703e4f6 | ||
|
89c55cb72f | ||
|
395c8aeeb2 | ||
|
b054c407d9 | ||
|
3c73d602df | ||
|
0b0ef34c1c | ||
|
3df7ee30b1 | ||
|
f95f8a1692 | ||
|
7ed9bc8501 | ||
|
e07304067e | ||
|
a38e1cda40 | ||
|
e5b3ccc97b | ||
|
47ac20d027 | ||
|
eeb97d1509 | ||
|
59c00da57b | ||
|
1255b195e3 | ||
|
8cfd9a69c0 | ||
|
56c8428ac2 | ||
|
d0981f5053 | ||
|
78139a95a0 | ||
|
33c6c8cc6a | ||
|
8762aa719f | ||
|
7714309988 | ||
|
770e8f56d3 | ||
|
3617625ca4 | ||
|
bc883386e4 | ||
|
07c1987282 | ||
|
79bc4defdf | ||
|
804ffd2e2e | ||
|
6e322ce3d2 | ||
|
0008b18d7d | ||
|
b2ffdc0a34 | ||
|
a4d86fe745 | ||
|
013d25df1f | ||
|
89f4112aad | ||
|
25204471c9 | ||
|
c84bdb18e3 | ||
|
8fae2356e3 | ||
|
56ee66a20d | ||
|
0ea466a6ad | ||
|
0bb29d10ba | ||
|
f20d8a8f3f | ||
|
659be968cf | ||
|
965f9dee1b | ||
|
104b983e04 | ||
|
e820a8b44f | ||
|
3dc39f3730 | ||
|
143dec52ce | ||
|
49ca370a9a | ||
|
cd86a52571 | ||
|
b8c1c2d822 | ||
|
9b8c7a6d5d | ||
|
920919d453 | ||
|
0bf5e44a31 | ||
|
8b5b6c150e | ||
|
cc47190aa8 | ||
|
e50e6734b5 | ||
|
3857ad73af | ||
|
42691d6b06 | ||
|
e9351dc7d0 | ||
|
667ef0e49f | ||
|
64552ef9c7 | ||
|
30fbcf9b5b | ||
|
03825a3ff9 | ||
|
2a19e099b2 | ||
|
55b53b30b0 | ||
|
4c0dca8c07 | ||
|
6fd77a071d | ||
|
6dfa0a8099 | ||
|
c111020ec7 | ||
|
1520517170 | ||
|
d62ea8ff80 | ||
|
dc96ada2bb | ||
|
caae47a9fd | ||
|
d65d7d1568 | ||
|
6385cca64c | ||
|
95cdf7ad7e | ||
|
caad4424b3 | ||
|
27cdcd8d34 | ||
|
f6107f646e |
@ -30,8 +30,10 @@ Also, when you start implementation, assign yourself to the Issue (if you cannot
|
||||
|
||||
## Well-known branches
|
||||
- **`master`** branch is tracking the latest release and used for production purposes.
|
||||
- **`develop`** branch is where we work for the next release.
|
||||
- **`honi-dev`** branch is where we work for the next release.
|
||||
- When you create a PR, basically target it to this branch.
|
||||
- **`develop`** branch is where original misskey team work for the next release.
|
||||
- You **must not** target your PR to this branch.
|
||||
- **`l10n_develop`** branch is reserved for localization management.
|
||||
|
||||
## Creating a PR
|
||||
|
@ -107,6 +107,7 @@ clickToShow: "Click to show"
|
||||
sensitive: "NSFW"
|
||||
add: "Add"
|
||||
reaction: "Reactions"
|
||||
reactWithRenote: "Renote the note after reacting to it"
|
||||
reactionSetting: "Reactions to show in the reaction picker"
|
||||
reactionSettingDescription2: "Drag to reorder, click to delete, press \"+\" to add."
|
||||
rememberNoteVisibility: "Remember note visibility settings"
|
||||
|
@ -25,6 +25,7 @@ const languages = [
|
||||
'it-IT',
|
||||
'ja-JP',
|
||||
'ja-KS',
|
||||
'ja-HN',
|
||||
'kab-KAB',
|
||||
'kn-IN',
|
||||
'ko-KR',
|
||||
@ -53,11 +54,12 @@ const clean = (text) => text.replace(new RegExp(String.fromCodePoint(0x08), 'g')
|
||||
const locales = languages.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(`${__dirname}/${c}.yml`, 'utf-8'))) || {}, a), {});
|
||||
|
||||
module.exports = Object.entries(locales)
|
||||
.reduce((a, [k ,v]) => (a[k] = (() => {
|
||||
.reduce((a, [k, v]) => (a[k] = (() => {
|
||||
const [lang] = k.split('-');
|
||||
switch (k) {
|
||||
case 'ja-JP': return v;
|
||||
case 'ja-KS':
|
||||
case 'ja-HN':
|
||||
case 'en-US': return merge(locales['ja-JP'], v);
|
||||
default: return merge(
|
||||
locales['ja-JP'],
|
||||
|
1683
locales/ja-HN.yml
Normal file
1683
locales/ja-HN.yml
Normal file
File diff suppressed because it is too large
Load Diff
@ -107,6 +107,7 @@ clickToShow: "クリックして表示"
|
||||
sensitive: "閲覧注意"
|
||||
add: "追加"
|
||||
reaction: "リアクション"
|
||||
reactWithRenote: "ついでにRenoteする"
|
||||
reactionSetting: "ピッカーに表示するリアクション"
|
||||
reactionSettingDescription2: "ドラッグして並び替え、クリックして削除、+を押して追加します。"
|
||||
rememberNoteVisibility: "公開範囲を記憶する"
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"name": "misskey",
|
||||
"version": "12.119.0",
|
||||
"name": "honisskey",
|
||||
"version": "12.119.0-22.09.1",
|
||||
"codename": "indigo",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/misskey-dev/misskey.git"
|
||||
"url": "https://github.com/ThinaticSystem/honisskey.git"
|
||||
},
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
@ -2,6 +2,7 @@ export function nyaize(text: string): string {
|
||||
return text
|
||||
// ja-JP
|
||||
.replace(/な/g, 'にゃ').replace(/ナ/g, 'ニャ').replace(/ナ/g, 'ニャ')
|
||||
.replace(/(?<=こ)んにち[は|わ]/g, 'にゃにゃちわ').replace(/(?<=コ)ンニチ[ハ|ワ]/g, 'ニャニャチワ').replace(/(?<=コ)ンニチ[ハ|ワ]/g, 'ニャニャチワ')
|
||||
// en-US
|
||||
.replace(/(?<=n)a/gi, x => x === 'A' ? 'YA' : 'ya')
|
||||
.replace(/(?<=morn)ing/gi, x => x === 'ING' ? 'YAN' : 'yan')
|
||||
|
@ -33,9 +33,9 @@
|
||||
let lang = localStorage.getItem('lang');
|
||||
if (lang == null || !supportedLangs.includes(lang)) {
|
||||
if (supportedLangs.includes(navigator.language)) {
|
||||
lang = navigator.language;
|
||||
lang = (navigator.language === 'ja-JP') ? 'ja-HN' : navigator.language;
|
||||
} else {
|
||||
lang = supportedLangs.find(x => x.split('-')[0] === navigator.language);
|
||||
lang = (navigator.language === 'ja') ? 'ja-HN' : supportedLangs.find(x => x.split('-')[0] === navigator.language);
|
||||
|
||||
// Fallback
|
||||
if (lang == null) lang = 'en-US';
|
||||
|
@ -4,7 +4,7 @@
|
||||
"start_url": "/",
|
||||
"display": "standalone",
|
||||
"background_color": "#313a42",
|
||||
"theme_color": "#86b300",
|
||||
"theme_color": "#77b58c",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/static-assets/icons/192.png",
|
||||
|
@ -23,8 +23,8 @@ html
|
||||
meta(charset='utf-8')
|
||||
meta(name='application-name' content='Misskey')
|
||||
meta(name='referrer' content='origin')
|
||||
meta(name='theme-color' content= themeColor || '#86b300')
|
||||
meta(name='theme-color-orig' content= themeColor || '#86b300')
|
||||
meta(name='theme-color' content= themeColor || '#77b58c')
|
||||
meta(name='theme-color-orig' content= themeColor || '#77b58c')
|
||||
meta(property='twitter:card' content='summary')
|
||||
meta(property='og:site_name' content= instanceName || 'Misskey')
|
||||
meta(name='viewport' content='width=device-width, initial-scale=1')
|
||||
|
@ -51,7 +51,7 @@ export async function sendEmail(to: string, subject: string, html: string, text:
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: #86b300;
|
||||
color: #77b58c;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
@ -65,7 +65,7 @@ export async function sendEmail(to: string, subject: string, html: string, text:
|
||||
}
|
||||
main > header {
|
||||
padding: 32px;
|
||||
background: #86b300;
|
||||
background: #77b58c;
|
||||
}
|
||||
main > header > img {
|
||||
max-width: 128px;
|
||||
|
@ -74,6 +74,7 @@
|
||||
<button class="_button tab" :class="{ active: tab === 'unicode' }" @click="tab = 'unicode'"><i class="fas fa-leaf fa-fw"></i></button>
|
||||
<button class="_button tab" :class="{ active: tab === 'tags' }" @click="tab = 'tags'"><i class="fas fa-hashtag fa-fw"></i></button>
|
||||
</div>
|
||||
<MkSwitch v-if="props.asReactionPicker" v-model="withRenote" class="withRenote">{{ i18n.ts.reactWithRenote }}</MkSwitch>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -90,6 +91,7 @@ import { deviceKind } from '@/scripts/device-kind';
|
||||
import { emojiCategories, instance } from '@/instance';
|
||||
import { i18n } from '@/i18n';
|
||||
import { defaultStore } from '@/store';
|
||||
import MkSwitch from '@/components/form/switch.vue';
|
||||
|
||||
const props = withDefaults(defineProps<{
|
||||
showPinned?: boolean;
|
||||
@ -101,10 +103,11 @@ const props = withDefaults(defineProps<{
|
||||
});
|
||||
|
||||
const emit = defineEmits<{
|
||||
(ev: 'chosen', v: string): void;
|
||||
(ev: 'chosen', v: { reaction: string, withRenote: boolean } | string): void;
|
||||
}>();
|
||||
|
||||
const search = ref<HTMLInputElement>();
|
||||
const withRenote = ref<boolean>(true);
|
||||
const emojis = ref<HTMLDivElement>();
|
||||
|
||||
const {
|
||||
@ -278,6 +281,7 @@ function focus() {
|
||||
function reset() {
|
||||
if (emojis.value) emojis.value.scrollTop = 0;
|
||||
q.value = '';
|
||||
withRenote.value = false; // 毎回Renoteをfalseに戻す
|
||||
}
|
||||
|
||||
function getKey(emoji: string | Misskey.entities.CustomEmoji | UnicodeEmojiDef): string {
|
||||
@ -294,7 +298,7 @@ function chosen(emoji: any, ev?: MouseEvent) {
|
||||
}
|
||||
|
||||
const key = getKey(emoji);
|
||||
emit('chosen', key);
|
||||
emit('chosen', (props.asReactionPicker) ? { reaction: key, withRenote: withRenote.value } : key);
|
||||
|
||||
// 最近使った絵文字更新
|
||||
if (!pinned.value.includes(key)) {
|
||||
@ -452,6 +456,10 @@ defineExpose({
|
||||
}
|
||||
}
|
||||
|
||||
> .withRenote {
|
||||
padding: 12px;
|
||||
}
|
||||
|
||||
> .tabs {
|
||||
display: flex;
|
||||
display: none;
|
||||
|
@ -51,8 +51,8 @@ const emit = defineEmits<{
|
||||
const modal = ref<InstanceType<typeof MkModal>>();
|
||||
const picker = ref<InstanceType<typeof MkEmojiPicker>>();
|
||||
|
||||
function chosen(emoji: any) {
|
||||
emit('done', emoji);
|
||||
function chosen(results: { reaction: string, withRenote: boolean }) {
|
||||
emit('done', results);
|
||||
modal.value?.close();
|
||||
}
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
>
|
||||
<source
|
||||
:src="video.url"
|
||||
:type="video.type"
|
||||
:type="(video.type === 'video/quicktime') ? null : video.type"
|
||||
>
|
||||
</video>
|
||||
<i class="fas fa-eye-slash" @click="hide = true"></i>
|
||||
|
@ -207,11 +207,17 @@ function reply(viaKeyboard = false): void {
|
||||
function react(viaKeyboard = false): void {
|
||||
pleaseLogin();
|
||||
blur();
|
||||
reactionPicker.show(reactButton.value, reaction => {
|
||||
reactionPicker.show(reactButton.value, results => {
|
||||
os.api('notes/reactions/create', {
|
||||
noteId: appearNote.id,
|
||||
reaction: reaction,
|
||||
reaction: results.reaction,
|
||||
});
|
||||
if (results.withRenote) {
|
||||
os.api('notes/create', {
|
||||
renoteId: appearNote.id,
|
||||
isRenote: true,
|
||||
});
|
||||
}
|
||||
}, () => {
|
||||
focus();
|
||||
});
|
||||
|
@ -215,7 +215,7 @@ function react(viaKeyboard = false): void {
|
||||
reactionPicker.show(reactButton.value, reaction => {
|
||||
os.api('notes/reactions/create', {
|
||||
noteId: appearNote.id,
|
||||
reaction: reaction,
|
||||
reaction: reaction.reaction,
|
||||
});
|
||||
}, () => {
|
||||
focus();
|
||||
|
@ -61,6 +61,7 @@
|
||||
<Mfm :text="getNoteSummary(notification.note)" :plain="true" :nowrap="!full" :custom-emojis="notification.note.emojis"/>
|
||||
<i class="fas fa-quote-right"></i>
|
||||
</MkA>
|
||||
<button v-if="notification.type === 'renote'" class="_textButton" @click="openRenoteDestination(notification)">RN先を覗く👀</button>
|
||||
<span v-if="notification.type === 'follow'" class="text" style="opacity: 0.6;">{{ i18n.ts.youGotNewFollower }}<div v-if="full"><MkFollowButton :user="notification.user" :full="true"/></div></span>
|
||||
<span v-if="notification.type === 'followRequestAccepted'" class="text" style="opacity: 0.6;">{{ i18n.ts.followRequestAccepted }}</span>
|
||||
<span v-if="notification.type === 'receiveFollowRequest'" class="text" style="opacity: 0.6;">{{ i18n.ts.receiveFollowRequest }}<div v-if="full && !followRequestDone"><button class="_textButton" @click="acceptFollowRequest()">{{ i18n.ts.accept }}</button> | <button class="_textButton" @click="rejectFollowRequest()">{{ i18n.ts.reject }}</button></div></span>
|
||||
@ -158,6 +159,21 @@ useTooltip(reactionRef, (showing) => {
|
||||
targetElement: reactionRef.value.$el,
|
||||
}, {}, 'closed');
|
||||
});
|
||||
|
||||
function openRenoteDestination(renoteNotification: misskey.entities.Notification): void {
|
||||
if (renoteNotification.type !== 'renote') {
|
||||
throw new Error("openRenoteDestination()の引数には type: 'renote' のNotificationが渡される必要があります");
|
||||
}
|
||||
|
||||
os.api('users/show', {userId: renoteNotification.user.id}).then((user: misskey.entities.UserDetailed) => {
|
||||
if (user.host != null && user.followersCount === 0) { // リモートユーザーかつローカルの人間が誰もフォローしていない(最新の投稿が取得できない)ユーザー
|
||||
if (user.url === null) { throw new Error('User page URL is Null'); };
|
||||
window.open(user.url, '_blank', 'rel="nofollow noopener"');
|
||||
} else {
|
||||
os.pageWindow(notePage(renoteNotification.note));
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
@ -40,7 +40,7 @@ import { getUrlWithoutLoginId } from '@/scripts/login-id';
|
||||
import { getAccountFromId } from '@/scripts/get-account-from-id';
|
||||
|
||||
(async () => {
|
||||
console.info(`Misskey v${version}`);
|
||||
console.info(`Honisskey v${version}`);
|
||||
|
||||
if (_DEV_) {
|
||||
console.warn('Development mode!!!');
|
||||
|
@ -19,7 +19,7 @@
|
||||
</div>
|
||||
<FormSection>
|
||||
<div class="_formLinks">
|
||||
<FormLink to="https://github.com/misskey-dev/misskey" external>
|
||||
<FormLink to="https://github.com/ThinaticSystem/honisskey" external>
|
||||
<template #icon><i class="fas fa-code"></i></template>
|
||||
{{ i18n.ts._aboutMisskey.source }}
|
||||
<template #suffix>GitHub</template>
|
||||
|
@ -188,8 +188,8 @@ export default defineComponent({
|
||||
pointRadius: 0,
|
||||
tension: 0,
|
||||
borderWidth: 2,
|
||||
borderColor: '#86b300',
|
||||
backgroundColor: alpha('#86b300', 0.1),
|
||||
borderColor: '#77b58c',
|
||||
backgroundColor: alpha('#77b58c', 0.1),
|
||||
data: []
|
||||
}, {
|
||||
label: 'MEM (active)',
|
||||
|
@ -55,7 +55,6 @@
|
||||
|
||||
<FormSwitch v-model="profile.isCat" class="_formBlock">{{ i18n.ts.flagAsCat }}<template #caption>{{ i18n.ts.flagAsCatDescription }}</template></FormSwitch>
|
||||
<FormSwitch v-model="profile.showTimelineReplies" class="_formBlock">{{ i18n.ts.flagShowTimelineReplies }}<template #caption>{{ i18n.ts.flagShowTimelineRepliesDescription }} {{ i18n.ts.reflectMayTakeTime }}</template></FormSwitch>
|
||||
<FormSwitch v-model="profile.isBot" class="_formBlock">{{ i18n.ts.flagAsBot }}<template #caption>{{ i18n.ts.flagAsBotDescription }}</template></FormSwitch>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -39,5 +39,18 @@ export function createAiScriptEnv(opts) {
|
||||
utils.assertString(key);
|
||||
return utils.jsToVal(JSON.parse(localStorage.getItem('aiscript:' + opts.storageKey + ':' + key.value)));
|
||||
}),
|
||||
'Mk:fetch': values.FN_NATIVE(async ([resource, init]) => {
|
||||
utils.assertString(resource);
|
||||
const response = init ? await fetch(resource.value, utils.valToJs(init)) : await fetch(resource.value);
|
||||
const returnObject = {
|
||||
status: response.status,
|
||||
headers: new Object(),
|
||||
body: await response.text(),
|
||||
};
|
||||
response.headers.forEach((value, key) => {
|
||||
returnObject.headers[key] = value;
|
||||
});
|
||||
return utils.jsToVal(returnObject);
|
||||
}),
|
||||
};
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ import { popup } from '@/os';
|
||||
class ReactionPicker {
|
||||
private src: Ref<HTMLElement | null> = ref(null);
|
||||
private manualShowing = ref(false);
|
||||
private onChosen?: (reaction: string) => void;
|
||||
private onChosen?: ({ reaction: string, withRenote: boolean }) => void;
|
||||
private onClosed?: () => void;
|
||||
|
||||
constructor() {
|
||||
@ -17,8 +17,8 @@ class ReactionPicker {
|
||||
asReactionPicker: true,
|
||||
manualShowing: this.manualShowing
|
||||
}, {
|
||||
done: reaction => {
|
||||
this.onChosen!(reaction);
|
||||
done: results => {
|
||||
this.onChosen!({ reaction: results.reaction, withRenote: results.withRenote });
|
||||
},
|
||||
close: () => {
|
||||
this.manualShowing.value = false;
|
||||
|
@ -9,7 +9,7 @@
|
||||
kind: 'dark',
|
||||
|
||||
props: {
|
||||
accent: '#86b300',
|
||||
accent: '#77b58c',
|
||||
accentDarken: ':darken<10<@accent',
|
||||
accentLighten: ':lighten<10<@accent',
|
||||
accentedBg: ':alpha<0.15<@accent',
|
||||
@ -43,7 +43,7 @@
|
||||
hashtag: '#ff9156',
|
||||
mention: '@accent',
|
||||
mentionMe: '@mention',
|
||||
renote: '#229e82',
|
||||
renote: '#229e92',
|
||||
modalBg: 'rgba(0, 0, 0, 0.5)',
|
||||
scrollbarHandle: 'rgba(255, 255, 255, 0.2)',
|
||||
scrollbarHandleHover: 'rgba(255, 255, 255, 0.4)',
|
||||
@ -71,7 +71,7 @@
|
||||
wallpaperOverlay: 'rgba(0, 0, 0, 0.5)',
|
||||
badge: '#31b1ce',
|
||||
messageBg: '@bg',
|
||||
success: '#86b300',
|
||||
success: '#77b58c',
|
||||
error: '#ec4137',
|
||||
warn: '#ecb637',
|
||||
codeString: '#ffb675',
|
||||
|
@ -4,12 +4,12 @@
|
||||
id: 'light',
|
||||
|
||||
name: 'Light',
|
||||
author: 'syuilo',
|
||||
author: 'ThinaticSystem',
|
||||
desc: 'Default light theme',
|
||||
kind: 'light',
|
||||
|
||||
props: {
|
||||
accent: '#86b300',
|
||||
accent: '#77b58c',
|
||||
accentDarken: ':darken<10<@accent',
|
||||
accentLighten: ':lighten<10<@accent',
|
||||
accentedBg: ':alpha<0.15<@accent',
|
||||
@ -43,7 +43,7 @@
|
||||
hashtag: '#ff9156',
|
||||
mention: '@accent',
|
||||
mentionMe: '@mention',
|
||||
renote: '#229e82',
|
||||
renote: '#229e92',
|
||||
modalBg: 'rgba(0, 0, 0, 0.3)',
|
||||
scrollbarHandle: 'rgba(0, 0, 0, 0.2)',
|
||||
scrollbarHandleHover: 'rgba(0, 0, 0, 0.4)',
|
||||
@ -71,7 +71,7 @@
|
||||
wallpaperOverlay: 'rgba(255, 255, 255, 0.5)',
|
||||
badge: '#31b1ce',
|
||||
messageBg: '@bg',
|
||||
success: '#86b300',
|
||||
success: '#77b58c',
|
||||
error: '#ec4137',
|
||||
warn: '#ecb637',
|
||||
codeString: '#b98710',
|
||||
|
@ -195,7 +195,6 @@ export default defineComponent({
|
||||
top: 0;
|
||||
z-index: 1;
|
||||
padding: 16px 0;
|
||||
background: var(--bg);
|
||||
|
||||
> .button {
|
||||
min-width: 0;
|
||||
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mk-app">
|
||||
<a v-if="root" href="https://github.com/misskey-dev/misskey" target="_blank" class="github-corner" aria-label="View source on GitHub"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:var(--panel); color:var(--fg); position: fixed; z-index: 10; top: 0; border: 0; right: 0;" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a>
|
||||
<a v-if="root" href="https://github.com/ThinaticSystem/honisskey" target="_blank" class="github-corner" aria-label="View source on GitHub"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:var(--panel); color:var(--fg); position: fixed; z-index: 10; top: 0; border: 0; right: 0;" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a>
|
||||
|
||||
<div v-if="!narrow && !root" class="side">
|
||||
<XKanban class="kanban" full/>
|
||||
|
@ -77,8 +77,13 @@ const tick = () => {
|
||||
const ny = now.getFullYear();
|
||||
|
||||
year.value = ny;
|
||||
if (nd === 1 && nm + 1 === 4) { // エイプリルフール
|
||||
month.value = 3;
|
||||
day.value = 32;
|
||||
} else { // 通常
|
||||
month.value = nm + 1;
|
||||
day.value = nd;
|
||||
}
|
||||
weekDay.value = [
|
||||
i18n.ts._weekday.sunday,
|
||||
i18n.ts._weekday.monday,
|
||||
|
Loading…
x
Reference in New Issue
Block a user