mirror of
https://github.com/billsonnn/nitro-react.git
synced 2025-02-18 18:02:36 +01:00
Condition User Count
This commit is contained in:
parent
33e2baeb20
commit
49131d0137
@ -11,6 +11,7 @@ import { WiredConditionFurniIsOfTypeView } from '../views/conditions/furni-is-of
|
|||||||
import { WiredConditionFurniMatchesSnapshotView } from '../views/conditions/furni-matches-snapshot/WiredConditionFurniMatchesSnapshotView';
|
import { WiredConditionFurniMatchesSnapshotView } from '../views/conditions/furni-matches-snapshot/WiredConditionFurniMatchesSnapshotView';
|
||||||
import { WiredConditionTimeElapsedLessView } from '../views/conditions/time-elapsed-less/WiredConditionTimeElapsedLessView';
|
import { WiredConditionTimeElapsedLessView } from '../views/conditions/time-elapsed-less/WiredConditionTimeElapsedLessView';
|
||||||
import { WiredConditionTimeElapsedMoreView } from '../views/conditions/time-elapsed-more/WiredConditionTimeElapsedMoreView';
|
import { WiredConditionTimeElapsedMoreView } from '../views/conditions/time-elapsed-more/WiredConditionTimeElapsedMoreView';
|
||||||
|
import { WiredConditionUserCountInRoomView } from '../views/conditions/user-count-in-room/WiredConditionUserCountInRoomView';
|
||||||
import { WiredConditionlayout } from './WiredConditionLayoutCode';
|
import { WiredConditionlayout } from './WiredConditionLayoutCode';
|
||||||
|
|
||||||
export function GetWiredConditionLayout(code: number): JSX.Element
|
export function GetWiredConditionLayout(code: number): JSX.Element
|
||||||
@ -51,5 +52,8 @@ export function GetWiredConditionLayout(code: number): JSX.Element
|
|||||||
return <WiredConditionTimeElapsedLessView />;
|
return <WiredConditionTimeElapsedLessView />;
|
||||||
case WiredConditionlayout.TIME_ELAPSED_MORE:
|
case WiredConditionlayout.TIME_ELAPSED_MORE:
|
||||||
return <WiredConditionTimeElapsedMoreView />;
|
return <WiredConditionTimeElapsedMoreView />;
|
||||||
|
case WiredConditionlayout.USER_COUNT_IN:
|
||||||
|
case WiredConditionlayout.NOT_USER_COUNT_IN:
|
||||||
|
return <WiredConditionUserCountInRoomView />;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -72,7 +72,7 @@ export const WiredBaseView: FC<WiredBaseViewProps> = props =>
|
|||||||
<div className="fw-bold">{ LocalizeText('wiredfurni.pickfurnis.caption', [ 'count', 'limit' ], [ '0', '0' ]) }</div>
|
<div className="fw-bold">{ LocalizeText('wiredfurni.pickfurnis.caption', [ 'count', 'limit' ], [ '0', '0' ]) }</div>
|
||||||
<div>{ LocalizeText('wiredfurni.pickfurnis.desc') }</div>
|
<div>{ LocalizeText('wiredfurni.pickfurnis.desc') }</div>
|
||||||
</> }
|
</> }
|
||||||
<div className="d-flex mt-2">
|
<div className="d-flex mt-3">
|
||||||
<button className="btn btn-success me-2 w-100" onClick={ onSave }>{ LocalizeText('wiredfurni.ready') }</button>
|
<button className="btn btn-success me-2 w-100" onClick={ onSave }>{ LocalizeText('wiredfurni.ready') }</button>
|
||||||
<button className="btn btn-secondary w-100" onClick={ close }>{ LocalizeText('cancel') }</button>
|
<button className="btn btn-secondary w-100" onClick={ close }>{ LocalizeText('cancel') }</button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -0,0 +1,51 @@
|
|||||||
|
import Slider from 'rc-slider/lib/Slider';
|
||||||
|
import { FC, useCallback, useEffect, useState } from 'react';
|
||||||
|
import { LocalizeText } from '../../../../../utils/LocalizeText';
|
||||||
|
import { useWiredContext } from '../../../context/WiredContext';
|
||||||
|
import { WiredFurniType } from '../../../WiredView.types';
|
||||||
|
import { WiredConditionBaseView } from '../base/WiredConditionBaseView';
|
||||||
|
|
||||||
|
export const WiredConditionUserCountInRoomView: FC<{}> = props =>
|
||||||
|
{
|
||||||
|
const [ min, setMin ] = useState(1);
|
||||||
|
const [ max, setMax ] = useState(1);
|
||||||
|
const { trigger = null, setIntParams = null } = useWiredContext();
|
||||||
|
|
||||||
|
useEffect(() =>
|
||||||
|
{
|
||||||
|
if(trigger.intData.length >= 2)
|
||||||
|
{
|
||||||
|
setMin(trigger.intData[0]);
|
||||||
|
setMax(trigger.intData[1]);
|
||||||
|
}
|
||||||
|
}, [ trigger ]);
|
||||||
|
|
||||||
|
const save = useCallback(() =>
|
||||||
|
{
|
||||||
|
setIntParams([min, max]);
|
||||||
|
}, [ min, max, setIntParams ]);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<WiredConditionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } save={ save }>
|
||||||
|
<div className="fw-bold">{ LocalizeText('wiredfurni.params.usercountmin', ['value'], [min.toString()]) }</div>
|
||||||
|
<Slider
|
||||||
|
defaultValue={ min }
|
||||||
|
dots={ true }
|
||||||
|
min={ 1 }
|
||||||
|
max={ 50 }
|
||||||
|
step={ 1 }
|
||||||
|
onChange={ event => setMin(event) }
|
||||||
|
/>
|
||||||
|
<hr className="my-1 mb-2 bg-dark" />
|
||||||
|
<div className="fw-bold">{ LocalizeText('wiredfurni.params.usercountmax', ['value'], [max.toString()]) }</div>
|
||||||
|
<Slider
|
||||||
|
defaultValue={ max }
|
||||||
|
dots={ true }
|
||||||
|
min={ 1 }
|
||||||
|
max={ 50 }
|
||||||
|
step={ 1 }
|
||||||
|
onChange={ event => setMax(event) }
|
||||||
|
/>
|
||||||
|
</WiredConditionBaseView>
|
||||||
|
);
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user