Merge branch 'acct-parse-url' into lookup-api
This commit is contained in:
commit
57cfbde973
|
@ -78,7 +78,7 @@ function subscribe() {
|
|||
// SEE: https://developer.mozilla.org/en-US/docs/Web/API/PushManager/subscribe#Parameters
|
||||
return promiseDialog(registration.value.pushManager.subscribe({
|
||||
userVisibleOnly: true,
|
||||
applicationServerKey: urlBase64ToUint8Array(instance.swPublickey),
|
||||
applicationServerKey: urlBase64ToBase64(instance.swPublickey),
|
||||
})
|
||||
.then(async subscription => {
|
||||
pushSubscription.value = subscription;
|
||||
|
@ -131,22 +131,16 @@ function encode(buffer: ArrayBuffer | null) {
|
|||
}
|
||||
|
||||
/**
|
||||
* Convert the URL safe base64 string to a Uint8Array
|
||||
* Convert the URL safe base64 string to a base64 string
|
||||
* @param base64String base64 string
|
||||
*/
|
||||
function urlBase64ToUint8Array(base64String: string): Uint8Array {
|
||||
function urlBase64ToBase64(base64String: string): string {
|
||||
const padding = '='.repeat((4 - base64String.length % 4) % 4);
|
||||
const base64 = (base64String + padding)
|
||||
.replace(/-/g, '+')
|
||||
.replace(/_/g, '/');
|
||||
|
||||
const rawData = window.atob(base64);
|
||||
const outputArray = new Uint8Array(rawData.length);
|
||||
|
||||
for (let i = 0; i < rawData.length; ++i) {
|
||||
outputArray[i] = rawData.charCodeAt(i);
|
||||
}
|
||||
return outputArray;
|
||||
return base64;
|
||||
}
|
||||
|
||||
if (navigator.serviceWorker == null) {
|
||||
|
|
|
@ -84,7 +84,6 @@ const bound = computed(() => props.link
|
|||
: {});
|
||||
|
||||
const url = computed(() => {
|
||||
if (props.user.avatarUrl == null) return null;
|
||||
if (prefer.s.disableShowingAnimatedImages || prefer.s.dataSaver.avatar) return getStaticImageUrl(props.user.avatarUrl);
|
||||
return props.user.avatarUrl;
|
||||
});
|
||||
|
|
|
@ -54,14 +54,10 @@ router.useListener('change', ({ resolved }) => {
|
|||
if (resolved == null || 'redirect' in resolved.route) return;
|
||||
if (resolved.route.path === currentRoutePath && deepEqual(resolved.props, currentPageProps.value)) return;
|
||||
|
||||
function _() {
|
||||
currentPageComponent.value = resolved.route.component;
|
||||
currentPageProps.value = resolved.props;
|
||||
key.value = router.getCurrentFullPath();
|
||||
currentRoutePath = resolved.route.path;
|
||||
}
|
||||
|
||||
_();
|
||||
currentPageComponent.value = resolved.route.component;
|
||||
currentPageProps.value = resolved.props;
|
||||
key.value = router.getCurrentFullPath();
|
||||
currentRoutePath = resolved.route.path;
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ const timeline = computed(() => {
|
|||
return paginator.items.value.map(x => ({
|
||||
id: x.id,
|
||||
timestamp: new Date(x.createdAt).getTime(),
|
||||
data: x,
|
||||
data: x as Misskey.entities.ModerationLog,
|
||||
}));
|
||||
});
|
||||
|
||||
|
|
|
@ -40,6 +40,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||
|
||||
<script lang="ts" setup>
|
||||
import { ref, computed } from 'vue';
|
||||
import * as Misskey from 'misskey-js';
|
||||
import MkInput from '@/components/MkInput.vue';
|
||||
import FormSection from '@/components/form/section.vue';
|
||||
import MkSwitch from '@/components/MkSwitch.vue';
|
||||
|
@ -61,7 +62,7 @@ const event_reaction = ref(true);
|
|||
const event_mention = ref(true);
|
||||
|
||||
async function create(): Promise<void> {
|
||||
const events: string[] = [];
|
||||
const events = [] as Misskey.entities.UserWebhook['on'];
|
||||
if (event_follow.value) events.push('follow');
|
||||
if (event_followed.value) events.push('followed');
|
||||
if (event_note.value) events.push('note');
|
||||
|
|
|
@ -469,6 +469,8 @@ export class PreferencesManager {
|
|||
return local;
|
||||
} else if (choice === 'merge') {
|
||||
return mergedValue!;
|
||||
} else { // TSを黙らすため
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ export type ModerationLog = {
|
|||
id: ID;
|
||||
createdAt: DateString;
|
||||
userId: User['id'];
|
||||
user: UserDetailedNotMe | null;
|
||||
user: UserDetailedNotMe;
|
||||
} & ({
|
||||
type: 'updateServerSettings';
|
||||
info: ModerationLogPayloads['updateServerSettings'];
|
||||
|
|
Loading…
Reference in New Issue