mirror of
https://github.com/misskey-dev/misskey.git
synced 2026-06-25 17:10:43 +00:00
wip
This commit is contained in:
parent
748b571856
commit
b8f67a3e69
2 changed files with 238 additions and 2 deletions
|
|
@ -5,11 +5,11 @@
|
|||
|
||||
import type { GetOptionsSchemaUiDef, OptionsSchema } from './object.js';
|
||||
|
||||
type UiDef<OpSc extends OptionsSchema = OptionsSchema> = {
|
||||
export type ObjectUiDef<OpSc extends OptionsSchema = OptionsSchema> = {
|
||||
name: string;
|
||||
options: GetOptionsSchemaUiDef<OpSc>;
|
||||
};
|
||||
|
||||
export function defineObjectUi<const Def extends { options: { schema: OptionsSchema } }>(def: UiDef<Def['options']['schema']>): UiDef<Def['options']['schema']> {
|
||||
export function defineObjectUi<const Def extends { options: { schema: OptionsSchema } }>(def: ObjectUiDef<Def['options']['schema']>): ObjectUiDef<Def['options']['schema']> {
|
||||
return def;
|
||||
}
|
||||
|
|
|
|||
236
packages/frontend/src/world/room/object-ui-defs.ts
Normal file
236
packages/frontend/src/world/room/object-ui-defs.ts
Normal file
|
|
@ -0,0 +1,236 @@
|
|||
/*
|
||||
* SPDX-FileCopyrightText: syuilo and misskey-project
|
||||
* SPDX-License-Identifier: AGPL-3.0-only
|
||||
*/
|
||||
|
||||
import { a4Case_ui } from './objects/a4Case.ui.js';
|
||||
import { aircon_ui } from './objects/aircon.ui.js';
|
||||
import { allInOnePc_ui } from './objects/allInOnePc.ui.js';
|
||||
import { aquarium_ui } from './objects/aquarium.ui.js';
|
||||
import { aromaReedDiffuser_ui } from './objects/aromaReedDiffuser.ui.js';
|
||||
import { banknote_ui } from './objects/banknote.ui.js';
|
||||
import { beamLamp_ui } from './objects/beamLamp.ui.js';
|
||||
import { bed_ui } from './objects/bed.ui.js';
|
||||
import { blind_ui } from './objects/blind.ui.js';
|
||||
import { book_ui } from './objects/book.ui.js';
|
||||
import { books_ui } from './objects/books.ui.js';
|
||||
import { boxWallShelf_ui } from './objects/boxWallShelf.ui.js';
|
||||
import { cactusS_ui } from './objects/cactusS.ui.js';
|
||||
import { cardboardBox_ui } from './objects/cardboardBox.ui.js';
|
||||
import { ceilingFanLight_ui } from './objects/ceilingFanLight.ui.js';
|
||||
import { chair_ui } from './objects/chair.ui.js';
|
||||
import { clippedPicture_ui } from './objects/clippedPicture.ui.js';
|
||||
import { coffeeCup_ui } from './objects/coffeeCup.ui.js';
|
||||
import { colorBox_ui } from './objects/colorBox.ui.js';
|
||||
import { cuboid_ui } from './objects/cuboid.ui.js';
|
||||
import { cupNoodle_ui } from './objects/cupNoodle.ui.js';
|
||||
import { curtain_ui } from './objects/curtain.ui.js';
|
||||
import { custardPudding_ui } from './objects/custardPudding.ui.js';
|
||||
import { descriptionPlate_ui } from './objects/descriptionPlate.ui.js';
|
||||
import { desk_ui } from './objects/desk.ui.js';
|
||||
import { desktopPc_ui } from './objects/desktopPc.ui.js';
|
||||
import { djMixer_ui } from './objects/djMixer.ui.js';
|
||||
import { djPlayer_ui } from './objects/djPlayer.ui.js';
|
||||
import { ductRailSpotLights_ui } from './objects/ductRailSpotLights.ui.js';
|
||||
import { ductTape_ui } from './objects/ductTape.ui.js';
|
||||
import { electronicDisplayBoard_ui } from './objects/electronicDisplayBoard.ui.js';
|
||||
import { emptyBento_ui } from './objects/emptyBento.ui.js';
|
||||
import { energyDrink_ui } from './objects/energyDrink.ui.js';
|
||||
import { envelope_ui } from './objects/envelope.ui.js';
|
||||
import { facialTissue_ui } from './objects/facialTissue.ui.js';
|
||||
import { glassCylinderPotPlant_ui } from './objects/glassCylinderPotPlant.ui.js';
|
||||
import { handheldGameConsole_ui } from './objects/handheldGameConsole.ui.js';
|
||||
import { hangingDuctRail_ui } from './objects/hangingDuctRail.ui.js';
|
||||
import { hangingTShirt_ui } from './objects/hangingTShirt.ui.js';
|
||||
import { icosahedron_ui } from './objects/icosahedron.ui.js';
|
||||
import { ironFrameShelf5_ui, ironFrameShelf4_ui, ironFrameShelf3_ui } from './objects/ironFrameShelf.ui.js';
|
||||
import { ironFrameTable_ui } from './objects/ironFrameTable.ui.js';
|
||||
import { issyoubin_ui } from './objects/issyoubin.ui.js';
|
||||
import { keyboard_ui } from './objects/keyboard.ui.js';
|
||||
import { laptopPc_ui } from './objects/laptopPc.ui.js';
|
||||
import { largeMousepad_ui } from './objects/largeMousepad.ui.js';
|
||||
import { lavaLamp_ui } from './objects/lavaLamp.ui.js';
|
||||
import { letterCase_ui } from './objects/letterCase.ui.js';
|
||||
import { lowPartitionBar_ui } from './objects/lowPartitionBar.ui.js';
|
||||
import { miObjet_ui } from './objects/mi-objet.ui.js';
|
||||
import { milk_ui } from './objects/milk.ui.js';
|
||||
import { miPlate_ui } from './objects/miPlate.ui.js';
|
||||
import { miPlateDisplayed_ui } from './objects/miPlateDisplayed.ui.js';
|
||||
import { mixer_ui } from './objects/mixer.ui.js';
|
||||
import { monitor_ui } from './objects/monitor.ui.js';
|
||||
import { monitorSpeaker_ui } from './objects/monitorSpeaker.ui.js';
|
||||
import { monstera_ui } from './objects/monstera.ui.js';
|
||||
import { mug_ui } from './objects/mug.ui.js';
|
||||
import { newtonsCradle_ui } from './objects/newtonsCradle.ui.js';
|
||||
import { openedCardboardBox_ui } from './objects/openedCardboardBox.ui.js';
|
||||
import { pachira_ui } from './objects/pachira.ui.js';
|
||||
import { petBottle_ui } from './objects/petBottle.ui.js';
|
||||
import { piano_ui } from './objects/piano.ui.js';
|
||||
import { pictureFrame_ui } from './objects/pictureFrame.ui.js';
|
||||
import { pizza_ui } from './objects/pizza.ui.js';
|
||||
import { plant_ui } from './objects/plant.ui.js';
|
||||
import { plant2_ui } from './objects/plant2.ui.js';
|
||||
import { poster_ui } from './objects/poster.ui.js';
|
||||
import { powerStrip_ui } from './objects/powerStrip.ui.js';
|
||||
import { radiometer_ui } from './objects/radiometer.ui.js';
|
||||
import { randomBooks_ui } from './objects/randomBooks.ui.js';
|
||||
import { recordPlayer_ui } from './objects/recordPlayer.ui.js';
|
||||
import { rolledUpPoster_ui } from './objects/rolledUpPoster.ui.js';
|
||||
import { roundRug_ui } from './objects/roundRug.ui.js';
|
||||
import { router_ui } from './objects/router.ui.js';
|
||||
import { siphon_ui } from './objects/siphon.ui.js';
|
||||
import { snakeplant_ui } from './objects/snakeplant.ui.js';
|
||||
import { sofa_ui } from './objects/sofa.ui.js';
|
||||
import { speaker_ui } from './objects/speaker.ui.js';
|
||||
import { speakerStand_ui } from './objects/speakerStand.ui.js';
|
||||
import { spotLight_ui } from './objects/spotLight.ui.js';
|
||||
import { sprayer_ui } from './objects/sprayer.ui.js';
|
||||
import { stanchionPole_ui } from './objects/stanchionPole.ui.js';
|
||||
import { steelRack_ui } from './objects/steelRack.ui.js';
|
||||
import { stormGlass_ui } from './objects/stormGlass.ui.js';
|
||||
import { tableSalt_ui } from './objects/tableSalt.ui.js';
|
||||
import { tabletopCalendar_ui } from './objects/tabletopCalendar.ui.js';
|
||||
import { tabletopDigitalClock_ui } from './objects/tabletopDigitalClock.ui.js';
|
||||
import { tabletopFlag_ui } from './objects/tabletopFlag.ui.js';
|
||||
import { tabletopGlassPictureFrame_ui } from './objects/tabletopGlassPictureFrame.ui.js';
|
||||
import { tabletopIronFrameStand_ui } from './objects/tabletopIronFrameStand.ui.js';
|
||||
import { tabletopLcdButtonsController_ui } from './objects/tabletopLcdButtonsController.ui.js';
|
||||
import { tabletopPictureFrame_ui } from './objects/tabletopPictureFrame.ui.js';
|
||||
import { tapestry_ui } from './objects/tapestry.ui.js';
|
||||
import { tetrapod_ui } from './objects/tetrapod.ui.js';
|
||||
import { tv_ui } from './objects/tv.ui.js';
|
||||
import { twistedCubeObjet_ui } from './objects/twistedCubeObjet.ui.js';
|
||||
import { usedTissue_ui } from './objects/usedTissue.ui.js';
|
||||
import { wallCanvas_ui } from './objects/wallCanvas.ui.js';
|
||||
import { wallClock_ui } from './objects/wallClock.ui.js';
|
||||
import { wallGlassPictureFrame_ui } from './objects/wallGlassPictureFrame.ui.js';
|
||||
import { wallMirror_ui } from './objects/wallMirror.ui.js';
|
||||
import { wallMountSpotLight_ui } from './objects/wallMountSpotLight.ui.js';
|
||||
import { wallShelf_ui } from './objects/wallShelf.ui.js';
|
||||
import { wireBasket_ui } from './objects/wireBasket.ui.js';
|
||||
import { wireNet_ui } from './objects/wireNet.ui.js';
|
||||
import { woodRingFloorLamp_ui } from './objects/woodRingFloorLamp.ui.js';
|
||||
import { woodRingsPendantLight_ui } from './objects/woodRingsPendantLight.ui.js';
|
||||
import { woodSoundAbsorbingPanel_ui } from './objects/woodSoundAbsorbingPanel.ui.js';
|
||||
import type { ObjectUiDef } from './defineObjectUi.js';
|
||||
|
||||
export const OBJECT_UI_DEFS = {
|
||||
a4Case: a4Case_ui,
|
||||
aircon: aircon_ui,
|
||||
allInOnePc: allInOnePc_ui,
|
||||
aquarium: aquarium_ui,
|
||||
aromaReedDiffuser: aromaReedDiffuser_ui,
|
||||
banknote: banknote_ui,
|
||||
beamLamp: beamLamp_ui,
|
||||
bed: bed_ui,
|
||||
blind: blind_ui,
|
||||
books: books_ui,
|
||||
boxWallShelf: boxWallShelf_ui,
|
||||
cactusS: cactusS_ui,
|
||||
cardboardBox: cardboardBox_ui,
|
||||
ceilingFanLight: ceilingFanLight_ui,
|
||||
chair: chair_ui,
|
||||
coffeeCup: coffeeCup_ui,
|
||||
colorBox: colorBox_ui,
|
||||
cuboid: cuboid_ui,
|
||||
cupNoodle: cupNoodle_ui,
|
||||
custardPudding: custardPudding_ui,
|
||||
desk: desk_ui,
|
||||
desktopPc: desktopPc_ui,
|
||||
djMixer: djMixer_ui,
|
||||
djPlayer: djPlayer_ui,
|
||||
ductRailSpotLights: ductRailSpotLights_ui,
|
||||
ductTape: ductTape_ui,
|
||||
electronicDisplayBoard: electronicDisplayBoard_ui,
|
||||
emptyBento: emptyBento_ui,
|
||||
energyDrink: energyDrink_ui,
|
||||
envelope: envelope_ui,
|
||||
facialTissue: facialTissue_ui,
|
||||
glassCylinderPotPlant: glassCylinderPotPlant_ui,
|
||||
hangingTShirt: hangingTShirt_ui,
|
||||
icosahedron: icosahedron_ui,
|
||||
ironFrameShelf5: ironFrameShelf5_ui,
|
||||
ironFrameShelf4: ironFrameShelf4_ui,
|
||||
ironFrameShelf3: ironFrameShelf3_ui,
|
||||
ironFrameTable: ironFrameTable_ui,
|
||||
issyoubin: issyoubin_ui,
|
||||
keyboard: keyboard_ui,
|
||||
laptopPc: laptopPc_ui,
|
||||
largeMousepad: largeMousepad_ui,
|
||||
lavaLamp: lavaLamp_ui,
|
||||
letterCase: letterCase_ui,
|
||||
miObjet: miObjet_ui,
|
||||
milk: milk_ui,
|
||||
miPlate: miPlate_ui,
|
||||
miPlateDisplayed: miPlateDisplayed_ui,
|
||||
mixer: mixer_ui,
|
||||
monitor: monitor_ui,
|
||||
monitorSpeaker: monitorSpeaker_ui,
|
||||
monstera: monstera_ui,
|
||||
mug: mug_ui,
|
||||
newtonsCradle: newtonsCradle_ui,
|
||||
openedCardboardBox: openedCardboardBox_ui,
|
||||
pachira: pachira_ui,
|
||||
petBottle: petBottle_ui,
|
||||
piano: piano_ui,
|
||||
pictureFrame: pictureFrame_ui,
|
||||
pizza: pizza_ui,
|
||||
plant: plant_ui,
|
||||
plant2: plant2_ui,
|
||||
poster: poster_ui,
|
||||
powerStrip: powerStrip_ui,
|
||||
radiometer: radiometer_ui,
|
||||
randomBooks: randomBooks_ui,
|
||||
recordPlayer: recordPlayer_ui,
|
||||
rolledUpPoster: rolledUpPoster_ui,
|
||||
roundRug: roundRug_ui,
|
||||
router: router_ui,
|
||||
siphon: siphon_ui,
|
||||
snakeplant: snakeplant_ui,
|
||||
sofa: sofa_ui,
|
||||
speaker: speaker_ui,
|
||||
speakerStand: speakerStand_ui,
|
||||
sprayer: sprayer_ui,
|
||||
steelRack: steelRack_ui,
|
||||
stormGlass: stormGlass_ui,
|
||||
tableSalt: tableSalt_ui,
|
||||
tabletopCalendar: tabletopCalendar_ui,
|
||||
tabletopDigitalClock: tabletopDigitalClock_ui,
|
||||
tabletopFlag: tabletopFlag_ui,
|
||||
tabletopGlassPictureFrame: tabletopGlassPictureFrame_ui,
|
||||
tabletopIronFrameStand: tabletopIronFrameStand_ui,
|
||||
tabletopPictureFrame: tabletopPictureFrame_ui,
|
||||
tabletopLcdButtonsController: tabletopLcdButtonsController_ui,
|
||||
tapestry: tapestry_ui,
|
||||
tetrapod: tetrapod_ui,
|
||||
tv: tv_ui,
|
||||
twistedCubeObjet: twistedCubeObjet_ui,
|
||||
usedTissue: usedTissue_ui,
|
||||
wallCanvas: wallCanvas_ui,
|
||||
wallClock: wallClock_ui,
|
||||
wallGlassPictureFrame: wallGlassPictureFrame_ui,
|
||||
wallMirror: wallMirror_ui,
|
||||
wallMountSpotLight: wallMountSpotLight_ui,
|
||||
wallShelf: wallShelf_ui,
|
||||
woodRingFloorLamp: woodRingFloorLamp_ui,
|
||||
woodRingsPendantLight: woodRingsPendantLight_ui,
|
||||
woodSoundAbsorbingPanel: woodSoundAbsorbingPanel_ui,
|
||||
hangingDuctRail: hangingDuctRail_ui,
|
||||
spotLight: spotLight_ui,
|
||||
lowPartitionBar: lowPartitionBar_ui,
|
||||
descriptionPlate: descriptionPlate_ui,
|
||||
stanchionPole: stanchionPole_ui,
|
||||
handheldGameConsole: handheldGameConsole_ui,
|
||||
curtain: curtain_ui,
|
||||
wireNet: wireNet_ui,
|
||||
clippedPicture: clippedPicture_ui,
|
||||
wireBasket: wireBasket_ui,
|
||||
};
|
||||
|
||||
export function getObjectUiDef(type: string): ObjectUiDef {
|
||||
const def = OBJECT_UI_DEFS[type as keyof typeof OBJECT_UI_DEFS];
|
||||
if (def == null) {
|
||||
throw new Error(`Unrecognized object type: ${type}`);
|
||||
}
|
||||
return def;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue