Merge branch 'develop'
This commit is contained in:
		
						commit
						8accb78fa9
					
				|  | @ -1,7 +1,7 @@ | |||
| { | ||||
| 	"name": "misskey", | ||||
| 	"author": "syuilo <syuilotan@yahoo.co.jp>", | ||||
| 	"version": "12.80.2", | ||||
| 	"version": "12.80.3", | ||||
| 	"codename": "indigo", | ||||
| 	"repository": { | ||||
| 		"type": "git", | ||||
|  | @ -255,6 +255,7 @@ | |||
| 		"xev": "2.0.1" | ||||
| 	}, | ||||
| 	"devDependencies": { | ||||
| 		"@redocly/openapi-core": "1.0.0-beta.44", | ||||
| 		"@types/chai": "4.2.16", | ||||
| 		"@types/fluent-ffmpeg": "2.1.17", | ||||
| 		"chai": "4.3.4", | ||||
|  |  | |||
|  | @ -92,7 +92,7 @@ export default defineComponent({ | |||
| 					return [h(MkAd, { | ||||
| 						class: 'a', // advertiseの意(ブロッカー対策) | ||||
| 						key: item.id + ':ad', | ||||
| 						prefer: 'horizontal', | ||||
| 						prefer: ['horizontal', 'horizontal-big'], | ||||
| 					}), el]; | ||||
| 				} else { | ||||
| 					return el; | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ export default defineComponent({ | |||
| 
 | ||||
| 	props: { | ||||
| 		prefer: { | ||||
| 			type: String, | ||||
| 			type: Array, | ||||
| 			required: true | ||||
| 		}, | ||||
| 		specify: { | ||||
|  | @ -50,7 +50,7 @@ export default defineComponent({ | |||
| 		if (props.specify) { | ||||
| 			ad = props.specify; | ||||
| 		} else { | ||||
| 			let ads = instance.ads.filter(ad => ad.place === props.prefer); | ||||
| 			let ads = instance.ads.filter(ad => props.prefer.includes(ad.place)); | ||||
| 
 | ||||
| 			if (ads.length === 0) { | ||||
| 				ads = instance.ads.filter(ad => ad.place === 'square'); | ||||
|  | @ -130,6 +130,16 @@ export default defineComponent({ | |||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		&.horizontal-big { | ||||
| 			padding: 8px; | ||||
| 
 | ||||
| 			> a , | ||||
| 			> a > img { | ||||
| 				max-width: min(600px, 100%); | ||||
| 				max-height: 250px; | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		&.vertical { | ||||
| 			> a , | ||||
| 			> a > img { | ||||
|  |  | |||
|  | @ -33,7 +33,7 @@ | |||
| 					<MkFollowButton v-if="!$i || $i.id != post.user.id" :user="post.user" :inline="true" :transparent="false" :full="true" large class="koudoku"/> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 			<MkAd prefer="horizontal"/> | ||||
| 			<MkAd :prefer="['horizontal', 'horizontal-big']"/> | ||||
| 			<MkContainer :max-height="300" :foldable="true" class="other"> | ||||
| 				<template #header><i class="fas fa-clock"></i> {{ $ts.recentPosts }}</template> | ||||
| 				<MkPagination :pagination="otherPostsPagination" #default="{items}"> | ||||
|  |  | |||
|  | @ -13,6 +13,7 @@ | |||
| 			<div style="margin: 32px 0;"> | ||||
| 				<MkRadio v-model="ad.place" value="square">square</MkRadio> | ||||
| 				<MkRadio v-model="ad.place" value="horizontal">horizontal</MkRadio> | ||||
| 				<MkRadio v-model="ad.place" value="horizontal-big">horizontal-big</MkRadio> | ||||
| 			</div> | ||||
| 			<div style="margin: 32px 0;"> | ||||
| 				{{ $ts.priority }} | ||||
|  |  | |||
|  | @ -45,7 +45,7 @@ | |||
| 				<div><i class="far fa-clock"></i> {{ $ts.createdAt }}: <MkTime :time="page.createdAt" mode="detail"/></div> | ||||
| 				<div v-if="page.createdAt != page.updatedAt"><i class="far fa-clock"></i> {{ $ts.updatedAt }}: <MkTime :time="page.updatedAt" mode="detail"/></div> | ||||
| 			</div> | ||||
| 			<MkAd prefer="horizontal"/> | ||||
| 			<MkAd :prefer="['horizontal', 'horizontal-big']"/> | ||||
| 			<MkContainer :max-height="300" :foldable="true" class="other"> | ||||
| 				<template #header><i class="fas fa-clock"></i> {{ $ts.recentPosts }}</template> | ||||
| 				<MkPagination :pagination="otherPostsPagination" #default="{items}"> | ||||
|  |  | |||
|  | @ -1,7 +1,7 @@ | |||
| <template> | ||||
| <div class="ddiqwdnk"> | ||||
| 	<XWidgets class="widgets" :edit="editMode" :widgets="$store.reactiveState.widgets.value" @add-widget="addWidget" @remove-widget="removeWidget" @update-widget="updateWidget" @update-widgets="updateWidgets" @exit="editMode = false"/> | ||||
| 	<MkAd class="ad" prefer="square"/> | ||||
| 	<MkAd class="a" prefer="square"/> | ||||
| 
 | ||||
| 	<button v-if="editMode" @click="editMode = false" class="_textButton edit" style="font-size: 0.9em;"><i class="fas fa-check"></i> {{ $ts.editWidgetsExit }}</button> | ||||
| 	<button v-else @click="editMode = true" class="_textButton edit" style="font-size: 0.9em;"><i class="fas fa-pencil-alt"></i> {{ $ts.editWidgets }}</button> | ||||
|  | @ -64,7 +64,7 @@ export default defineComponent({ | |||
| 	padding-bottom: 8px; | ||||
| 
 | ||||
| 	> .widgets, | ||||
| 	> .ad { | ||||
| 	> .a { | ||||
| 		width: 300px; | ||||
| 	} | ||||
| 
 | ||||
|  |  | |||
|  | @ -20,6 +20,7 @@ import { packedAntennaSchema } from '../../../models/repositories/antenna'; | |||
| import { packedClipSchema } from '../../../models/repositories/clip'; | ||||
| import { packedFederationInstanceSchema } from '../../../models/repositories/federation-instance'; | ||||
| import { packedQueueCountSchema } from '../../../models/repositories/queue'; | ||||
| import { packedGalleryPostSchema } from '@/models/repositories/gallery-post'; | ||||
| 
 | ||||
| export function convertSchemaToOpenApiSchema(schema: Schema) { | ||||
| 	const res: any = schema; | ||||
|  | @ -92,4 +93,5 @@ export const schemas = { | |||
| 	Antenna: convertSchemaToOpenApiSchema(packedAntennaSchema), | ||||
| 	Clip: convertSchemaToOpenApiSchema(packedClipSchema), | ||||
| 	FederationInstance: convertSchemaToOpenApiSchema(packedFederationInstanceSchema), | ||||
| 	GalleryPost: convertSchemaToOpenApiSchema(packedGalleryPostSchema), | ||||
| }; | ||||
|  |  | |||
|  | @ -12,7 +12,8 @@ process.env.NODE_ENV = 'test'; | |||
| 
 | ||||
| import * as assert from 'assert'; | ||||
| import * as childProcess from 'child_process'; | ||||
| import { async, launchServer, signup, post, request, simpleGet } from './utils'; | ||||
| import { async, launchServer, signup, post, request, simpleGet, port } from './utils'; | ||||
| import * as openapi from '@redocly/openapi-core'; | ||||
| 
 | ||||
| // Request Accept
 | ||||
| const ONLY_AP = 'application/activity+json'; | ||||
|  | @ -74,6 +75,20 @@ describe('Fetch resource', () => { | |||
| 			assert.strictEqual(res.type, JSON); | ||||
| 		})); | ||||
| 
 | ||||
| 		it('Validate api.json', async(async () => { | ||||
| 			const config = await openapi.loadConfig(); | ||||
| 			const result = await openapi.bundle({ | ||||
| 				config, | ||||
| 				ref: `http://localhost:${port}/api.json` | ||||
| 			}); | ||||
| 
 | ||||
| 			for (const problem of result.problems) { | ||||
| 				console.log(`${problem.message} - ${problem.location[0]?.pointer}`); | ||||
| 			} | ||||
| 
 | ||||
| 			assert.strictEqual(result.problems.length, 0); | ||||
| 		})); | ||||
| 
 | ||||
| 		it('GET favicon.ico', async(async () => { | ||||
| 			const res = await simpleGet('/favicon.ico'); | ||||
| 			assert.strictEqual(res.status, 200); | ||||
|  |  | |||
|  | @ -6,7 +6,7 @@ import * as childProcess from 'child_process'; | |||
| import * as http from 'http'; | ||||
| import loadConfig from '../src/config/load'; | ||||
| 
 | ||||
| const port = loadConfig().port; | ||||
| export const port = loadConfig().port; | ||||
| 
 | ||||
| export const async = (fn: Function) => (done: Function) => { | ||||
| 	fn().then(() => { | ||||
|  |  | |||
							
								
								
									
										73
									
								
								yarn.lock
								
								
								
								
							
							
						
						
									
										73
									
								
								yarn.lock
								
								
								
								
							|  | @ -287,6 +287,31 @@ | |||
|     "@nodelib/fs.scandir" "2.1.3" | ||||
|     fastq "^1.6.0" | ||||
| 
 | ||||
| "@redocly/ajv@^6.12.3": | ||||
|   version "6.12.4" | ||||
|   resolved "https://registry.yarnpkg.com/@redocly/ajv/-/ajv-6.12.4.tgz#b131c9c11d1bdaa5564f69bcaefe10a4c9a5aa65" | ||||
|   integrity sha512-RB6vWO78v6c+SW/3bZh+XZMr4nGdJKAiPGsBALuUZnLuCiQ7aXCT1AuFHqnfS2gyXbEUEj+kw8p4ux8KdAfs3A== | ||||
|   dependencies: | ||||
|     fast-deep-equal "^3.1.1" | ||||
|     fast-json-stable-stringify "^2.0.0" | ||||
|     json-schema-traverse "^0.4.1" | ||||
|     uri-js "^4.2.2" | ||||
| 
 | ||||
| "@redocly/openapi-core@1.0.0-beta.44": | ||||
|   version "1.0.0-beta.44" | ||||
|   resolved "https://registry.yarnpkg.com/@redocly/openapi-core/-/openapi-core-1.0.0-beta.44.tgz#e9a6c50ee2bb18e93b3439ed92c53e440de3aa7a" | ||||
|   integrity sha512-9HNnh1MzvMsLK1liuidFBqWiAsZ2Yg3RY58fcEsy0QruSMdDbn7SoeI1qnXe6O+BkBS+vAP4oVzZDMHCMKGsOQ== | ||||
|   dependencies: | ||||
|     "@redocly/ajv" "^6.12.3" | ||||
|     "@types/node" "^14.11.8" | ||||
|     colorette "^1.2.0" | ||||
|     js-levenshtein "^1.1.6" | ||||
|     js-yaml "^3.14.0" | ||||
|     lodash.isequal "^4.5.0" | ||||
|     minimatch "^3.0.4" | ||||
|     node-fetch "^2.6.1" | ||||
|     yaml-ast-parser "0.0.43" | ||||
| 
 | ||||
| "@sentry/browser@5.29.2": | ||||
|   version "5.29.2" | ||||
|   resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-5.29.2.tgz#51adb4005511b1a4a70e4571880fc6653d651f91" | ||||
|  | @ -849,6 +874,11 @@ | |||
|   resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.41.tgz#d0b939d94c1d7bd53d04824af45f1139b8c45615" | ||||
|   integrity sha512-dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g== | ||||
| 
 | ||||
| "@types/node@^14.11.8": | ||||
|   version "14.14.44" | ||||
|   resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.44.tgz#df7503e6002847b834371c004b372529f3f85215" | ||||
|   integrity sha512-+gaugz6Oce6ZInfI/tK4Pq5wIIkJMEJUu92RB3Eu93mtj4wjjjz9EB5mLp5s1pSsLXdC/CPut/xF20ZzAQJbTA== | ||||
| 
 | ||||
| "@types/nodemailer@6.4.1": | ||||
|   version "6.4.1" | ||||
|   resolved "https://registry.yarnpkg.com/@types/nodemailer/-/nodemailer-6.4.1.tgz#31f96f4410632f781d3613bd1f4293649e423f75" | ||||
|  | @ -2790,7 +2820,7 @@ color@^3.1.1, color@^3.1.3: | |||
|     color-convert "^1.9.1" | ||||
|     color-string "^1.5.4" | ||||
| 
 | ||||
| colorette@^1.2.1, colorette@^1.2.2: | ||||
| colorette@^1.2.0, colorette@^1.2.1, colorette@^1.2.2: | ||||
|   version "1.2.2" | ||||
|   resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" | ||||
|   integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== | ||||
|  | @ -5757,6 +5787,11 @@ js-beautify@^1.6.12: | |||
|     mkdirp "~1.0.3" | ||||
|     nopt "^4.0.3" | ||||
| 
 | ||||
| js-levenshtein@^1.1.6: | ||||
|   version "1.1.6" | ||||
|   resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" | ||||
|   integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g== | ||||
| 
 | ||||
| js-sha3@0.8.0: | ||||
|   version "0.8.0" | ||||
|   resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" | ||||
|  | @ -5794,6 +5829,14 @@ js-yaml@^3.13.1: | |||
|     argparse "^1.0.7" | ||||
|     esprima "^4.0.0" | ||||
| 
 | ||||
| js-yaml@^3.14.0: | ||||
|   version "3.14.1" | ||||
|   resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" | ||||
|   integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== | ||||
|   dependencies: | ||||
|     argparse "^1.0.7" | ||||
|     esprima "^4.0.0" | ||||
| 
 | ||||
| js-yaml@~3.7.0: | ||||
|   version "3.7.0" | ||||
|   resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" | ||||
|  | @ -6360,6 +6403,11 @@ lodash.foreach@^4.3.0: | |||
|   resolved "https://registry.yarnpkg.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz#1a6a35eace401280c7f06dddec35165ab27e3e53" | ||||
|   integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= | ||||
| 
 | ||||
| lodash.isequal@^4.5.0: | ||||
|   version "4.5.0" | ||||
|   resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" | ||||
|   integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= | ||||
| 
 | ||||
| lodash.isfinite@^3.3.2: | ||||
|   version "3.3.2" | ||||
|   resolved "https://registry.yarnpkg.com/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz#fb89b65a9a80281833f0b7478b3a5104f898ebb3" | ||||
|  | @ -6966,7 +7014,7 @@ node-addon-api@^3.1.0: | |||
|   resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.1.0.tgz#98b21931557466c6729e51cb77cd39c965f42239" | ||||
|   integrity sha512-flmrDNB06LIl5lywUz7YlNGZH/5p0M7W28k8hzd9Lshtdh1wshD2Y+U4h9LD6KObOy1f+fEVdgprPrEymjM5uw== | ||||
| 
 | ||||
| node-fetch@2.6.1: | ||||
| node-fetch@2.6.1, node-fetch@^2.6.1: | ||||
|   version "2.6.1" | ||||
|   resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" | ||||
|   integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== | ||||
|  | @ -11381,6 +11429,11 @@ yallist@^4.0.0: | |||
|   resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" | ||||
|   integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== | ||||
| 
 | ||||
| yaml-ast-parser@0.0.43: | ||||
|   version "0.0.43" | ||||
|   resolved "https://registry.yarnpkg.com/yaml-ast-parser/-/yaml-ast-parser-0.0.43.tgz#e8a23e6fb4c38076ab92995c5dca33f3d3d7c9bb" | ||||
|   integrity sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A== | ||||
| 
 | ||||
| yaml@^1.10.0: | ||||
|   version "1.10.0" | ||||
|   resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" | ||||
|  | @ -11400,14 +11453,6 @@ yargs-parser@20.2.4, yargs-parser@^20.2.2: | |||
|   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" | ||||
|   integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== | ||||
| 
 | ||||
| yargs-parser@5.0.0-security.0, yargs-parser@^5.0.0: | ||||
|   version "5.0.0-security.0" | ||||
|   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz#4ff7271d25f90ac15643b86076a2ab499ec9ee24" | ||||
|   integrity sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ== | ||||
|   dependencies: | ||||
|     camelcase "^3.0.0" | ||||
|     object.assign "^4.1.0" | ||||
| 
 | ||||
| yargs-parser@>=5.0.0-security.0: | ||||
|   version "20.2.7" | ||||
|   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" | ||||
|  | @ -11421,6 +11466,14 @@ yargs-parser@^13.1.2: | |||
|     camelcase "^5.0.0" | ||||
|     decamelize "^1.2.0" | ||||
| 
 | ||||
| yargs-parser@^5.0.0: | ||||
|   version "5.0.1" | ||||
|   resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.1.tgz#7ede329c1d8cdbbe209bd25cdb990e9b1ebbb394" | ||||
|   integrity sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA== | ||||
|   dependencies: | ||||
|     camelcase "^3.0.0" | ||||
|     object.assign "^4.1.0" | ||||
| 
 | ||||
| yargs-unparser@2.0.0: | ||||
|   version "2.0.0" | ||||
|   resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue