diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-09-14 15:25:22 +0900 |
|---|---|---|
| committer | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-09-14 15:25:22 +0900 |
| commit | 2621f468ff7f00c79f8df6500bf17fb75595928c (patch) | |
| tree | f7e0cbd858c5ac2479db4de66aadcb5b2cc69eb4 /packages/frontend/src | |
| parent | refactor(frontend): os.select, MkSelectのitem指定をオブジェクトに... (diff) | |
| download | misskey-2621f468ff7f00c79f8df6500bf17fb75595928c.tar.gz misskey-2621f468ff7f00c79f8df6500bf17fb75595928c.tar.bz2 misskey-2621f468ff7f00c79f8df6500bf17fb75595928c.zip | |
enhance: 広告ごとにセンシティブフラグを設定できるように
Diffstat (limited to 'packages/frontend/src')
| -rw-r--r-- | packages/frontend/src/components/global/MkAd.stories.impl.ts | 3 | ||||
| -rw-r--r-- | packages/frontend/src/pages/admin/ads.vue | 16 |
2 files changed, 18 insertions, 1 deletions
diff --git a/packages/frontend/src/components/global/MkAd.stories.impl.ts b/packages/frontend/src/components/global/MkAd.stories.impl.ts index 07e06a6897..6110dae7c5 100644 --- a/packages/frontend/src/components/global/MkAd.stories.impl.ts +++ b/packages/frontend/src/components/global/MkAd.stories.impl.ts @@ -2,7 +2,7 @@ * SPDX-FileCopyrightText: syuilo and misskey-project * SPDX-License-Identifier: AGPL-3.0-only */ - + import { expect, userEvent, waitFor, within } from '@storybook/test'; import MkAd from './MkAd.vue'; import type { StoryObj } from '@storybook/vue3'; @@ -75,6 +75,7 @@ const common = { place: '', imageUrl: '', dayOfWeek: 7, + isSensitive: false, }, }, parameters: { diff --git a/packages/frontend/src/pages/admin/ads.vue b/packages/frontend/src/pages/admin/ads.vue index 17008e0c13..94940a84ae 100644 --- a/packages/frontend/src/pages/admin/ads.vue +++ b/packages/frontend/src/pages/admin/ads.vue @@ -9,21 +9,26 @@ SPDX-License-Identifier: AGPL-3.0-only <MkSelect v-model="filterType" :items="filterTypeDef" :class="$style.input" @update:modelValue="filterItems"> <template #label>{{ i18n.ts.state }}</template> </MkSelect> + <div> <div v-for="ad in ads" class="_panel _gaps_m" :class="$style.ad"> <MkAd v-if="ad.url" :key="ad.id" :specify="ad"/> + <MkInput v-model="ad.url" type="url"> <template #label>URL</template> </MkInput> + <MkInput v-model="ad.imageUrl" type="url"> <template #label>{{ i18n.ts.imageUrl }}</template> </MkInput> + <MkRadios v-model="ad.place"> <template #label>Form</template> <option value="square">square</option> <option value="horizontal">horizontal</option> <option value="horizontal-big">horizontal-big</option> </MkRadios> + <!-- <div style="margin: 32px 0;"> {{ i18n.ts.priority }} @@ -32,6 +37,7 @@ SPDX-License-Identifier: AGPL-3.0-only <MkRadio v-model="ad.priority" value="low">{{ i18n.ts.low }}</MkRadio> </div> --> + <FormSplit> <MkInput v-model="ad.ratio" type="number"> <template #label>{{ i18n.ts.ratio }}</template> @@ -43,6 +49,11 @@ SPDX-License-Identifier: AGPL-3.0-only <template #label>{{ i18n.ts.expiration }}</template> </MkInput> </FormSplit> + + <MkSwitch v-model="ad.isSensitive"> + <template #label>{{ i18n.ts.sensitive }}</template> + </MkSwitch> + <MkFolder> <template #label>{{ i18n.ts.advancedSettings }}</template> <span> @@ -56,9 +67,11 @@ SPDX-License-Identifier: AGPL-3.0-only </div> </span> </MkFolder> + <MkTextarea v-model="ad.memo"> <template #label>{{ i18n.ts.memo }}</template> </MkTextarea> + <div class="_buttons"> <MkButton inline primary style="margin-right: 12px;" @click="save(ad)"> <i @@ -70,6 +83,7 @@ SPDX-License-Identifier: AGPL-3.0-only </MkButton> </div> </div> + <MkButton @click="more()"> <i class="ti ti-reload"></i>{{ i18n.ts.more }} </MkButton> @@ -88,6 +102,7 @@ import MkRadios from '@/components/MkRadios.vue'; import MkFolder from '@/components/MkFolder.vue'; import MkSelect from '@/components/MkSelect.vue'; import FormSplit from '@/components/form/split.vue'; +import MkSwitch from '@/components/MkSwitch.vue'; import * as os from '@/os.js'; import { misskeyApi } from '@/utility/misskey-api.js'; import { i18n } from '@/i18n.js'; @@ -158,6 +173,7 @@ function add() { expiresAt: new Date().toISOString(), startsAt: new Date().toISOString(), dayOfWeek: 0, + isSensitive: false, }); } |