diff --git a/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.mdx b/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.mdx deleted file mode 100644 index 3e8238bd45..0000000000 --- a/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.mdx +++ /dev/null @@ -1,10 +0,0 @@ -import { Canvas, Meta } from '@storybook/blocks'; - -import * as InputVectorStories from './InputVector.stories'; - - - -# 3 Input controls: one for x, y, and z -It allows entry os plus or minus numbers with decimals. It can also be adjusted via dragging the mouse left or right. - - diff --git a/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.stories.tsx b/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.stories.tsx deleted file mode 100644 index d925a23f87..0000000000 --- a/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.stories.tsx +++ /dev/null @@ -1,44 +0,0 @@ -import { useState } from "react"; -import type { Meta, StoryObj } from "@storybook/react"; -import { InputVector } from "./InputVector"; -import { withActions } from "@storybook/addon-actions/decorator"; - -const meta: Meta = { - component: InputVector, - parameters: { - actions: { - handles: ["change", "blur", "focus"], - }, - }, - decorators: [withActions], -}; - -type Story = StoryObj; - -const InputVectorRender = () => { - // Sets the hooks for both the label and primary props - const [xyz, setXyz] = useState>({ - x: "0", - y: "0", - z: "0", - }); - - return ( - setXyz(value)} - /> - ); -}; - -export const Default: Story = { - render: () => ( -
- -
- ), -}; - -export default meta; diff --git a/frontend/apps/editor3d/app/src/components/reusable/InputVector/index.ts b/frontend/apps/editor3d/app/src/components/reusable/InputVector/index.ts deleted file mode 100644 index 2c73552779..0000000000 --- a/frontend/apps/editor3d/app/src/components/reusable/InputVector/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./InputVector"; diff --git a/frontend/apps/editor3d/app/src/components/reusable/index.ts b/frontend/apps/editor3d/app/src/components/reusable/index.ts index 80badcdedb..00d53cb65a 100644 --- a/frontend/apps/editor3d/app/src/components/reusable/index.ts +++ b/frontend/apps/editor3d/app/src/components/reusable/index.ts @@ -1,4 +1,3 @@ -export * from "./InputVector"; export * from "./NumberInput"; export * from "./Pagination"; export * from "./SearchFilter"; diff --git a/frontend/apps/editor3d/app/src/pages/PageEnigma/comps/ControlPanelSceneObject/ControlPanelSceneObject.tsx b/frontend/apps/editor3d/app/src/pages/PageEnigma/comps/ControlPanelSceneObject/ControlPanelSceneObject.tsx index 3c4ccee23b..4a63306235 100644 --- a/frontend/apps/editor3d/app/src/pages/PageEnigma/comps/ControlPanelSceneObject/ControlPanelSceneObject.tsx +++ b/frontend/apps/editor3d/app/src/pages/PageEnigma/comps/ControlPanelSceneObject/ControlPanelSceneObject.tsx @@ -10,11 +10,13 @@ import { import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { + disableHotkeyInput, + enableHotkeyInput, objectPanel as objectPanelSignals, timelineHeight, } from "../../signals"; import { EngineContext } from "~/pages/PageEnigma/contexts/EngineContext"; -import { InputVector } from "~/components"; +import { InputVector } from "@storyteller/ui-input"; import { Button } from "@storyteller/ui-button"; import { editorState } from "~/pages/PageEnigma/signals/engine"; import { twMerge } from "tailwind-merge"; @@ -252,6 +254,8 @@ export const ControlPanelSceneObject = () => { z={localPosition.z.toString()} onChange={handlePositionChange} disabled={locked} + enableHotkeyInput={enableHotkeyInput} + disableHotkeyInput={disableHotkeyInput} /> @@ -264,6 +268,8 @@ export const ControlPanelSceneObject = () => { onChange={handleRotationChange} increment={1} disabled={locked} + enableHotkeyInput={enableHotkeyInput} + disableHotkeyInput={disableHotkeyInput} /> @@ -277,6 +283,8 @@ export const ControlPanelSceneObject = () => { z={localScale.z.toString()} onChange={handleScaleChange} disabled={locked} + enableHotkeyInput={enableHotkeyInput} + disableHotkeyInput={disableHotkeyInput} /> diff --git a/frontend/libs/components/input/src/index.ts b/frontend/libs/components/input/src/index.ts index eb38295c5a..df0a4f4aab 100644 --- a/frontend/libs/components/input/src/index.ts +++ b/frontend/libs/components/input/src/index.ts @@ -1,2 +1,2 @@ - export * from './lib/input'; +export * from './lib/InputVector'; diff --git a/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.tsx b/frontend/libs/components/input/src/lib/InputVector.tsx similarity index 97% rename from frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.tsx rename to frontend/libs/components/input/src/lib/InputVector.tsx index 8758030a63..c313b31b28 100644 --- a/frontend/apps/editor3d/app/src/components/reusable/InputVector/InputVector.tsx +++ b/frontend/libs/components/input/src/lib/InputVector.tsx @@ -1,10 +1,6 @@ import React, { ChangeEvent, RefObject, useRef } from "react"; import { twMerge } from "tailwind-merge"; -import { - disableHotkeyInput, - DomLevels, - enableHotkeyInput, -} from "~/pages/PageEnigma/signals"; +import { DomLevels } from "@storyteller/common"; interface InputVectorProps { x: string; @@ -13,6 +9,8 @@ interface InputVectorProps { onChange: (v: Record) => void; increment?: number; disabled?: boolean; + disableHotkeyInput: (level: DomLevels) => void; + enableHotkeyInput: (level: DomLevels) => void; } export const InputVector = ({ @@ -22,6 +20,8 @@ export const InputVector = ({ onChange, increment = 0.1, disabled, + disableHotkeyInput, + enableHotkeyInput, }: InputVectorProps) => { const xRef = useRef(null); const yRef = useRef(null);