From 1d4d1ab381b5ce61c1f29dc24b17ce926edbf8d0 Mon Sep 17 00:00:00 2001 From: ysCha Date: Fri, 13 Mar 2026 16:44:05 +0900 Subject: [PATCH 1/9] =?UTF-8?q?=EA=B3=84=EC=82=B0=EA=B8=B0=20=ED=86=A0?= =?UTF-8?q?=EA=B8=80=20=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/static/images/common/Icon_OFF_Black.png | Bin 0 -> 683 bytes public/static/images/common/Icon_ON_Black.png | Bin 0 -> 723 bytes src/components/common/input/CalcInput.jsx | 4 ++-- .../floor-plan/modal/lineTypes/Angle.jsx | 4 +++- .../floor-plan/modal/lineTypes/Diagonal.jsx | 4 ++++ .../floor-plan/modal/lineTypes/DoublePitch.jsx | 4 ++++ .../floor-plan/modal/lineTypes/OuterLineWall.jsx | 3 ++- .../floor-plan/modal/lineTypes/RightAngle.jsx | 4 +++- .../modal/outerlinesetting/WallLineSetting.jsx | 12 ++++++++++++ .../placementShape/PlacementShapeDrawing.jsx | 12 ++++++++++++ .../modal/placementSurface/PlacementSurface.jsx | 3 ++- .../placementSurface/PlacementSurfaceSetting.jsx | 7 ++++++- 12 files changed, 50 insertions(+), 7 deletions(-) create mode 100644 public/static/images/common/Icon_OFF_Black.png create mode 100644 public/static/images/common/Icon_ON_Black.png diff --git a/public/static/images/common/Icon_OFF_Black.png b/public/static/images/common/Icon_OFF_Black.png new file mode 100644 index 0000000000000000000000000000000000000000..c77f8311f7ace2f2436f43f909df4ce0fc0ed4e7 GIT binary patch literal 683 zcmV;c0#yBpP)sL5_ ziI#Ti7pOdDq!L;RW}#v1Qd02no=g&Az}*Ehj%Q{ko88Sl+55K00LP5^e13-MVzF@e znf13^9$m|_xX~9guP1IF1|+hrM7iR4LSmzoMl> zBn6k%dl;zK4p!M_uW_;k!;&Gl02DAXfPPics!0SXWBVnahaA3@>T0Ecao089r$ZQMnjCU6ebx&m2228cR@$y@~x zy1GMA`69{=jIj-IRzVDoWj*9dzf$EK!@Ap@#1w(SB*ux}D z?VRV%;{_NWuK9RVpa7o)FJX%zrF8T8{1;D?PUe@5M&o0J5EzX{T_#2UaZ0=QHApBo ztjfpeqN+`N-Jl=+0lzUmU)Lu7k488SuTpdI^lK+PIc)X)7=A}kBhGZPz5#U{HzrcK RpHKh*002ovPDHLkV1gOCB3}Ri literal 0 HcmV?d00001 diff --git a/public/static/images/common/Icon_ON_Black.png b/public/static/images/common/Icon_ON_Black.png new file mode 100644 index 0000000000000000000000000000000000000000..04c22ff77bf694981963109985b882611823b478 GIT binary patch literal 723 zcmV;^0xbQBP)1#o5S}|+KnFa*iOQ0SU1w!{TpoTyYP-9jQ(ji&D8_DY>=gk@0*7B*k+m3zGx?ktnti)4vJg7W!1g~MtF&*yU*3f1mUBMFhCzpb&i}r zGOeI|2rj+b?LKgRSbmB@_z)c6x^S3p`14CtS}YculdJj=x`&7zj@Np~ulY`uM|sL- zvlNfVNd-7yzu(`f7O<|}ZhwHht%qDBzla4Gf80}Qj)lz~-Sw8o6^6s1ol2$tvl!@O z&enZvwOapn2!Zi { + ({ value, onChange, label, options = {}, id, className = 'calculator-input', readOnly = false, placeholder, name='', disabled = false, maxLength = 12, disableKeypad = false }, ref) => { const [showKeypad, setShowKeypad] = useState(false) const [displayValue, setDisplayValue] = useState(value || '0') const [hasOperation, setHasOperation] = useState(false) @@ -478,7 +478,7 @@ export const CalculatorInput = forwardRef( maxLength={maxLength} /> - {showKeypad && !readOnly && ( + {showKeypad && !readOnly && !disableKeypad && (
{getMessage('outerLine.property.info')}
+ diff --git a/src/components/floor-plan/modal/placementShape/PlacementShapeDrawing.jsx b/src/components/floor-plan/modal/placementShape/PlacementShapeDrawing.jsx index 8010675d..95758b8c 100644 --- a/src/components/floor-plan/modal/placementShape/PlacementShapeDrawing.jsx +++ b/src/components/floor-plan/modal/placementShape/PlacementShapeDrawing.jsx @@ -9,11 +9,13 @@ import { OUTER_LINE_TYPE } from '@/store/outerLineAtom' import OuterLineWall from '@/components/floor-plan/modal/lineTypes/OuterLineWall' import { usePlacementShapeDrawing } from '@/hooks/surface/usePlacementShapeDrawing' import { usePopup } from '@/hooks/usePopup' +import Image from 'next/image' export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { const { getMessage } = useMessage() const { closePopup } = usePopup() const [buttonAct, setButtonAct] = useState(1) + const [useCalcPad, setUseCalcPad] = useState(false) const types = [ { id: 1, name: getMessage('straight.line'), type: OUTER_LINE_TYPE.OUTER_LINE }, { id: 2, name: getMessage('right.angle'), type: OUTER_LINE_TYPE.RIGHT_ANGLE }, @@ -49,12 +51,15 @@ export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { handleFix, } = usePlacementShapeDrawing(id) + const disableKeypad = !useCalcPad + const outerLineProps = { length1, setLength1, length1Ref, arrow1, setArrow1, + disableKeypad, } const rightAngleProps = { @@ -68,6 +73,7 @@ export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { setArrow1, arrow2, setArrow2, + disableKeypad, } const doublePitchProps = { @@ -89,6 +95,7 @@ export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { setArrow2, arrow1Ref, arrow2Ref, + disableKeypad, } const angleProps = { @@ -98,6 +105,7 @@ export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { length1, setLength1, length1Ref, + disableKeypad, } const diagonalLineProps = { @@ -114,6 +122,7 @@ export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) { setArrow1, arrow2, setArrow2, + disableKeypad, } const onClickButton = (button) => { @@ -140,6 +149,9 @@ export default function PlacementShapeDrawing({ id, pos = { x: 50, y: 230 } }) {
+ diff --git a/src/components/floor-plan/modal/placementSurface/PlacementSurface.jsx b/src/components/floor-plan/modal/placementSurface/PlacementSurface.jsx index 4ede1367..1a7df9d8 100644 --- a/src/components/floor-plan/modal/placementSurface/PlacementSurface.jsx +++ b/src/components/floor-plan/modal/placementSurface/PlacementSurface.jsx @@ -5,7 +5,7 @@ import { CalculatorInput } from '@/components/common/input/CalcInput' const PlacementSurface = forwardRef((props, refs) => { const { getMessage } = useMessage() - const { id, lines, info, rotate, xInversion, yInversion } = props + const { id, lines, info, rotate, xInversion, yInversion, disableKeypad } = props let { length1, length2, length3, length4, length5, lengthetc, azimuth } = refs const [azimuthDirection, setAzimuthDirection] = useState(azimuth.current) @@ -114,6 +114,7 @@ const PlacementSurface = forwardRef((props, refs) => { ? length4 : length5 } + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false diff --git a/src/components/floor-plan/modal/placementSurface/PlacementSurfaceSetting.jsx b/src/components/floor-plan/modal/placementSurface/PlacementSurfaceSetting.jsx index ae29b778..47a73ab7 100644 --- a/src/components/floor-plan/modal/placementSurface/PlacementSurfaceSetting.jsx +++ b/src/components/floor-plan/modal/placementSurface/PlacementSurfaceSetting.jsx @@ -19,6 +19,7 @@ export default function PlacementSurfaceSetting({ id, pos = { x: 50, y: 230 } }) const canvas = useRecoilValue(canvasState) const { closePopup } = usePopup() const [isHidden, setIsHidden] = useState(false) + const [useCalcPad, setUseCalcPad] = useState(false) const { applySurfaceShape } = useSurfaceShapeBatch({ isHidden, setIsHidden }) @@ -217,6 +218,7 @@ export default function PlacementSurfaceSetting({ id, pos = { x: 50, y: 230 } }) rotate, xInversion, yInversion, + disableKeypad: !useCalcPad, } const getInversionState = () => { @@ -291,7 +293,10 @@ export default function PlacementSurfaceSetting({ id, pos = { x: 50, y: 230 } })
-
+
+ -- 2.47.2 From 678b9442cd33c9b1e134d5e4aa4f4aeb8bc1d410 Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 16:02:56 +0900 Subject: [PATCH 2/9] =?UTF-8?q?=E3=82=AA=E3=83=96=E3=82=B8=E3=82=A7?= =?UTF-8?q?=E3=82=AF=E3=83=88=E9=85=8D=E7=BD=AE=20-=20=EA=B3=84=EC=82=B0?= =?UTF-8?q?=EA=B8=B0=20=ED=86=A0=ED=81=B4=EB=B2=84=ED=8A=BC=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../floor-plan/modal/object/ObjectSetting.jsx | 13 +++++++++---- .../floor-plan/modal/object/type/OpenSpace.jsx | 4 +++- .../floor-plan/modal/object/type/PentagonDormer.jsx | 7 ++++++- .../floor-plan/modal/object/type/Shadow.jsx | 4 +++- .../floor-plan/modal/object/type/TriangleDormer.jsx | 5 ++++- 5 files changed, 25 insertions(+), 8 deletions(-) diff --git a/src/components/floor-plan/modal/object/ObjectSetting.jsx b/src/components/floor-plan/modal/object/ObjectSetting.jsx index 4d7c9823..41eaa833 100644 --- a/src/components/floor-plan/modal/object/ObjectSetting.jsx +++ b/src/components/floor-plan/modal/object/ObjectSetting.jsx @@ -14,6 +14,7 @@ import TriangleDormer from '@/components/floor-plan/modal/object/type/TriangleDo import PentagonDormer from '@/components/floor-plan/modal/object/type/PentagonDormer' import { usePopup } from '@/hooks/usePopup' import { normalizeDecimalLimit, normalizeDigits } from '@/util/input-utils' +import Image from 'next/image' export default function ObjectSetting({ id, pos = { x: 50, y: 230 } }) { const { getMessage } = useMessage() @@ -21,6 +22,7 @@ export default function ObjectSetting({ id, pos = { x: 50, y: 230 } }) { const [buttonAct, setButtonAct] = useState(1) const { swalFire } = useSwal() const [isHidden, setIsHidden] = useState(false) + const [useCalcPad, setUseCalcPad] = useState(false) const { applyOpeningAndShadow, applyDormers } = useObjectBatch({ isHidden, setIsHidden }) const { closePopup } = usePopup() @@ -112,12 +114,15 @@ export default function ObjectSetting({ id, pos = { x: 50, y: 230 } }) { ))}
- {buttonAct === 1 && } - {buttonAct === 2 && } - {buttonAct === 3 && } - {buttonAct === 4 && } + {buttonAct === 1 && } + {buttonAct === 2 && } + {buttonAct === 3 && } + {buttonAct === 4 && }
+
+ diff --git a/src/components/floor-plan/modal/roofShape/type/Direction.jsx b/src/components/floor-plan/modal/roofShape/type/Direction.jsx index 7c3cf809..66069ee0 100644 --- a/src/components/floor-plan/modal/roofShape/type/Direction.jsx +++ b/src/components/floor-plan/modal/roofShape/type/Direction.jsx @@ -2,7 +2,7 @@ import { useMessage } from '@/hooks/useMessage' import { normalizeDecimalLimit, normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' -export default function Direction({ pitch, setPitch, eavesOffset, setEavesOffset, gableOffset, setGableOffset, shedWidth, setShedWidth, pitchText }) { +export default function Direction({ pitch, setPitch, eavesOffset, setEavesOffset, gableOffset, setGableOffset, shedWidth, setShedWidth, pitchText, disableKeypad }) { const { getMessage } = useMessage() return (
@@ -24,6 +24,7 @@ export default function Direction({ pitch, setPitch, eavesOffset, setEavesOffset className="input-origin block" value={pitch} onChange={(value) => setPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -50,6 +51,7 @@ export default function Direction({ pitch, setPitch, eavesOffset, setEavesOffset className="input-origin block" value={eavesOffset} onChange={(value) => setEavesOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), @@ -76,6 +78,7 @@ export default function Direction({ pitch, setPitch, eavesOffset, setEavesOffset className="input-origin block" value={gableOffset} onChange={(value) => setGableOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), @@ -102,6 +105,7 @@ export default function Direction({ pitch, setPitch, eavesOffset, setEavesOffset className="input-origin block" value={shedWidth} onChange={(value) => setShedWidth(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/Pattern.jsx b/src/components/floor-plan/modal/roofShape/type/Pattern.jsx index 46631b5c..138fe67b 100644 --- a/src/components/floor-plan/modal/roofShape/type/Pattern.jsx +++ b/src/components/floor-plan/modal/roofShape/type/Pattern.jsx @@ -4,7 +4,7 @@ import { CalculatorInput } from '@/components/common/input/CalcInput' export default function Pattern(props) { const { getMessage } = useMessage() - const { pitch, setPitch, eavesOffset, setEavesOffset, gableOffset, setGableOffset, pitchText } = props + const { pitch, setPitch, eavesOffset, setEavesOffset, gableOffset, setGableOffset, pitchText, disableKeypad } = props return (
@@ -21,6 +21,7 @@ export default function Pattern(props) { className="input-origin block" value={pitch} onChange={(value) => setPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -43,6 +44,7 @@ export default function Pattern(props) { className="input-origin block" value={eavesOffset} onChange={(value) => setEavesOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), @@ -65,6 +67,7 @@ export default function Pattern(props) { className="input-origin block" value={gableOffset} onChange={(value) => setGableOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/Ridge.jsx b/src/components/floor-plan/modal/roofShape/type/Ridge.jsx index 03f22936..84b723bf 100644 --- a/src/components/floor-plan/modal/roofShape/type/Ridge.jsx +++ b/src/components/floor-plan/modal/roofShape/type/Ridge.jsx @@ -5,7 +5,7 @@ import { CalculatorInput } from '@/components/common/input/CalcInput' export default function Ridge(props) { const { getMessage } = useMessage() - const { pitch, setPitch, eavesOffset, setEavesOffset, pitchText } = props + const { pitch, setPitch, eavesOffset, setEavesOffset, pitchText, disableKeypad } = props return (
@@ -23,6 +23,7 @@ export default function Ridge(props) { className="input-origin block" value={pitch} onChange={(value) => setPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -45,6 +46,7 @@ export default function Ridge(props) { className="input-origin block" value={eavesOffset} onChange={(value) => setEavesOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/Side.jsx b/src/components/floor-plan/modal/roofShape/type/Side.jsx index 26a4957f..13ffd072 100644 --- a/src/components/floor-plan/modal/roofShape/type/Side.jsx +++ b/src/components/floor-plan/modal/roofShape/type/Side.jsx @@ -35,14 +35,15 @@ export default function Side(props) { pitchText, shedPitch, setShedPitch, + disableKeypad, } = props - const eavesProps = { pitch, setPitch, eavesOffset, setEavesOffset, pitchText } - const gableProps = { gableOffset, setGableOffset } - const wallProps = { sleeveOffset, setSleeveOffset, hasSleeve, setHasSleeve } - const hipAndGableProps = { pitch, setPitch, eavesOffset, setEavesOffset, hipAndGableWidth, setHipAndGableWidth, pitchText } - const jerkinheadProps = { gableOffset, setGableOffset, jerkinHeadWidth, setJerkinHeadWidth, jerkinHeadPitch, setJerkinHeadPitch, pitchText } - const shedProps = { shedWidth, setShedWidth, shedPitch, setShedPitch, pitchText } + const eavesProps = { pitch, setPitch, eavesOffset, setEavesOffset, pitchText, disableKeypad } + const gableProps = { gableOffset, setGableOffset, disableKeypad } + const wallProps = { sleeveOffset, setSleeveOffset, hasSleeve, setHasSleeve, disableKeypad } + const hipAndGableProps = { pitch, setPitch, eavesOffset, setEavesOffset, hipAndGableWidth, setHipAndGableWidth, pitchText, disableKeypad } + const jerkinheadProps = { gableOffset, setGableOffset, jerkinHeadWidth, setJerkinHeadWidth, jerkinHeadPitch, setJerkinHeadPitch, pitchText, disableKeypad } + const shedProps = { shedWidth, setShedWidth, shedPitch, setShedPitch, pitchText, disableKeypad } const { getMessage } = useMessage() diff --git a/src/components/floor-plan/modal/roofShape/type/option/Eaves.jsx b/src/components/floor-plan/modal/roofShape/type/option/Eaves.jsx index 9477adae..b644d8f3 100644 --- a/src/components/floor-plan/modal/roofShape/type/option/Eaves.jsx +++ b/src/components/floor-plan/modal/roofShape/type/option/Eaves.jsx @@ -2,7 +2,7 @@ import { useMessage } from '@/hooks/useMessage' import { normalizeDecimalLimit, normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' -export default function Eaves({ pitch, setPitch, eavesOffset, setEavesOffset, pitchText }) { +export default function Eaves({ pitch, setPitch, eavesOffset, setEavesOffset, pitchText, disableKeypad }) { const { getMessage } = useMessage() return ( <> @@ -20,6 +20,7 @@ export default function Eaves({ pitch, setPitch, eavesOffset, setEavesOffset, pi className="input-origin block" value={pitch} onChange={(value) => setPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -43,6 +44,7 @@ export default function Eaves({ pitch, setPitch, eavesOffset, setEavesOffset, pi className="input-origin block" value={eavesOffset} onChange={(value) => setEavesOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/option/Gable.jsx b/src/components/floor-plan/modal/roofShape/type/option/Gable.jsx index 1b6c1c7f..92ff261a 100644 --- a/src/components/floor-plan/modal/roofShape/type/option/Gable.jsx +++ b/src/components/floor-plan/modal/roofShape/type/option/Gable.jsx @@ -3,7 +3,7 @@ import { useEffect } from 'react' import { normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' -export default function Gable({ gableOffset, setGableOffset }) { +export default function Gable({ gableOffset, setGableOffset, disableKeypad }) { const { getMessage } = useMessage() return ( @@ -20,6 +20,7 @@ export default function Gable({ gableOffset, setGableOffset }) { className="input-origin block" value={gableOffset} onChange={(value) => setGableOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/option/HipAndGable.jsx b/src/components/floor-plan/modal/roofShape/type/option/HipAndGable.jsx index cb38560f..2e41f22d 100644 --- a/src/components/floor-plan/modal/roofShape/type/option/HipAndGable.jsx +++ b/src/components/floor-plan/modal/roofShape/type/option/HipAndGable.jsx @@ -2,7 +2,7 @@ import { useMessage } from '@/hooks/useMessage' import { normalizeDecimalLimit, normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' -export default function HipAndGable({ pitch, setPitch, eavesOffset, setEavesOffset, hipAndGableWidth, setHipAndGableWidth, pitchText }) { +export default function HipAndGable({ pitch, setPitch, eavesOffset, setEavesOffset, hipAndGableWidth, setHipAndGableWidth, pitchText, disableKeypad }) { const { getMessage } = useMessage() return ( <> @@ -20,6 +20,7 @@ export default function HipAndGable({ pitch, setPitch, eavesOffset, setEavesOffs className="input-origin block" value={pitch} onChange={(value) => setPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -42,6 +43,7 @@ export default function HipAndGable({ pitch, setPitch, eavesOffset, setEavesOffs className="input-origin block" value={eavesOffset} onChange={(value) => setEavesOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), @@ -69,6 +71,7 @@ export default function HipAndGable({ pitch, setPitch, eavesOffset, setEavesOffs className="input-origin block" value={hipAndGableWidth} onChange={(value) => setHipAndGableWidth(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/option/Jerkinhead.jsx b/src/components/floor-plan/modal/roofShape/type/option/Jerkinhead.jsx index ed4c11f1..9ad53fdf 100644 --- a/src/components/floor-plan/modal/roofShape/type/option/Jerkinhead.jsx +++ b/src/components/floor-plan/modal/roofShape/type/option/Jerkinhead.jsx @@ -10,6 +10,7 @@ export default function Jerkinhead({ jerkinHeadPitch, setJerkinHeadPitch, pitchText, + disableKeypad, }) { const { getMessage } = useMessage() return ( @@ -28,6 +29,7 @@ export default function Jerkinhead({ className="input-origin block" value={gableOffset} onChange={(value) => setGableOffset(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), @@ -51,6 +53,7 @@ export default function Jerkinhead({ className="input-origin block" value={jerkinHeadWidth} onChange={(value) => setJerkinHeadWidth(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), @@ -77,6 +80,7 @@ export default function Jerkinhead({ className="input-origin block" value={jerkinHeadPitch} onChange={(value) => setJerkinHeadPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/option/Shed.jsx b/src/components/floor-plan/modal/roofShape/type/option/Shed.jsx index 6fe1d32f..edccb02f 100644 --- a/src/components/floor-plan/modal/roofShape/type/option/Shed.jsx +++ b/src/components/floor-plan/modal/roofShape/type/option/Shed.jsx @@ -2,7 +2,7 @@ import { useMessage } from '@/hooks/useMessage' import { normalizeDecimalLimit, normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' -export default function Shed({ shedWidth, setShedWidth, shedPitch, setShedPitch, pitchText }) { +export default function Shed({ shedWidth, setShedWidth, shedPitch, setShedPitch, pitchText, disableKeypad }) { const { getMessage } = useMessage() return ( <> @@ -18,6 +18,7 @@ export default function Shed({ shedWidth, setShedWidth, shedPitch, setShedPitch, className="input-origin block" value={shedPitch} onChange={(value) => setShedPitch(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -38,6 +39,7 @@ export default function Shed({ shedWidth, setShedWidth, shedPitch, setShedPitch, className="input-origin block" value={shedWidth} onChange={(value) => setShedWidth(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), diff --git a/src/components/floor-plan/modal/roofShape/type/option/Wall.jsx b/src/components/floor-plan/modal/roofShape/type/option/Wall.jsx index bee6e9bb..cf93d4ba 100644 --- a/src/components/floor-plan/modal/roofShape/type/option/Wall.jsx +++ b/src/components/floor-plan/modal/roofShape/type/option/Wall.jsx @@ -3,7 +3,7 @@ import { useMessage } from '@/hooks/useMessage' import { normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' -export default function Wall({ sleeveOffset, setSleeveOffset, hasSleeve, setHasSleeve }) { +export default function Wall({ sleeveOffset, setSleeveOffset, hasSleeve, setHasSleeve, disableKeypad }) { const { getMessage } = useMessage() return ( <> @@ -43,6 +43,7 @@ export default function Wall({ sleeveOffset, setSleeveOffset, hasSleeve, setHasS value={sleeveOffset} onChange={(value) => setSleeveOffset(value)} readOnly={hasSleeve === '0'} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false //(index !== 0), -- 2.47.2 From 025b7ede7c1389d0d1e2fbd4d26d06a8a15d6727 Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 16:51:36 +0900 Subject: [PATCH 4/9] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E9=9D=A2=E5=88=9D?= =?UTF-8?q?=E6=9C=9F=E8=A8=AD=E5=AE=9A=20-=20=EA=B3=84=EC=82=B0=EA=B8=B0?= =?UTF-8?q?=20=ED=86=A0=ED=81=B4=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modal/placementShape/PlacementShapeSetting.jsx | 13 +++++++++++-- .../roofAllocation/ContextRoofAllocationSetting.jsx | 9 ++++++++- .../modal/roofAllocation/RoofAllocationSetting.jsx | 9 ++++++++- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/components/floor-plan/modal/placementShape/PlacementShapeSetting.jsx b/src/components/floor-plan/modal/placementShape/PlacementShapeSetting.jsx index a4e9959f..9ba4e342 100644 --- a/src/components/floor-plan/modal/placementShape/PlacementShapeSetting.jsx +++ b/src/components/floor-plan/modal/placementShape/PlacementShapeSetting.jsx @@ -1,5 +1,5 @@ import { useEffect, useRef, useState } from 'react' - +import Image from 'next/image' import { useMessage } from '@/hooks/useMessage' import { usePopup } from '@/hooks/usePopup' @@ -35,6 +35,8 @@ export const ROOF_MATERIAL_LAYOUT = { export default function PlacementShapeSetting({ id, pos = { x: 50, y: 180 }, planNo, openPoint }) { const [showSizeGuideModal, setShowSizeGuidModal] = useState(false) const [showMaterialGuideModal, setShowMaterialGuidModal] = useState(false) + const [useCalcPad, setUseCalcPad] = useState(false) + const disableKeypad = !useCalcPad const { getMessage } = useMessage() const roofMaterials = useRecoilValue(roofMaterialsAtom) @@ -398,6 +400,7 @@ export default function PlacementShapeSetting({ id, pos = { x: 50, y: 180 }, pla }} readOnly={currentRoof?.widAuth === 'R'} disabled={currentRoof?.roofSizeSet === '3'} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, //(index !== 0), @@ -433,6 +436,7 @@ export default function PlacementShapeSetting({ id, pos = { x: 50, y: 180 }, pla }} readOnly={currentRoof?.lenAuth === 'R'} disabled={currentRoof?.roofSizeSet === '3'} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, //(index !== 0), @@ -490,6 +494,7 @@ export default function PlacementShapeSetting({ id, pos = { x: 50, y: 180 }, pla }} readOnly={currentRoof?.roofPchAuth === 'R'} disabled={currentRoof?.roofSizeSet === '3'} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, //(index !== 0), @@ -588,6 +593,7 @@ export default function PlacementShapeSetting({ id, pos = { x: 50, y: 180 }, pla })) } }} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true, @@ -603,7 +609,10 @@ export default function PlacementShapeSetting({ id, pos = { x: 50, y: 180 }, pla
-
+
+ diff --git a/src/components/floor-plan/modal/roofAllocation/ContextRoofAllocationSetting.jsx b/src/components/floor-plan/modal/roofAllocation/ContextRoofAllocationSetting.jsx index 05b2759a..5f031e13 100644 --- a/src/components/floor-plan/modal/roofAllocation/ContextRoofAllocationSetting.jsx +++ b/src/components/floor-plan/modal/roofAllocation/ContextRoofAllocationSetting.jsx @@ -1,5 +1,6 @@ import { useMessage } from '@/hooks/useMessage' import WithDraggable from '@/components/common/draggable/WithDraggable' +import Image from 'next/image' import QSelectBox from '@/components/common/select/QSelectBox' import { useRoofAllocationSetting } from '@/hooks/roofcover/useRoofAllocationSetting' import { usePopup } from '@/hooks/usePopup' @@ -38,6 +39,8 @@ export default function ContextRoofAllocationSetting(props) { handleChangePitch, } = useRoofAllocationSetting(id) + const [useCalcPad, setUseCalcPad] = useState(false) + const disableKeypad = !useCalcPad const { findCommonCode } = useCommonCode() const pitchText = useRecoilValue(pitchTextSelector) const globalLocale = useRecoilValue(globalLocaleStore) @@ -223,6 +226,7 @@ export default function ContextRoofAllocationSetting(props) { onChange={(value) => { handleChangePitch(value, index) }} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -238,7 +242,10 @@ export default function ContextRoofAllocationSetting(props) { })}
-
+
+ diff --git a/src/components/floor-plan/modal/roofAllocation/RoofAllocationSetting.jsx b/src/components/floor-plan/modal/roofAllocation/RoofAllocationSetting.jsx index 79b524ef..a0e8a641 100644 --- a/src/components/floor-plan/modal/roofAllocation/RoofAllocationSetting.jsx +++ b/src/components/floor-plan/modal/roofAllocation/RoofAllocationSetting.jsx @@ -1,5 +1,6 @@ import { useMessage } from '@/hooks/useMessage' import WithDraggable from '@/components/common/draggable/WithDraggable' +import Image from 'next/image' import QSelectBox from '@/components/common/select/QSelectBox' import { useRoofAllocationSetting } from '@/hooks/roofcover/useRoofAllocationSetting' import { usePopup } from '@/hooks/usePopup' @@ -37,6 +38,8 @@ export default function RoofAllocationSetting(props) { handleChangeInput, handleChangePitch, } = useRoofAllocationSetting(id) + const [useCalcPad, setUseCalcPad] = useState(false) + const disableKeypad = !useCalcPad const pitchText = useRecoilValue(pitchTextSelector) const { findCommonCode } = useCommonCode() const [raftCodes, setRaftCodes] = useState([]) @@ -224,6 +227,7 @@ export default function RoofAllocationSetting(props) { onChange={(value) => { handleChangePitch(value, index) }} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: true //(index !== 0), @@ -260,7 +264,10 @@ export default function RoofAllocationSetting(props) { })}
-
+
+ -- 2.47.2 From b10fc27014b771104d8a5c9b2f36b1ee5e3e511f Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 17:15:20 +0900 Subject: [PATCH 5/9] =?UTF-8?q?=E3=83=A2=E3=82=B8=E3=83=A5=E3=83=BC?= =?UTF-8?q?=E3=83=AB/=E6=9E=B6=E5=8F=B0=E8=A8=AD=E5=AE=9A=20-=20=EA=B3=84?= =?UTF-8?q?=EC=82=B0=EA=B8=B0=20=ED=86=A0=ED=81=B4=EB=B2=84=ED=8A=BC=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/floor-plan/modal/basic/BasicSetting.jsx | 10 +++++++++- .../floor-plan/modal/basic/step/Orientation.jsx | 5 +++++ src/components/floor-plan/modal/basic/step/Trestle.jsx | 5 ++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/components/floor-plan/modal/basic/BasicSetting.jsx b/src/components/floor-plan/modal/basic/BasicSetting.jsx index ac2b3ca4..983492bf 100644 --- a/src/components/floor-plan/modal/basic/BasicSetting.jsx +++ b/src/components/floor-plan/modal/basic/BasicSetting.jsx @@ -1,5 +1,6 @@ import { MODULE_SETUP_TYPE, POLYGON_TYPE } from '@/common/common' import WithDraggable from '@/components/common/draggable/WithDraggable' +import Image from 'next/image' import { Orientation } from '@/components/floor-plan/modal/basic/step/Orientation' import PitchPlacement from '@/components/floor-plan/modal/basic/step/pitch/PitchPlacement' import Placement from '@/components/floor-plan/modal/basic/step/Placement' @@ -75,6 +76,8 @@ export default function BasicSetting({ id, pos = { x: 50, y: 230 } }) { const { trigger: placementTrigger } = useCanvasPopupStatusController(3) const [roofsStore, setRoofsStore] = useRecoilState(roofsState) const [isFold, setIsFold] = useState(false) + const [useCalcPad, setUseCalcPad] = useState(false) + const disableKeypad = !useCalcPad // const { initEvent } = useContext(EventContext) const { manualModuleSetup, autoModuleSetup, manualFlatroofModuleSetup, autoFlatroofModuleSetup, manualModuleLayoutSetup, restoreModuleInstArea } = @@ -235,6 +238,7 @@ export default function BasicSetting({ id, pos = { x: 50, y: 230 } }) { } const orientationProps = { + disableKeypad, roofs, setRoofs, tabNum, @@ -270,6 +274,7 @@ export default function BasicSetting({ id, pos = { x: 50, y: 230 } }) { updateObjectDataApi, } const trestleProps = { + disableKeypad, roofs, setRoofs, setRoofsStore, @@ -320,7 +325,10 @@ export default function BasicSetting({ id, pos = { x: 50, y: 230 } }) { )}
-
+
+ {/* {tabNum === 1 && } */} {basicSetting.roofSizeSet && basicSetting.roofSizeSet != '3' && ( <> diff --git a/src/components/floor-plan/modal/basic/step/Orientation.jsx b/src/components/floor-plan/modal/basic/step/Orientation.jsx index fe00c93b..9fb66caf 100644 --- a/src/components/floor-plan/modal/basic/step/Orientation.jsx +++ b/src/components/floor-plan/modal/basic/step/Orientation.jsx @@ -24,6 +24,7 @@ export const Orientation = forwardRef((props, ref) => { const [moduleSeriesList, setModuleSeriesList] = useState([]) const [filteredModuleList, setFilteredModuleList] = useState([]) const { + disableKeypad, roofs, setRoofs, tabNum, @@ -462,6 +463,7 @@ export const Orientation = forwardRef((props, ref) => { setInputCompasDeg(value); } }} + disableKeypad={disableKeypad} options={{ allowNegative: true, allowDecimal: false @@ -564,6 +566,7 @@ export const Orientation = forwardRef((props, ref) => { className="input-origin block" value={inputMargin} onChange={(value) => setInputMargin(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -609,6 +612,7 @@ export const Orientation = forwardRef((props, ref) => { className="input-origin block" value={inputInstallHeight} onChange={(value) => handleChangeInstallHeight(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -649,6 +653,7 @@ export const Orientation = forwardRef((props, ref) => { className="input-origin block" value={inputVerticalSnowCover} onChange={(value) => handleChangeVerticalSnowCover(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false diff --git a/src/components/floor-plan/modal/basic/step/Trestle.jsx b/src/components/floor-plan/modal/basic/step/Trestle.jsx index 4725962d..16fca772 100644 --- a/src/components/floor-plan/modal/basic/step/Trestle.jsx +++ b/src/components/floor-plan/modal/basic/step/Trestle.jsx @@ -14,7 +14,7 @@ import { normalizeDigits } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' const Trestle = forwardRef((props, ref) => { - const { tabNum, setTabNum, trestleTrigger, roofs, setRoofs, moduleSelectionData, setModuleSelectionData, setRoofsStore } = props + const { tabNum, setTabNum, trestleTrigger, roofs, setRoofs, moduleSelectionData, setModuleSelectionData, setRoofsStore, disableKeypad } = props const { getMessage } = useMessage() // const [selectedTrestle, setSelectedTrestle] = useState() const currentAngleType = useRecoilValue(currentAngleTypeSelector) @@ -936,6 +936,7 @@ const Trestle = forwardRef((props, ref) => { className="input-origin block" value={eavesMargin ?? 0} onChange={(value) => setEavesMargin(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -961,6 +962,7 @@ const Trestle = forwardRef((props, ref) => { className="input-origin block" value={ridgeMargin ?? 0} onChange={(value) => setRidgeMargin(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -986,6 +988,7 @@ const Trestle = forwardRef((props, ref) => { className="input-origin block" value={kerabaMargin ?? 0} onChange={(value) => setKerabaMargin(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false -- 2.47.2 From bc389e3a3c38cca846087cd8c2bbf467ff1c7809 Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 17:19:10 +0900 Subject: [PATCH 6/9] =?UTF-8?q?=E3=82=B5=E3=82=A4=E3=82=BA=E5=A4=89?= =?UTF-8?q?=E6=9B=B4=20-=20=EA=B3=84=EC=82=B0=EA=B8=B0=20=ED=86=A0?= =?UTF-8?q?=ED=81=B4=EB=B2=84=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/floor-plan/modal/object/SizeSetting.jsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/components/floor-plan/modal/object/SizeSetting.jsx b/src/components/floor-plan/modal/object/SizeSetting.jsx index ce3d5fbd..edd5b895 100644 --- a/src/components/floor-plan/modal/object/SizeSetting.jsx +++ b/src/components/floor-plan/modal/object/SizeSetting.jsx @@ -1,6 +1,7 @@ 'use client' import { useRecoilValue } from 'recoil' +import Image from 'next/image' import { useMessage } from '@/hooks/useMessage' import WithDraggable from '@/components/common/draggable/WithDraggable' import { usePopup } from '@/hooks/usePopup' @@ -23,6 +24,8 @@ export default function SizeSetting(props) { const heightRef = useRef(null) const [width, setWidth] = useState(target?.width ? (target.width * 10).toFixed() : 0) const [height, setHeight] = useState(target?.height ? (target.height * 10) : 0) + const [useCalcPad, setUseCalcPad] = useState(false) + const disableKeypad = !useCalcPad // const { initEvent } = useEvent() // const { initEvent } = useContext(EventContext) @@ -72,6 +75,7 @@ export default function SizeSetting(props) { value={width} ref={widthRef} onChange={(value) => setWidth(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -99,6 +103,7 @@ export default function SizeSetting(props) { value={height} ref={heightRef} onChange={(value) => setHeight(value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -117,7 +122,10 @@ export default function SizeSetting(props) {
-
+
+ -- 2.47.2 From ea849ee5f298c5177d5c3780eb676a9d5b420023 Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 17:42:51 +0900 Subject: [PATCH 7/9] =?UTF-8?q?=EA=B2=AC=EC=A0=81=EC=84=9C-=20=EA=B3=84?= =?UTF-8?q?=EC=82=B0=EA=B8=B0=20=ED=86=A0=ED=81=B4=EB=B2=84=ED=8A=BC=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/static/images/common/Icon_OFF.png | Bin 0 -> 660 bytes public/static/images/common/Icon_ON.png | Bin 0 -> 660 bytes src/components/estimate/Estimate.jsx | 8 ++++++++ 3 files changed, 8 insertions(+) create mode 100644 public/static/images/common/Icon_OFF.png create mode 100644 public/static/images/common/Icon_ON.png diff --git a/public/static/images/common/Icon_OFF.png b/public/static/images/common/Icon_OFF.png new file mode 100644 index 0000000000000000000000000000000000000000..a5f83b0812777cf82c2b8d3a7178e7fd805bc685 GIT binary patch literal 660 zcmV;F0&D$=P)g3L2(WQ_4H#ESAH%j@0szS;R}q=4CM=InO6dmcLcSp1k` z$=5V(wBPSXx~_jztJQ(*EG=zuJRW!Wpcg@+0*?jg)@rpLT|>x378AYmut~SUV~wBZhYb7hS(r(mKk!nT&Gg0yqysWHR5I_WecCx+X~fd zgtJWc87Ir<^HeMrv8Hk`ZMR!muh+EMY@*Yq&|2$A2ydhWPb?G)v|KKOgH&J`29-*s zI3duSPNyAsZ$KzqKk)#NmCNN|oCfS$EEX5F!LbUCo{pdUFLfy)rgUCsip z2@(a8tJ*Nky-7gp5xm2R$z*a?S>vcO2Dzf<@UV!mq!q3+N z1-Ko490MN}nHQcZWAK?z(Pru-)9^wMHzkE+pa5TxokT%en~0XfqT4Wn;7M)b|7e60 uh#h{p-10R&@@BpZEs~9NV+NrI? zKp%j)>dXtUl@X>=2G*9X8_64ZLUfD74*f25PzWJ55TSljz<*Bu*}k)V25G2NDpi-u z<&9w&Ra7l}Ioajmb5^UBW18lN<2YZcu?z+15re%*h>ip%^$Kv0_5lK90rbvAI!p|{ z0$4;l%xFWgSbP9%dIXHc6P{w?jcCVNxFQYu_|EBg@fdgcd|u4wb2n%-LNH6NEJx|e z!}gYg?ac(OfPF?`^?IG!?KWkzS)GAtHk(nm+ojQH6mHJRcqntlU!jb~x99-l@tB&; zrazF53WWj<1_P>8DqDS6&xS!CY3Yu2!q<+zrX-nS7{8an4jQO&g0@ zd@LGtIyFoz)mB;Q_)y0NtV{Nx@_@5%Qj*0$<+%$7O%NPO?Fq`6q@i#?=#-PhKu={9 z_K!|EK^||ZAcY@yZPmWM#o>1{_?aMj5`iiD(B&;1s;pA<;n0+6fk?7S$%lej{$0vx zLEPoNSS-sRbd*j3m|37H3ZF}pL=jW-_YH5c&Pq5SJM4u;?a9#Ie19++jc%5P( z4e*c-{7}l5IbipIeFyc8oCZ(_P|iQD>G-^cSN058e`5l1mU4SJ<*?{5Ie^{9rHTI| u5sm>@>Cd;eyp`6eJ^%v$6MRFRRR0&KIugRh-UB)S0000 {getMessage('estimate.detail.showPrice.delItem')} +
@@ -2148,6 +2154,7 @@ export default function Estimate({}) { onChange={(value) =>{ onChangeAmount(value, item.dispOrder, index) }} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false @@ -2205,6 +2212,7 @@ export default function Estimate({}) { onChangeSalePrice(value, item.dispOrder, index) }} maxLength={12} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false -- 2.47.2 From 662a4653fcf6835a77243be0c3aaf4c05d4200c2 Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 17:57:43 +0900 Subject: [PATCH 8/9] =?UTF-8?q?=EB=AC=BC=EA=B1=B4=EB=93=B1=EB=A1=9D-=20?= =?UTF-8?q?=EA=B3=84=EC=82=B0=EA=B8=B0=20=ED=86=A0=ED=81=B4=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/management/StuffDetail.jsx | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/components/management/StuffDetail.jsx b/src/components/management/StuffDetail.jsx index 97ba9dd3..a260593f 100644 --- a/src/components/management/StuffDetail.jsx +++ b/src/components/management/StuffDetail.jsx @@ -24,8 +24,11 @@ import { useCanvasMenu } from '@/hooks/common/useCanvasMenu' import { useSwal } from '@/hooks/useSwal' import { sanitizeIntegerInputEvent } from '@/util/input-utils' import { CalculatorInput } from '@/components/common/input/CalcInput' +import Image from 'next/image' export default function StuffDetail() { + const [useCalcPad, setUseCalcPad] = useState(false) + const disableKeypad = !useCalcPad const [stuffSearch, setStuffSearch] = useRecoilState(stuffSearchState) const { swalFire } = useSwal() const { setIsGlobalLoading } = useContext(QcastContext) @@ -1761,6 +1764,9 @@ export default function StuffDetail() { > {getMessage('stuff.detail.btn.moveList')} +
@@ -2161,6 +2167,7 @@ export default function StuffDetail() { className="input-light" value={form.watch('verticalSnowCover') || ''} onChange={(value) => form.setValue('verticalSnowCover', value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, @@ -2233,6 +2240,7 @@ export default function StuffDetail() { className="input-light" value={form.watch('installHeight') || ''} onChange={(value) => form.setValue('installHeight', value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, @@ -2286,6 +2294,9 @@ export default function StuffDetail() { > {getMessage('stuff.detail.btn.moveList')} +
@@ -2310,6 +2321,7 @@ export default function StuffDetail() { > {getMessage('stuff.detail.btn.moveList')} + @@ -2337,6 +2349,9 @@ export default function StuffDetail() { > {getMessage('stuff.detail.btn.moveList')} +
)} @@ -2757,6 +2772,7 @@ export default function StuffDetail() { className="input-light" value={form.watch('verticalSnowCover') || ''} onChange={(value) => form.setValue('verticalSnowCover', value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, @@ -2833,6 +2849,7 @@ export default function StuffDetail() { className="input-light" value={form.watch('installHeight') || ''} onChange={(value) => form.setValue('installHeight', value)} + disableKeypad={disableKeypad} options={{ allowNegative: false, allowDecimal: false, @@ -2917,6 +2934,7 @@ export default function StuffDetail() { > {getMessage('stuff.detail.btn.moveList')} + @@ -2944,6 +2962,9 @@ export default function StuffDetail() { > {getMessage('stuff.detail.btn.moveList')} +
)} -- 2.47.2 From 3365000b878239f7efb657a0cc0b2652d8faffdf Mon Sep 17 00:00:00 2001 From: ysCha Date: Thu, 19 Mar 2026 17:58:46 +0900 Subject: [PATCH 9/9] =?UTF-8?q?=EB=AC=BC=EA=B1=B4=EB=93=B1=EB=A1=9D-=20?= =?UTF-8?q?=EA=B3=84=EC=82=B0=EA=B8=B0=20=ED=86=A0=ED=81=B4=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/management/StuffDetail.jsx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/components/management/StuffDetail.jsx b/src/components/management/StuffDetail.jsx index a260593f..a3a0a607 100644 --- a/src/components/management/StuffDetail.jsx +++ b/src/components/management/StuffDetail.jsx @@ -2328,6 +2328,9 @@ export default function StuffDetail() { +
) : ( @@ -2941,6 +2944,9 @@ export default function StuffDetail() { + ) : ( -- 2.47.2