// Metro module 13550 (f13551). import { OrientationLockState } from "../../../activities/Constants"; import { RPCErrors, RPCCommands } from "../../../../_bundle/Module505"; import createRpcJoiSchemaObject from "../../helpers/createRpcJoiSchemaObject"; import Dispatcher from "../../../../Dispatcher"; import RPCError from "../../RPCError"; const r19 = {}; r19[RPCCommands.SET_ORIENTATION_LOCK_STATE] = { validation: (a0) => createRpcJoiSchemaObject(a0).required().keys({ lock_state: a0.number().valid(OrientationLockState.UNLOCKED, OrientationLockState.PORTRAIT, OrientationLockState.LANDSCAPE).required(), picture_in_picture_lock_state: a0.number().valid(OrientationLockState.UNLOCKED, OrientationLockState.PORTRAIT, OrientationLockState.LANDSCAPE).allow(null).optional(), grid_lock_state: a0.number().valid(OrientationLockState.UNLOCKED, OrientationLockState.PORTRAIT, OrientationLockState.LANDSCAPE).allow(null).optional() }), handler: ({ socket, args }) => { const { lock_state, picture_in_picture_lock_state, grid_lock_state } = args; const id = socket.application.id; if (id == null) { throw new RPCError({ errorCode: RPCErrors.INVALID_COMMAND }, "No application."); } Dispatcher.dispatch({ type: "FRAME_SET_ORIENTATION_LOCK_STATE", applicationId: id, lockState: lock_state, pictureInPictureLockState: picture_in_picture_lock_state }); Dispatcher.dispatch({ type: "EMBEDDED_ACTIVITY_SET_ORIENTATION_LOCK_STATE", applicationId: id, lockState: lock_state, pictureInPictureLockState: picture_in_picture_lock_state, gridLockState: grid_lock_state }); } }; export default r19;