summaryrefslogtreecommitdiff
path: root/src/server/web/app/dev/views
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-03-29 20:32:18 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-03-29 20:32:18 +0900
commitcf33e483f7e6f40e8cbbbc0118a7df70bdaf651f (patch)
tree318279530d3392ee40d91968477fc0e78d5cf0f7 /src/server/web/app/dev/views
parentUpdate .travis.yml (diff)
downloadsharkey-cf33e483f7e6f40e8cbbbc0118a7df70bdaf651f.tar.gz
sharkey-cf33e483f7e6f40e8cbbbc0118a7df70bdaf651f.tar.bz2
sharkey-cf33e483f7e6f40e8cbbbc0118a7df70bdaf651f.zip
整理した
Diffstat (limited to 'src/server/web/app/dev/views')
-rw-r--r--src/server/web/app/dev/views/app.vue39
-rw-r--r--src/server/web/app/dev/views/apps.vue37
-rw-r--r--src/server/web/app/dev/views/index.vue10
-rw-r--r--src/server/web/app/dev/views/new-app.vue105
-rw-r--r--src/server/web/app/dev/views/ui.vue20
5 files changed, 0 insertions, 211 deletions
diff --git a/src/server/web/app/dev/views/app.vue b/src/server/web/app/dev/views/app.vue
deleted file mode 100644
index a35b032b73..0000000000
--- a/src/server/web/app/dev/views/app.vue
+++ /dev/null
@@ -1,39 +0,0 @@
-<template>
-<mk-ui>
- <p v-if="fetching">読み込み中</p>
- <b-card v-if="!fetching" :header="app.name">
- <b-form-group label="App Secret">
- <b-input :value="app.secret" readonly/>
- </b-form-group>
- </b-card>
-</mk-ui>
-</template>
-
-<script lang="ts">
-import Vue from 'vue';
-export default Vue.extend({
- data() {
- return {
- fetching: true,
- app: null
- };
- },
- watch: {
- $route: 'fetch'
- },
- mounted() {
- this.fetch();
- },
- methods: {
- fetch() {
- this.fetching = true;
- (this as any).api('app/show', {
- appId: this.$route.params.id
- }).then(app => {
- this.app = app;
- this.fetching = false;
- });
- }
- }
-});
-</script>
diff --git a/src/server/web/app/dev/views/apps.vue b/src/server/web/app/dev/views/apps.vue
deleted file mode 100644
index 7e0b107a30..0000000000
--- a/src/server/web/app/dev/views/apps.vue
+++ /dev/null
@@ -1,37 +0,0 @@
-<template>
-<mk-ui>
- <b-card header="アプリを管理">
- <b-button to="/app/new" variant="primary">アプリ作成</b-button>
- <hr>
- <div class="apps">
- <p v-if="fetching">読み込み中</p>
- <template v-if="!fetching">
- <b-alert v-if="apps.length == 0">アプリなし</b-alert>
- <b-list-group v-else>
- <b-list-group-item v-for="app in apps" :key="app.id" :to="`/app/${app.id}`">
- {{ app.name }}
- </b-list-group-item>
- </b-list-group>
- </template>
- </div>
- </b-card>
-</mk-ui>
-</template>
-
-<script lang="ts">
-import Vue from 'vue';
-export default Vue.extend({
- data() {
- return {
- fetching: true,
- apps: []
- };
- },
- mounted() {
- (this as any).api('my/apps').then(apps => {
- this.apps = apps;
- this.fetching = false;
- });
- }
-});
-</script>
diff --git a/src/server/web/app/dev/views/index.vue b/src/server/web/app/dev/views/index.vue
deleted file mode 100644
index 3f572b3907..0000000000
--- a/src/server/web/app/dev/views/index.vue
+++ /dev/null
@@ -1,10 +0,0 @@
-<template>
-<mk-ui>
- <b-button to="/apps" variant="primary">アプリの管理</b-button>
-</mk-ui>
-</template>
-
-<script lang="ts">
-import Vue from 'vue';
-export default Vue.extend();
-</script>
diff --git a/src/server/web/app/dev/views/new-app.vue b/src/server/web/app/dev/views/new-app.vue
deleted file mode 100644
index e407ca00d7..0000000000
--- a/src/server/web/app/dev/views/new-app.vue
+++ /dev/null
@@ -1,105 +0,0 @@
-<template>
-<mk-ui>
- <b-card header="アプリケーションの作成">
- <b-form @submit.prevent="onSubmit" autocomplete="off">
- <b-form-group label="アプリケーション名" description="あなたのアプリの名称。">
- <b-form-input v-model="name" type="text" placeholder="ex) Misskey for iOS" autocomplete="off" required/>
- </b-form-group>
- <b-form-group label="ID" description="あなたのアプリのID。">
- <b-input v-model="nid" type="text" pattern="^[a-zA-Z0-9_]{3,30}$" placeholder="ex) misskey-for-ios" autocomplete="off" required/>
- <p class="info" v-if="nidState == 'wait'" style="color:#999">%fa:spinner .pulse .fw%確認しています...</p>
- <p class="info" v-if="nidState == 'ok'" style="color:#3CB7B5">%fa:fw check%利用できます</p>
- <p class="info" v-if="nidState == 'unavailable'" style="color:#FF1161">%fa:fw exclamation-triangle%既に利用されています</p>
- <p class="info" v-if="nidState == 'error'" style="color:#FF1161">%fa:fw exclamation-triangle%通信エラー</p>
- <p class="info" v-if="nidState == 'invalid-format'" style="color:#FF1161">%fa:fw exclamation-triangle%a~z、A~Z、0~9、_が使えます</p>
- <p class="info" v-if="nidState == 'min-range'" style="color:#FF1161">%fa:fw exclamation-triangle%3文字以上でお願いします!</p>
- <p class="info" v-if="nidState == 'max-range'" style="color:#FF1161">%fa:fw exclamation-triangle%30文字以内でお願いします</p>
- </b-form-group>
- <b-form-group label="アプリの概要" description="あなたのアプリの簡単な説明や紹介。">
- <b-textarea v-model="description" placeholder="ex) Misskey iOSクライアント。" autocomplete="off" required></b-textarea>
- </b-form-group>
- <b-form-group label="コールバックURL (オプション)" description="ユーザーが認証フォームで認証した際にリダイレクトするURLを設定できます。">
- <b-input v-model="cb" type="url" placeholder="ex) https://your.app.example.com/callback.php" autocomplete="off"/>
- </b-form-group>
- <b-card header="権限">
- <b-form-group description="ここで要求した機能だけがAPIからアクセスできます。">
- <b-alert show variant="warning">%fa:exclamation-triangle%アプリ作成後も変更できますが、新たな権限を付与する場合、その時点で関連付けられているユーザーキーはすべて無効になります。</b-alert>
- <b-form-checkbox-group v-model="permission" stacked>
- <b-form-checkbox value="account-read">アカウントの情報を見る。</b-form-checkbox>
- <b-form-checkbox value="account-write">アカウントの情報を操作する。</b-form-checkbox>
- <b-form-checkbox value="post-write">投稿する。</b-form-checkbox>
- <b-form-checkbox value="reaction-write">リアクションしたりリアクションをキャンセルする。</b-form-checkbox>
- <b-form-checkbox value="following-write">フォローしたりフォロー解除する。</b-form-checkbox>
- <b-form-checkbox value="drive-read">ドライブを見る。</b-form-checkbox>
- <b-form-checkbox value="drive-write">ドライブを操作する。</b-form-checkbox>
- <b-form-checkbox value="notification-read">通知を見る。</b-form-checkbox>
- <b-form-checkbox value="notification-write">通知を操作する。</b-form-checkbox>
- </b-form-checkbox-group>
- </b-form-group>
- </b-card>
- <hr>
- <b-button type="submit" variant="primary">アプリ作成</b-button>
- </b-form>
- </b-card>
-</mk-ui>
-</template>
-
-<script lang="ts">
-import Vue from 'vue';
-export default Vue.extend({
- data() {
- return {
- name: '',
- nid: '',
- description: '',
- cb: '',
- nidState: null,
- permission: []
- };
- },
- watch: {
- nid() {
- if (this.nid == null || this.nid == '') {
- this.nidState = null;
- return;
- }
-
- const err =
- !this.nid.match(/^[a-zA-Z0-9\-]+$/) ? 'invalid-format' :
- this.nid.length < 3 ? 'min-range' :
- this.nid.length > 30 ? 'max-range' :
- null;
-
- if (err) {
- this.nidState = err;
- return;
- }
-
- this.nidState = 'wait';
-
- (this as any).api('app/nameId/available', {
- nameId: this.nid
- }).then(result => {
- this.nidState = result.available ? 'ok' : 'unavailable';
- }).catch(err => {
- this.nidState = 'error';
- });
- }
- },
- methods: {
- onSubmit() {
- (this as any).api('app/create', {
- name: this.name,
- nameId: this.nid,
- description: this.description,
- callbackUrl: this.cb,
- permission: this.permission
- }).then(() => {
- location.href = '/apps';
- }).catch(() => {
- alert('アプリの作成に失敗しました。再度お試しください。');
- });
- }
- }
-});
-</script>
diff --git a/src/server/web/app/dev/views/ui.vue b/src/server/web/app/dev/views/ui.vue
deleted file mode 100644
index 4a0fcee635..0000000000
--- a/src/server/web/app/dev/views/ui.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-<template>
-<div>
- <b-navbar toggleable="md" type="dark" variant="info">
- <b-navbar-brand>Misskey Developers</b-navbar-brand>
- <b-navbar-nav>
- <b-nav-item to="/">Home</b-nav-item>
- <b-nav-item to="/apps">Apps</b-nav-item>
- </b-navbar-nav>
- </b-navbar>
- <main>
- <slot></slot>
- </main>
-</div>
-</template>
-
-<style lang="stylus" scoped>
-main
- padding 32px
- max-width 700px
-</style>