mirror of
https://github.com/billsonnn/nitro-react.git
synced 2025-01-31 10:22:36 +01:00
Add eslint formatting
This commit is contained in:
parent
95621e95eb
commit
d7b00756bf
86
.eslintrc.js
86
.eslintrc.js
@ -1,86 +0,0 @@
|
|||||||
module.exports = {
|
|
||||||
'extends': [
|
|
||||||
'react-app',
|
|
||||||
'react-app/jest'
|
|
||||||
],
|
|
||||||
'rules': {
|
|
||||||
'linebreak-style': [
|
|
||||||
'off'
|
|
||||||
],
|
|
||||||
'quotes': [
|
|
||||||
'error',
|
|
||||||
'single'
|
|
||||||
],
|
|
||||||
'brace-style': [
|
|
||||||
'error',
|
|
||||||
'allman',
|
|
||||||
{
|
|
||||||
'allowSingleLine': true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'object-curly-spacing': [
|
|
||||||
'error',
|
|
||||||
'always'
|
|
||||||
],
|
|
||||||
'keyword-spacing': [
|
|
||||||
'error',
|
|
||||||
{
|
|
||||||
'overrides': {
|
|
||||||
'if': {
|
|
||||||
'after': false
|
|
||||||
},
|
|
||||||
'for': {
|
|
||||||
'after': false
|
|
||||||
},
|
|
||||||
'while': {
|
|
||||||
'after': false
|
|
||||||
},
|
|
||||||
'switch': {
|
|
||||||
'after': false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'@typescript-eslint/no-explicit-any': [
|
|
||||||
'off'
|
|
||||||
],
|
|
||||||
'@typescript-eslint/ban-ts-comment': [
|
|
||||||
'off'
|
|
||||||
],
|
|
||||||
'@typescript-eslint/no-empty-function': [
|
|
||||||
'error',
|
|
||||||
{
|
|
||||||
'allow': [
|
|
||||||
'functions',
|
|
||||||
'arrowFunctions',
|
|
||||||
'generatorFunctions',
|
|
||||||
'methods',
|
|
||||||
'generatorMethods',
|
|
||||||
'constructors'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'@typescript-eslint/no-unused-vars': [
|
|
||||||
'off'
|
|
||||||
],
|
|
||||||
'@typescript-eslint/ban-types': [
|
|
||||||
'error',
|
|
||||||
{
|
|
||||||
'types': {
|
|
||||||
'String': true,
|
|
||||||
'Boolean': true,
|
|
||||||
'Number': true,
|
|
||||||
'Symbol': true,
|
|
||||||
'{}': false,
|
|
||||||
'Object': false,
|
|
||||||
'object': false,
|
|
||||||
'Function': false
|
|
||||||
},
|
|
||||||
'extendDefaults': true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
'no-switch-case-fall-through': [
|
|
||||||
'off'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
34
.eslintrc.json
Normal file
34
.eslintrc.json
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"settings": {
|
||||||
|
"react": {
|
||||||
|
"pragma": "React",
|
||||||
|
"version": "17.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"env": {
|
||||||
|
"browser": true,
|
||||||
|
"es2021": true
|
||||||
|
},
|
||||||
|
"extends": [
|
||||||
|
"plugin:react/recommended",
|
||||||
|
"plugin:react/jsx-runtime"
|
||||||
|
],
|
||||||
|
"parser": "@typescript-eslint/parser",
|
||||||
|
"parserOptions": {
|
||||||
|
"ecmaFeatures": {
|
||||||
|
"jsx": true
|
||||||
|
},
|
||||||
|
"ecmaVersion": "latest",
|
||||||
|
"sourceType": "module"
|
||||||
|
},
|
||||||
|
"plugins": [
|
||||||
|
"react",
|
||||||
|
"@typescript-eslint"
|
||||||
|
],
|
||||||
|
"rules": {
|
||||||
|
"indent": ["error", 4, {"SwitchCase": 1}],
|
||||||
|
"array-bracket-spacing": ["error", "always"],
|
||||||
|
"brace-style": ["error", "allman"],
|
||||||
|
"react/prop-types": ["off"]
|
||||||
|
}
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
*.scss
|
|
4
.vscode/settings.json
vendored
4
.vscode/settings.json
vendored
@ -14,5 +14,7 @@
|
|||||||
"files.insertFinalNewline": true,
|
"files.insertFinalNewline": true,
|
||||||
"files.trimFinalNewlines": true,
|
"files.trimFinalNewlines": true,
|
||||||
"editor.wordWrap": "on",
|
"editor.wordWrap": "on",
|
||||||
"emmet.showExpandedAbbreviation": "never"
|
"emmet.showExpandedAbbreviation": "never",
|
||||||
|
"eslint.validate": [ "javascript", "javascriptreact", "html", "typescriptreact" ],
|
||||||
|
"eslint.workingDirectories": [ "./src" ]
|
||||||
}
|
}
|
||||||
|
11
package.json
11
package.json
@ -7,7 +7,8 @@
|
|||||||
"build": "cross-env GENERATE_SOURCEMAP=false IMAGE_INLINE_SIZE_LIMIT=100000 craco build",
|
"build": "cross-env GENERATE_SOURCEMAP=false IMAGE_INLINE_SIZE_LIMIT=100000 craco build",
|
||||||
"build:prod": "npx browserslist@latest --update-db && yarn build",
|
"build:prod": "npx browserslist@latest --update-db && yarn build",
|
||||||
"test": "craco test",
|
"test": "craco test",
|
||||||
"eject": "react-scripts eject"
|
"eject": "react-scripts eject",
|
||||||
|
"eslint": "eslint src --ext .ts,.tsx"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@craco/craco": "^6.3.0",
|
"@craco/craco": "^6.3.0",
|
||||||
@ -41,7 +42,13 @@
|
|||||||
"@types/react-slider": "^1.3.1",
|
"@types/react-slider": "^1.3.1",
|
||||||
"@types/react-transition-group": "^4.4.2",
|
"@types/react-transition-group": "^4.4.2",
|
||||||
"@types/react-virtualized": "^9.21.13",
|
"@types/react-virtualized": "^9.21.13",
|
||||||
"@typescript-eslint/eslint-plugin": "^4.29.1",
|
"@typescript-eslint/eslint-plugin": "^5.17.0",
|
||||||
|
"@typescript-eslint/parser": "^5.17.0",
|
||||||
|
"eslint": "^8.12.0",
|
||||||
|
"eslint-plugin-import": "^2.25.4",
|
||||||
|
"eslint-plugin-jsx-a11y": "^6.5.1",
|
||||||
|
"eslint-plugin-react": "^7.29.4",
|
||||||
|
"eslint-plugin-react-hooks": "^4.4.0",
|
||||||
"react-error-overlay": "6.0.9"
|
"react-error-overlay": "6.0.9"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,8 +14,8 @@ export const App: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
const [ isReady, setIsReady ] = useState(false);
|
const [ isReady, setIsReady ] = useState(false);
|
||||||
const [ isError, setIsError ] = useState(false);
|
const [ isError, setIsError ] = useState(false);
|
||||||
const [message, setMessage] = useState('Getting Ready');
|
const [ message, setMessage ] = useState('Getting Ready');
|
||||||
const [percent, setPercent] = useState(0);
|
const [ percent, setPercent ] = useState(0);
|
||||||
|
|
||||||
//@ts-ignore
|
//@ts-ignore
|
||||||
if(!NitroConfig) throw new Error('NitroConfig is not defined!');
|
if(!NitroConfig) throw new Error('NitroConfig is not defined!');
|
||||||
|
@ -10,5 +10,6 @@ export class TradeUserData
|
|||||||
public itemCount: number = 0,
|
public itemCount: number = 0,
|
||||||
public creditsCount: number = 0,
|
public creditsCount: number = 0,
|
||||||
public accepts: boolean = false,
|
public accepts: boolean = false,
|
||||||
public canTrade: boolean = false) {}
|
public canTrade: boolean = false)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ export class FurnitureInternalLinkHandler extends RoomWidgetHandler
|
|||||||
|
|
||||||
public get eventTypes(): string[]
|
public get eventTypes(): string[]
|
||||||
{
|
{
|
||||||
return [RoomEngineTriggerWidgetEvent.REQUEST_INTERNAL_LINK];
|
return [ RoomEngineTriggerWidgetEvent.REQUEST_INTERNAL_LINK ];
|
||||||
}
|
}
|
||||||
|
|
||||||
public get messageTypes(): string[]
|
public get messageTypes(): string[]
|
||||||
|
@ -49,7 +49,7 @@ export class FurnitureRoomLinkHandler extends RoomWidgetHandler
|
|||||||
|
|
||||||
public get eventTypes(): string[]
|
public get eventTypes(): string[]
|
||||||
{
|
{
|
||||||
return [RoomEngineTriggerWidgetEvent.REQUEST_ROOM_LINK];
|
return [ RoomEngineTriggerWidgetEvent.REQUEST_ROOM_LINK ];
|
||||||
}
|
}
|
||||||
|
|
||||||
public get messageTypes(): string[]
|
public get messageTypes(): string[]
|
||||||
|
@ -63,11 +63,11 @@ export class PollWidgetHandler extends RoomWidgetHandler
|
|||||||
|
|
||||||
public get eventTypes(): string[]
|
public get eventTypes(): string[]
|
||||||
{
|
{
|
||||||
return [RoomSessionPollEvent.OFFER, RoomSessionPollEvent.ERROR, RoomSessionPollEvent.CONTENT];
|
return [ RoomSessionPollEvent.OFFER, RoomSessionPollEvent.ERROR, RoomSessionPollEvent.CONTENT ];
|
||||||
}
|
}
|
||||||
|
|
||||||
public get messageTypes(): string[]
|
public get messageTypes(): string[]
|
||||||
{
|
{
|
||||||
return [RoomWidgetPollMessage.ANSWER, RoomWidgetPollMessage.REJECT, RoomWidgetPollMessage.START];
|
return [ RoomWidgetPollMessage.ANSWER, RoomWidgetPollMessage.REJECT, RoomWidgetPollMessage.START ];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -101,7 +101,7 @@ export class RoomWidgetChatHandler extends RoomWidgetHandler implements IAvatarI
|
|||||||
text = LocalizeText('widget.chatbubble.pettreat', [ 'petname' ], [ username ]);
|
text = LocalizeText('widget.chatbubble.pettreat', [ 'petname' ], [ username ]);
|
||||||
break;
|
break;
|
||||||
case RoomSessionChatEvent.CHAT_TYPE_HAND_ITEM_RECEIVED:
|
case RoomSessionChatEvent.CHAT_TYPE_HAND_ITEM_RECEIVED:
|
||||||
text = LocalizeText('widget.chatbubble.handitem', [ 'username', 'handitem' ], [ username, LocalizeText(('handitem' + chatEvent.extraParam))]);
|
text = LocalizeText('widget.chatbubble.handitem', [ 'username', 'handitem' ], [ username, LocalizeText(('handitem' + chatEvent.extraParam)) ]);
|
||||||
break;
|
break;
|
||||||
case RoomSessionChatEvent.CHAT_TYPE_MUTE_REMAINING: {
|
case RoomSessionChatEvent.CHAT_TYPE_MUTE_REMAINING: {
|
||||||
const hours = ((chatEvent.extraParam > 0) ? Math.floor((chatEvent.extraParam / 3600)) : 0).toString();
|
const hours = ((chatEvent.extraParam > 0) ? Math.floor((chatEvent.extraParam / 3600)) : 0).toString();
|
||||||
|
@ -64,7 +64,7 @@ export class WordQuizWidgetHandler extends RoomWidgetHandler
|
|||||||
|
|
||||||
public get eventTypes(): string[]
|
public get eventTypes(): string[]
|
||||||
{
|
{
|
||||||
return [RoomSessionWordQuizEvent.ANSWERED, RoomSessionWordQuizEvent.FINISHED, RoomSessionWordQuizEvent.QUESTION];
|
return [ RoomSessionWordQuizEvent.ANSWERED, RoomSessionWordQuizEvent.FINISHED, RoomSessionWordQuizEvent.QUESTION ];
|
||||||
}
|
}
|
||||||
|
|
||||||
public get messageTypes(): string[]
|
public get messageTypes(): string[]
|
||||||
|
@ -4,7 +4,7 @@ export class RoomWidgetDanceMessage extends RoomWidgetMessage
|
|||||||
{
|
{
|
||||||
public static DANCE: string = 'RWDM_MESSAGE_DANCE';
|
public static DANCE: string = 'RWDM_MESSAGE_DANCE';
|
||||||
public static NORMAL_STYLE: number = 0;
|
public static NORMAL_STYLE: number = 0;
|
||||||
public static CLUB_STYLE: number[] = [2, 3, 4];
|
public static CLUB_STYLE: number[] = [ 2, 3, 4 ];
|
||||||
|
|
||||||
private _style: number = 0;
|
private _style: number = 0;
|
||||||
|
|
||||||
|
@ -157,7 +157,7 @@ export class NotificationUtilities
|
|||||||
|
|
||||||
public static handleHotelClosedMessage(open: number, minute: number, thrownOut: boolean): void
|
public static handleHotelClosedMessage(open: number, minute: number, thrownOut: boolean): void
|
||||||
{
|
{
|
||||||
this.simpleAlert( LocalizeText(('opening.hours.' + (thrownOut ? 'disconnected' : 'closed')), [ 'h', 'm'], [ this.getTimeZeroPadded(open), this.getTimeZeroPadded(minute) ]), NotificationAlertType.DEFAULT, null, null, LocalizeText('opening.hours.title'));
|
this.simpleAlert( LocalizeText(('opening.hours.' + (thrownOut ? 'disconnected' : 'closed')), [ 'h', 'm' ], [ this.getTimeZeroPadded(open), this.getTimeZeroPadded(minute) ]), NotificationAlertType.DEFAULT, null, null, LocalizeText('opening.hours.title'));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static handleHotelMaintenanceMessage(minutesUntilMaintenance: number, duration: number): void
|
public static handleHotelMaintenanceMessage(minutesUntilMaintenance: number, duration: number): void
|
||||||
|
@ -26,9 +26,9 @@ allowedColours.set('pink', 'pink');
|
|||||||
function encodeHTML(str: string)
|
function encodeHTML(str: string)
|
||||||
{
|
{
|
||||||
return str.replace(/([\u00A0-\u9999<>&])(.|$)/g, function(full, char, next)
|
return str.replace(/([\u00A0-\u9999<>&])(.|$)/g, function(full, char, next)
|
||||||
{
|
{
|
||||||
if(char !== '&' || next !== '#')
|
if(char !== '&' || next !== '#')
|
||||||
{
|
{
|
||||||
if(/[\u00A0-\u9999<>&]/.test(next))
|
if(/[\u00A0-\u9999<>&]/.test(next))
|
||||||
next = '&#' + next.charCodeAt(0) + ';';
|
next = '&#' + next.charCodeAt(0) + ';';
|
||||||
|
|
||||||
|
@ -67,7 +67,8 @@ export const LayoutAvatarImageView: FC<LayoutAvatarImageViewProps> = props =>
|
|||||||
|
|
||||||
setRandomValue(Math.random());
|
setRandomValue(Math.random());
|
||||||
},
|
},
|
||||||
dispose: () => {},
|
dispose: () =>
|
||||||
|
{},
|
||||||
disposed: false
|
disposed: false
|
||||||
}, null);
|
}, null);
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ export const LayoutGiftTagView: FC<LayoutGiftTagViewProps> = props =>
|
|||||||
{ editable && (onChange !== null) &&
|
{ editable && (onChange !== null) &&
|
||||||
<textarea className="gift-message h-100" maxLength={ 140 } value={ message } onChange={ (e) => onChange(e.target.value) } placeholder={ LocalizeText('catalog.gift_wrapping_new.message_hint') }></textarea> }
|
<textarea className="gift-message h-100" maxLength={ 140 } value={ message } onChange={ (e) => onChange(e.target.value) } placeholder={ LocalizeText('catalog.gift_wrapping_new.message_hint') }></textarea> }
|
||||||
{ userName &&
|
{ userName &&
|
||||||
<Text italics textEnd className="pe-1">{ LocalizeText('catalog.gift_wrapping_new.message_from', ['name'], [userName]) }</Text> }
|
<Text italics textEnd className="pe-1">{ LocalizeText('catalog.gift_wrapping_new.message_from', [ 'name' ], [ userName ]) }</Text> }
|
||||||
</Column>
|
</Column>
|
||||||
</Flex>
|
</Flex>
|
||||||
</Flex>
|
</Flex>
|
||||||
|
@ -15,7 +15,7 @@ export const LayoutNotificationAlertView: FC<LayoutNotificationAlertViewProps> =
|
|||||||
|
|
||||||
const getClassNames = useMemo(() =>
|
const getClassNames = useMemo(() =>
|
||||||
{
|
{
|
||||||
const newClassNames: string[] = ['nitro-alert'];
|
const newClassNames: string[] = [ 'nitro-alert' ];
|
||||||
|
|
||||||
newClassNames.push('nitro-alert-' + type);
|
newClassNames.push('nitro-alert-' + type);
|
||||||
|
|
||||||
|
@ -8,15 +8,11 @@ interface LayoutLimitedEditionStyledNumberViewProps
|
|||||||
export const LayoutLimitedEditionStyledNumberView: FC<LayoutLimitedEditionStyledNumberViewProps> = props =>
|
export const LayoutLimitedEditionStyledNumberView: FC<LayoutLimitedEditionStyledNumberViewProps> = props =>
|
||||||
{
|
{
|
||||||
const { value = 0 } = props;
|
const { value = 0 } = props;
|
||||||
|
|
||||||
const numbers = value.toString().split('');
|
const numbers = value.toString().split('');
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{ numbers.map((number, index) =>
|
{ numbers.map((number, index) => <i key={ index } className={ 'limited-edition-number n-' + number } />) }
|
||||||
{
|
|
||||||
return <i key={ index } className={ 'limited-edition-number n-' + number } />;
|
|
||||||
})}
|
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,7 @@ import { FigureData } from './FigureData';
|
|||||||
export class AvatarEditorGridPartItem implements IAvatarImageListener
|
export class AvatarEditorGridPartItem implements IAvatarImageListener
|
||||||
{
|
{
|
||||||
private static ALPHA_FILTER: NitroAlphaFilter = new NitroAlphaFilter(0.2);
|
private static ALPHA_FILTER: NitroAlphaFilter = new NitroAlphaFilter(0.2);
|
||||||
private static THUMB_DIRECTIONS: number[] = [2, 6, 0, 4, 3, 1];
|
private static THUMB_DIRECTIONS: number[] = [ 2, 6, 0, 4, 3, 1 ];
|
||||||
private static DRAW_ORDER: string[] = [
|
private static DRAW_ORDER: string[] = [
|
||||||
AvatarFigurePartType.LEFT_HAND_ITEM,
|
AvatarFigurePartType.LEFT_HAND_ITEM,
|
||||||
AvatarFigurePartType.LEFT_HAND,
|
AvatarFigurePartType.LEFT_HAND,
|
||||||
|
@ -4,5 +4,6 @@ export class CameraPicture
|
|||||||
{
|
{
|
||||||
constructor(
|
constructor(
|
||||||
public texture: NitroTexture,
|
public texture: NitroTexture,
|
||||||
public imageUrl: string) {}
|
public imageUrl: string)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -2,5 +2,6 @@ export class CameraPictureThumbnail
|
|||||||
{
|
{
|
||||||
constructor(
|
constructor(
|
||||||
public effectName: string,
|
public effectName: string,
|
||||||
public thumbnailUrl: string) {}
|
public thumbnailUrl: string)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -104,7 +104,7 @@ export const CalendarView: FC<CalendarViewProps> = props =>
|
|||||||
<Column size={ 10 }>
|
<Column size={ 10 }>
|
||||||
<Flex justifyContent="between" alignItems="center" gap={ 1 }>
|
<Flex justifyContent="between" alignItems="center" gap={ 1 }>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text fontSize={ 3 }>{ LocalizeText('campaign.calendar.heading.day', ['number'], [(selectedDay + 1).toString()]) }</Text>
|
<Text fontSize={ 3 }>{ LocalizeText('campaign.calendar.heading.day', [ 'number' ], [ (selectedDay + 1).toString() ]) }</Text>
|
||||||
<Text>{ dayMessage(selectedDay) }</Text>
|
<Text>{ dayMessage(selectedDay) }</Text>
|
||||||
</Column>
|
</Column>
|
||||||
<div>
|
<div>
|
||||||
@ -121,7 +121,7 @@ export const CalendarView: FC<CalendarViewProps> = props =>
|
|||||||
</Flex>
|
</Flex>
|
||||||
<Column center fullWidth>
|
<Column center fullWidth>
|
||||||
<Grid fit columnCount={ TOTAL_SHOWN_ITEMS } gap={ 1 }>
|
<Grid fit columnCount={ TOTAL_SHOWN_ITEMS } gap={ 1 }>
|
||||||
{ [...Array(TOTAL_SHOWN_ITEMS)].map((e, i) =>
|
{ [ ...Array(TOTAL_SHOWN_ITEMS) ].map((e, i) =>
|
||||||
{
|
{
|
||||||
const day = (index + i);
|
const day = (index + i);
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ export const CampaignView: FC<{}> = props =>
|
|||||||
}
|
}
|
||||||
|
|
||||||
setLastOpenAttempt(-1);
|
setLastOpenAttempt(-1);
|
||||||
}, [lastOpenAttempt]);
|
}, [ lastOpenAttempt ]);
|
||||||
|
|
||||||
UseMessageEventHook(CampaignCalendarDoorOpenedMessageEvent, onCampaignCalendarDoorOpenedMessageEvent);
|
UseMessageEventHook(CampaignCalendarDoorOpenedMessageEvent, onCampaignCalendarDoorOpenedMessageEvent);
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ export const CampaignView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
SendMessageComposer(new OpenCampaignCalendarDoorComposer(calendarData.campaignName, id));
|
SendMessageComposer(new OpenCampaignCalendarDoorComposer(calendarData.campaignName, id));
|
||||||
}
|
}
|
||||||
}, [calendarData]);
|
}, [ calendarData ]);
|
||||||
|
|
||||||
const onCalendarClose = useCallback(() =>
|
const onCalendarClose = useCallback(() =>
|
||||||
{
|
{
|
||||||
@ -101,7 +101,7 @@ export const CampaignView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
RemoveLinkEventTracker(linkTracker);
|
RemoveLinkEventTracker(linkTracker);
|
||||||
}
|
}
|
||||||
}, [onLinkReceived]);
|
}, [ onLinkReceived ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
|
@ -415,7 +415,10 @@ export const CatalogView: FC<{}> = props =>
|
|||||||
<CatalogMessageHandler />
|
<CatalogMessageHandler />
|
||||||
{ isVisible &&
|
{ isVisible &&
|
||||||
<NitroCardView uniqueKey="catalog" className="nitro-catalog">
|
<NitroCardView uniqueKey="catalog" className="nitro-catalog">
|
||||||
<NitroCardHeaderView headerText={ LocalizeText('catalog.title') } onCloseClick={ event => { setIsVisible(false); } } />
|
<NitroCardHeaderView headerText={ LocalizeText('catalog.title') } onCloseClick={ event =>
|
||||||
|
{
|
||||||
|
setIsVisible(false);
|
||||||
|
} } />
|
||||||
<NitroCardTabsView>
|
<NitroCardTabsView>
|
||||||
{ rootNode && (rootNode.children.length > 0) && rootNode.children.map(child =>
|
{ rootNode && (rootNode.children.length > 0) && rootNode.children.map(child =>
|
||||||
{
|
{
|
||||||
|
@ -5,5 +5,6 @@ export class CatalogPetPalette
|
|||||||
constructor(
|
constructor(
|
||||||
public readonly breed: string,
|
public readonly breed: string,
|
||||||
public readonly palettes: SellablePetPaletteData[]
|
public readonly palettes: SellablePetPaletteData[]
|
||||||
) {}
|
)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -85,21 +85,21 @@ export function GetPetAvailableColors(petIndex: number, palettes: SellablePetPal
|
|||||||
switch(petIndex)
|
switch(petIndex)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
return [[16743226], [16750435], [16764339], [0xF59500], [16498012], [16704690], [0xEDD400], [16115545], [16513201], [8694111], [11585939], [14413767], [6664599], [9553845], [12971486], [8358322], [10002885], [13292268], [10780600], [12623573], [14403561], [12418717], [14327229], [15517403], [14515069], [15764368], [16366271], [0xABABAB], [0xD4D4D4], [0xFFFFFF], [14256481], [14656129], [15848130], [14005087], [14337152], [15918540], [15118118], [15531929], [9764857], [11258085]];
|
return [ [ 16743226 ], [ 16750435 ], [ 16764339 ], [ 0xF59500 ], [ 16498012 ], [ 16704690 ], [ 0xEDD400 ], [ 16115545 ], [ 16513201 ], [ 8694111 ], [ 11585939 ], [ 14413767 ], [ 6664599 ], [ 9553845 ], [ 12971486 ], [ 8358322 ], [ 10002885 ], [ 13292268 ], [ 10780600 ], [ 12623573 ], [ 14403561 ], [ 12418717 ], [ 14327229 ], [ 15517403 ], [ 14515069 ], [ 15764368 ], [ 16366271 ], [ 0xABABAB ], [ 0xD4D4D4 ], [ 0xFFFFFF ], [ 14256481 ], [ 14656129 ], [ 15848130 ], [ 14005087 ], [ 14337152 ], [ 15918540 ], [ 15118118 ], [ 15531929 ], [ 9764857 ], [ 11258085 ] ];
|
||||||
case 1:
|
case 1:
|
||||||
return [[16743226], [16750435], [16764339], [0xF59500], [16498012], [16704690], [0xEDD400], [16115545], [16513201], [8694111], [11585939], [14413767], [6664599], [9553845], [12971486], [8358322], [10002885], [13292268], [10780600], [12623573], [14403561], [12418717], [14327229], [15517403], [14515069], [15764368], [16366271], [0xABABAB], [0xD4D4D4], [0xFFFFFF], [14256481], [14656129], [15848130], [14005087], [14337152], [15918540], [15118118], [15531929], [9764857], [11258085]];
|
return [ [ 16743226 ], [ 16750435 ], [ 16764339 ], [ 0xF59500 ], [ 16498012 ], [ 16704690 ], [ 0xEDD400 ], [ 16115545 ], [ 16513201 ], [ 8694111 ], [ 11585939 ], [ 14413767 ], [ 6664599 ], [ 9553845 ], [ 12971486 ], [ 8358322 ], [ 10002885 ], [ 13292268 ], [ 10780600 ], [ 12623573 ], [ 14403561 ], [ 12418717 ], [ 14327229 ], [ 15517403 ], [ 14515069 ], [ 15764368 ], [ 16366271 ], [ 0xABABAB ], [ 0xD4D4D4 ], [ 0xFFFFFF ], [ 14256481 ], [ 14656129 ], [ 15848130 ], [ 14005087 ], [ 14337152 ], [ 15918540 ], [ 15118118 ], [ 15531929 ], [ 9764857 ], [ 11258085 ] ];
|
||||||
case 2:
|
case 2:
|
||||||
return [[16579283], [15378351], [8830016], [15257125], [9340985], [8949607], [6198292], [8703620], [9889626], [8972045], [12161285], [13162269], [8620113], [12616503], [8628101], [0xD2FF00], [9764857]];
|
return [ [ 16579283 ], [ 15378351 ], [ 8830016 ], [ 15257125 ], [ 9340985 ], [ 8949607 ], [ 6198292 ], [ 8703620 ], [ 9889626 ], [ 8972045 ], [ 12161285 ], [ 13162269 ], [ 8620113 ], [ 12616503 ], [ 8628101 ], [ 0xD2FF00 ], [ 9764857 ] ];
|
||||||
case 3:
|
case 3:
|
||||||
return [[0xFFFFFF], [0xEEEEEE], [0xDDDDDD]];
|
return [ [ 0xFFFFFF ], [ 0xEEEEEE ], [ 0xDDDDDD ] ];
|
||||||
case 4:
|
case 4:
|
||||||
return [[0xFFFFFF], [16053490], [15464440], [16248792], [15396319], [15007487]];
|
return [ [ 0xFFFFFF ], [ 16053490 ], [ 15464440 ], [ 16248792 ], [ 15396319 ], [ 15007487 ] ];
|
||||||
case 5:
|
case 5:
|
||||||
return [[0xFFFFFF], [0xEEEEEE], [0xDDDDDD]];
|
return [ [ 0xFFFFFF ], [ 0xEEEEEE ], [ 0xDDDDDD ] ];
|
||||||
case 6:
|
case 6:
|
||||||
return [[0xFFFFFF], [0xEEEEEE], [0xDDDDDD], [16767177], [16770205], [16751331]];
|
return [ [ 0xFFFFFF ], [ 0xEEEEEE ], [ 0xDDDDDD ], [ 16767177 ], [ 16770205 ], [ 16751331 ] ];
|
||||||
case 7:
|
case 7:
|
||||||
return [[0xCCCCCC], [0xAEAEAE], [16751331], [10149119], [16763290], [16743786]];
|
return [ [ 0xCCCCCC ], [ 0xAEAEAE ], [ 16751331 ], [ 10149119 ], [ 16763290 ], [ 16743786 ] ];
|
||||||
default: {
|
default: {
|
||||||
const colors: number[][] = [];
|
const colors: number[][] = [];
|
||||||
|
|
||||||
|
@ -6,6 +6,6 @@ export class SearchResult
|
|||||||
constructor(
|
constructor(
|
||||||
public readonly searchValue: string,
|
public readonly searchValue: string,
|
||||||
public readonly offers: IPurchasableOffer[],
|
public readonly offers: IPurchasableOffer[],
|
||||||
public readonly filteredNodes: ICatalogNode[]
|
public readonly filteredNodes: ICatalogNode[])
|
||||||
) {}
|
{}
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,8 @@ export class SubscriptionInfo
|
|||||||
public readonly clubPeriods: number = 0,
|
public readonly clubPeriods: number = 0,
|
||||||
public readonly isVip: boolean = false,
|
public readonly isVip: boolean = false,
|
||||||
public readonly pastDays: number = 0,
|
public readonly pastDays: number = 0,
|
||||||
public readonly pastVipDays: number = 0) {}
|
public readonly pastVipDays: number = 0)
|
||||||
|
{}
|
||||||
|
|
||||||
public get lastUpdated(): number
|
public get lastUpdated(): number
|
||||||
{
|
{
|
||||||
|
@ -196,7 +196,7 @@ export const CatalogGiftView: FC<{}> = props =>
|
|||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text fontWeight="bold">{ LocalizeText(boxName) }</Text>
|
<Text fontWeight="bold">{ LocalizeText(boxName) }</Text>
|
||||||
<Flex alignItems="center" gap={ 1 }>
|
<Flex alignItems="center" gap={ 1 }>
|
||||||
{ LocalizeText(priceText, ['price'], [giftConfiguration.price.toString()]) }
|
{ LocalizeText(priceText, [ 'price' ], [ giftConfiguration.price.toString() ]) }
|
||||||
<LayoutCurrencyIcon type={ -1 } />
|
<LayoutCurrencyIcon type={ -1 } />
|
||||||
</Flex>
|
</Flex>
|
||||||
</Column>
|
</Column>
|
||||||
|
@ -44,8 +44,8 @@ export const CatalogLayoutMarketplaceItemView: FC<MarketplaceItemViewProps> = pr
|
|||||||
text = hours + ' ' + LocalizeText('catalog.marketplace.offer.hours') + ' ' + text;
|
text = hours + ' ' + LocalizeText('catalog.marketplace.offer.hours') + ' ' + text;
|
||||||
}
|
}
|
||||||
|
|
||||||
return LocalizeText('catalog.marketplace.offer.time_left', ['time'], [text] );
|
return LocalizeText('catalog.marketplace.offer.time_left', [ 'time' ], [ text ] );
|
||||||
}, [offerData]);
|
}, [ offerData ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<LayoutGridItem shrink center={ false } column={ false } alignItems="center" className="p-1">
|
<LayoutGridItem shrink center={ false } column={ false } alignItems="center" className="p-1">
|
||||||
@ -59,8 +59,8 @@ export const CatalogLayoutMarketplaceItemView: FC<MarketplaceItemViewProps> = pr
|
|||||||
</> }
|
</> }
|
||||||
{ (type === PUBLIC_OFFER) &&
|
{ (type === PUBLIC_OFFER) &&
|
||||||
<>
|
<>
|
||||||
<Text>{ LocalizeText('catalog.marketplace.offer.price_public_item', ['price', 'average'], [offerData.price.toString(), offerData.averagePrice.toString() ]) }</Text>
|
<Text>{ LocalizeText('catalog.marketplace.offer.price_public_item', [ 'price', 'average' ], [ offerData.price.toString(), offerData.averagePrice.toString() ]) }</Text>
|
||||||
<Text>{ LocalizeText('catalog.marketplace.offer_count', ['count'], [offerData.offerCount.toString()]) }</Text>
|
<Text>{ LocalizeText('catalog.marketplace.offer_count', [ 'count' ], [ offerData.offerCount.toString() ]) }</Text>
|
||||||
</> }
|
</> }
|
||||||
</Column>
|
</Column>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
|
@ -91,7 +91,7 @@ export const CatalogLayoutMarketplaceOwnItemsView: FC<CatalogLayoutProps> = prop
|
|||||||
{ (creditsWaiting > 0) &&
|
{ (creditsWaiting > 0) &&
|
||||||
<Column center gap={ 1 } className="bg-muted rounded p-2">
|
<Column center gap={ 1 } className="bg-muted rounded p-2">
|
||||||
<Text>
|
<Text>
|
||||||
{ LocalizeText('catalog.marketplace.redeem.get_credits', ['count', 'credits'], [ soldOffers.length.toString(), creditsWaiting.toString() ]) }
|
{ LocalizeText('catalog.marketplace.redeem.get_credits', [ 'count', 'credits' ], [ soldOffers.length.toString(), creditsWaiting.toString() ]) }
|
||||||
</Text>
|
</Text>
|
||||||
<Button className="mt-1" onClick={ redeemSoldOffers }>
|
<Button className="mt-1" onClick={ redeemSoldOffers }>
|
||||||
{ LocalizeText('catalog.marketplace.offer.redeem') }
|
{ LocalizeText('catalog.marketplace.offer.redeem') }
|
||||||
|
@ -11,9 +11,9 @@ import { IMarketplaceSearchOptions } from './common/IMarketplaceSearchOptions';
|
|||||||
import { MarketplaceOfferData } from './common/MarketplaceOfferData';
|
import { MarketplaceOfferData } from './common/MarketplaceOfferData';
|
||||||
import { MarketplaceSearchType } from './common/MarketplaceSearchType';
|
import { MarketplaceSearchType } from './common/MarketplaceSearchType';
|
||||||
|
|
||||||
const SORT_TYPES_VALUE = [1, 2];
|
const SORT_TYPES_VALUE = [ 1, 2 ];
|
||||||
const SORT_TYPES_ACTIVITY = [3, 4, 5, 6];
|
const SORT_TYPES_ACTIVITY = [ 3, 4, 5, 6 ];
|
||||||
const SORT_TYPES_ADVANCED = [1, 2, 3, 4, 5, 6];
|
const SORT_TYPES_ADVANCED = [ 1, 2, 3, 4, 5, 6 ];
|
||||||
export interface CatalogLayoutMarketplacePublicItemsViewProps extends CatalogLayoutProps
|
export interface CatalogLayoutMarketplacePublicItemsViewProps extends CatalogLayoutProps
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -44,7 +44,7 @@ export const CatalogLayoutMarketplacePublicItemsView: FC<CatalogLayoutMarketplac
|
|||||||
return SORT_TYPES_ADVANCED;
|
return SORT_TYPES_ADVANCED;
|
||||||
}
|
}
|
||||||
return [];
|
return [];
|
||||||
}, [searchType]);
|
}, [ searchType ]);
|
||||||
|
|
||||||
const purchaseItem = useCallback((offerData: MarketplaceOfferData) =>
|
const purchaseItem = useCallback((offerData: MarketplaceOfferData) =>
|
||||||
{
|
{
|
||||||
@ -124,7 +124,7 @@ export const CatalogLayoutMarketplacePublicItemsView: FC<CatalogLayoutMarketplac
|
|||||||
});
|
});
|
||||||
|
|
||||||
NotificationUtilities.confirm(LocalizeText('catalog.marketplace.confirm_higher_header') +
|
NotificationUtilities.confirm(LocalizeText('catalog.marketplace.confirm_higher_header') +
|
||||||
'\n' + LocalizeText('catalog.marketplace.confirm_price', ['price'], [parser.newPrice.toString()]), () =>
|
'\n' + LocalizeText('catalog.marketplace.confirm_price', [ 'price' ], [ parser.newPrice.toString() ]), () =>
|
||||||
{
|
{
|
||||||
SendMessageComposer(new BuyMarketplaceOfferMessageComposer(parser.offerId));
|
SendMessageComposer(new BuyMarketplaceOfferMessageComposer(parser.offerId));
|
||||||
},
|
},
|
||||||
@ -134,7 +134,7 @@ export const CatalogLayoutMarketplacePublicItemsView: FC<CatalogLayoutMarketplac
|
|||||||
NotificationUtilities.simpleAlert(LocalizeText('catalog.alert.notenough.credits.description'), NotificationAlertType.DEFAULT, null, null, LocalizeText('catalog.alert.notenough.title'));
|
NotificationUtilities.simpleAlert(LocalizeText('catalog.alert.notenough.credits.description'), NotificationAlertType.DEFAULT, null, null, LocalizeText('catalog.alert.notenough.title'));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}, [lastSearch, requestOffers]);
|
}, [ lastSearch, requestOffers ]);
|
||||||
|
|
||||||
UseMessageEventHook(MarketPlaceOffersEvent, onMarketPlaceOffersEvent);
|
UseMessageEventHook(MarketPlaceOffersEvent, onMarketPlaceOffersEvent);
|
||||||
UseMessageEventHook(MarketplaceBuyOfferResultEvent, onMarketplaceBuyOfferResultEvent);
|
UseMessageEventHook(MarketplaceBuyOfferResultEvent, onMarketplaceBuyOfferResultEvent);
|
||||||
|
@ -46,7 +46,7 @@ export const SearchFormView: FC<SearchFormViewProps> = props =>
|
|||||||
setSortType(sortType);
|
setSortType(sortType);
|
||||||
|
|
||||||
if(searchType === MarketplaceSearchType.BY_ACTIVITY || MarketplaceSearchType.BY_VALUE === searchType) onSearch({ minPrice: -1, maxPrice: -1, query: '', type: sortType });
|
if(searchType === MarketplaceSearchType.BY_ACTIVITY || MarketplaceSearchType.BY_VALUE === searchType) onSearch({ minPrice: -1, maxPrice: -1, query: '', type: sortType });
|
||||||
}, [onSearch, searchType, sortTypes]);
|
}, [ onSearch, searchType, sortTypes ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
|
@ -64,7 +64,10 @@ export const MarketplacePostOfferView : FC<{}> = props =>
|
|||||||
SendMessageComposer(new MakeOfferMessageComposer(askingPrice, item.isWallItem ? 2 : 1, item.id));
|
SendMessageComposer(new MakeOfferMessageComposer(askingPrice, item.isWallItem ? 2 : 1, item.id));
|
||||||
setItem(null);
|
setItem(null);
|
||||||
},
|
},
|
||||||
() => { setItem(null) }, null, null, LocalizeText('inventory.marketplace.confirm_offer.title'));
|
() =>
|
||||||
|
{
|
||||||
|
setItem(null)
|
||||||
|
}, null, null, LocalizeText('inventory.marketplace.confirm_offer.title'));
|
||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@ -82,7 +85,7 @@ export const MarketplacePostOfferView : FC<{}> = props =>
|
|||||||
</Column>
|
</Column>
|
||||||
<Column overflow="auto">
|
<Column overflow="auto">
|
||||||
<Text italics>
|
<Text italics>
|
||||||
{ LocalizeText('inventory.marketplace.make_offer.expiration_info', ['time'], [marketplaceConfiguration.offerTime.toString()]) }
|
{ LocalizeText('inventory.marketplace.make_offer.expiration_info', [ 'time' ], [ marketplaceConfiguration.offerTime.toString() ]) }
|
||||||
</Text>
|
</Text>
|
||||||
<div className="input-group has-validation">
|
<div className="input-group has-validation">
|
||||||
<input className="form-control form-control-sm" type="number" min={ 0 } value={ askingPrice } onChange={ event => setAskingPrice(parseInt(event.target.value)) } placeholder={ LocalizeText('inventory.marketplace.make_offer.price_request') } />
|
<input className="form-control form-control-sm" type="number" min={ 0 } value={ askingPrice } onChange={ event => setAskingPrice(parseInt(event.target.value)) } placeholder={ LocalizeText('inventory.marketplace.make_offer.price_request') } />
|
||||||
|
@ -21,7 +21,7 @@ export const VipGiftItem : FC<VipGiftItemViewProps> = props =>
|
|||||||
const productData = offer.products[0];
|
const productData = offer.products[0];
|
||||||
|
|
||||||
return ProductImageUtility.getProductImageUrl(productData.productType, productData.furniClassId, productData.extraParam);
|
return ProductImageUtility.getProductImageUrl(productData.productType, productData.furniClassId, productData.extraParam);
|
||||||
}, [offer]);
|
}, [ offer ]);
|
||||||
|
|
||||||
const getItemTitle = useCallback(() =>
|
const getItemTitle = useCallback(() =>
|
||||||
{
|
{
|
||||||
@ -32,7 +32,7 @@ export const VipGiftItem : FC<VipGiftItemViewProps> = props =>
|
|||||||
const localizationKey = ProductImageUtility.getProductCategory(productData.productType, productData.furniClassId) === 2 ? 'wallItem.name.' + productData.furniClassId : 'roomItem.name.' + productData.furniClassId;
|
const localizationKey = ProductImageUtility.getProductCategory(productData.productType, productData.furniClassId) === 2 ? 'wallItem.name.' + productData.furniClassId : 'roomItem.name.' + productData.furniClassId;
|
||||||
|
|
||||||
return LocalizeText(localizationKey);
|
return LocalizeText(localizationKey);
|
||||||
}, [offer]);
|
}, [ offer ]);
|
||||||
|
|
||||||
const getItemDesc = useCallback( () =>
|
const getItemDesc = useCallback( () =>
|
||||||
{
|
{
|
||||||
@ -43,7 +43,7 @@ export const VipGiftItem : FC<VipGiftItemViewProps> = props =>
|
|||||||
const localizationKey = ProductImageUtility.getProductCategory(productData.productType, productData.furniClassId) === 2 ? 'wallItem.desc.' + productData.furniClassId : 'roomItem.desc.' + productData.furniClassId ;
|
const localizationKey = ProductImageUtility.getProductCategory(productData.productType, productData.furniClassId) === 2 ? 'wallItem.desc.' + productData.furniClassId : 'roomItem.desc.' + productData.furniClassId ;
|
||||||
|
|
||||||
return LocalizeText(localizationKey);
|
return LocalizeText(localizationKey);
|
||||||
}, [offer]);
|
}, [ offer ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<LayoutGridItem center={ false } column={ false } alignItems="center" className="p-1">
|
<LayoutGridItem center={ false } column={ false } alignItems="center" className="p-1">
|
||||||
|
@ -15,7 +15,7 @@ export const ChatHistoryMessageHandler: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
const { chatHistoryState = null, roomHistoryState = null } = useChatHistoryContext();
|
const { chatHistoryState = null, roomHistoryState = null } = useChatHistoryContext();
|
||||||
|
|
||||||
const [needsRoomInsert, setNeedsRoomInsert ] = useState(false);
|
const [ needsRoomInsert, setNeedsRoomInsert ] = useState(false);
|
||||||
|
|
||||||
const addChatEntry = useCallback((entry: IChatEntry) =>
|
const addChatEntry = useCallback((entry: IChatEntry) =>
|
||||||
{
|
{
|
||||||
@ -32,7 +32,7 @@ export const ChatHistoryMessageHandler: FC<{}> = props =>
|
|||||||
|
|
||||||
//dispatchUiEvent(new ChatHistoryEvent(ChatHistoryEvent.CHAT_HISTORY_CHANGED));
|
//dispatchUiEvent(new ChatHistoryEvent(ChatHistoryEvent.CHAT_HISTORY_CHANGED));
|
||||||
|
|
||||||
}, [chatHistoryState]);
|
}, [ chatHistoryState ]);
|
||||||
|
|
||||||
const addRoomHistoryEntry = useCallback((entry: IRoomHistoryEntry) =>
|
const addRoomHistoryEntry = useCallback((entry: IRoomHistoryEntry) =>
|
||||||
{
|
{
|
||||||
@ -45,7 +45,7 @@ export const ChatHistoryMessageHandler: FC<{}> = props =>
|
|||||||
}
|
}
|
||||||
|
|
||||||
roomHistoryState.notify();
|
roomHistoryState.notify();
|
||||||
}, [roomHistoryState]);
|
}, [ roomHistoryState ]);
|
||||||
|
|
||||||
const onChatEvent = useCallback((event: RoomSessionChatEvent) =>
|
const onChatEvent = useCallback((event: RoomSessionChatEvent) =>
|
||||||
{
|
{
|
||||||
@ -62,7 +62,7 @@ export const ChatHistoryMessageHandler: FC<{}> = props =>
|
|||||||
const entry: IChatEntry = { id: -1, entityId: userData.webID, name: userData.name, look: userData.figure, entityType: userData.type, message: event.message, timestamp: timeString, type: ChatEntryType.TYPE_CHAT, roomId: roomSession.roomId };
|
const entry: IChatEntry = { id: -1, entityId: userData.webID, name: userData.name, look: userData.figure, entityType: userData.type, message: event.message, timestamp: timeString, type: ChatEntryType.TYPE_CHAT, roomId: roomSession.roomId };
|
||||||
|
|
||||||
addChatEntry(entry);
|
addChatEntry(entry);
|
||||||
}, [addChatEntry]);
|
}, [ addChatEntry ]);
|
||||||
|
|
||||||
UseRoomSessionManagerEvent(RoomSessionChatEvent.CHAT_EVENT, onChatEvent);
|
UseRoomSessionManagerEvent(RoomSessionChatEvent.CHAT_EVENT, onChatEvent);
|
||||||
|
|
||||||
@ -104,7 +104,7 @@ export const ChatHistoryMessageHandler: FC<{}> = props =>
|
|||||||
|
|
||||||
setNeedsRoomInsert(false);
|
setNeedsRoomInsert(false);
|
||||||
}
|
}
|
||||||
}, [addChatEntry, addRoomHistoryEntry, needsRoomInsert]);
|
}, [ addChatEntry, addRoomHistoryEntry, needsRoomInsert ]);
|
||||||
|
|
||||||
UseMessageEventHook(GetGuestRoomResultEvent, onGetGuestRoomResultEvent);
|
UseMessageEventHook(GetGuestRoomResultEvent, onGetGuestRoomResultEvent);
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ export const FloorplanEditorView: FC<{}> = props =>
|
|||||||
const [ originalFloorplanSettings, setOriginalFloorplanSettings ] = useState<IFloorplanSettings>({
|
const [ originalFloorplanSettings, setOriginalFloorplanSettings ] = useState<IFloorplanSettings>({
|
||||||
tilemap: '',
|
tilemap: '',
|
||||||
reservedTiles: [],
|
reservedTiles: [],
|
||||||
entryPoint: [0, 0],
|
entryPoint: [ 0, 0 ],
|
||||||
entryPointDir: 2,
|
entryPointDir: 2,
|
||||||
wallHeight: -1,
|
wallHeight: -1,
|
||||||
thicknessWall: 1,
|
thicknessWall: 1,
|
||||||
|
@ -151,7 +151,7 @@ export class FloorplanEditor extends PixiApplicationProxy
|
|||||||
{
|
{
|
||||||
if(this._isHolding)
|
if(this._isHolding)
|
||||||
{
|
{
|
||||||
const [realX, realY] = getTileFromScreenPosition(tileStartX, tileStartY);
|
const [ realX, realY ] = getTileFromScreenPosition(tileStartX, tileStartY);
|
||||||
|
|
||||||
if(isClick)
|
if(isClick)
|
||||||
{
|
{
|
||||||
@ -246,7 +246,7 @@ export class FloorplanEditor extends PixiApplicationProxy
|
|||||||
if(tile.isBlocked) assetName = FloorplanEditor.TILE_BLOCKED;
|
if(tile.isBlocked) assetName = FloorplanEditor.TILE_BLOCKED;
|
||||||
|
|
||||||
//if((tile.height === 'x') || tile.height === 'X') continue;
|
//if((tile.height === 'x') || tile.height === 'X') continue;
|
||||||
const [positionX, positionY] = getScreenPositionForTile(x, y);
|
const [ positionX, positionY ] = getScreenPositionForTile(x, y);
|
||||||
|
|
||||||
this._tilemapRenderer.tile(this._assetCollection.getTexture(`floor_editor_${ assetName }`), positionX, positionY);
|
this._tilemapRenderer.tile(this._assetCollection.getTexture(`floor_editor_${ assetName }`), positionX, positionY);
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,7 @@ export const getScreenPositionForTile = (x: number, y: number): [number , number
|
|||||||
|
|
||||||
positionX = positionX + 1024; // center the map in the canvas
|
positionX = positionX + 1024; // center the map in the canvas
|
||||||
|
|
||||||
return [positionX, positionY];
|
return [ positionX, positionY ];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const getTileFromScreenPosition = (x: number, y: number): [number, number] =>
|
export const getTileFromScreenPosition = (x: number, y: number): [number, number] =>
|
||||||
@ -17,7 +17,7 @@ export const getTileFromScreenPosition = (x: number, y: number): [number, number
|
|||||||
const realX = ((translatedX /(TILE_SIZE / 2)) + (y / (TILE_SIZE / 4))) / 2;
|
const realX = ((translatedX /(TILE_SIZE / 2)) + (y / (TILE_SIZE / 4))) / 2;
|
||||||
const realY = ((y /(TILE_SIZE / 4)) - (translatedX / (TILE_SIZE / 2))) / 2;
|
const realY = ((y /(TILE_SIZE / 4)) - (translatedX / (TILE_SIZE / 2))) / 2;
|
||||||
|
|
||||||
return [realX, realY];
|
return [ realX, realY ];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const convertNumbersForSaving = (value: number): number =>
|
export const convertNumbersForSaving = (value: number): number =>
|
||||||
|
@ -6,5 +6,6 @@ export class MessengerSettings
|
|||||||
public userFriendLimit: number = 0,
|
public userFriendLimit: number = 0,
|
||||||
public normalFriendLimit: number = 0,
|
public normalFriendLimit: number = 0,
|
||||||
public extendedFriendLimit: number = 0,
|
public extendedFriendLimit: number = 0,
|
||||||
public categories: FriendCategoryData[] = []) {}
|
public categories: FriendCategoryData[] = [])
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ export const FriendsListView: FC<FriendsListViewProps> = props =>
|
|||||||
}
|
}
|
||||||
|
|
||||||
return LocalizeText('friendlist.removefriendconfirm.userlist', [ 'user_names' ], [ userNames.join(', ') ]);
|
return LocalizeText('friendlist.removefriendconfirm.userlist', [ 'user_names' ], [ userNames.join(', ') ]);
|
||||||
}, [offlineFriends, onlineFriends, selectedFriendsIds]);
|
}, [ offlineFriends, onlineFriends, selectedFriendsIds ]);
|
||||||
|
|
||||||
const selectFriend = useCallback((userId: number) =>
|
const selectFriend = useCallback((userId: number) =>
|
||||||
{
|
{
|
||||||
|
@ -26,7 +26,7 @@ export const FriendsMessengerThreadGroup: FC<FriendsMessengerThreadGroupProps> =
|
|||||||
if( (group.type === GroupType.GROUP_CHAT) && (group.chats.length && getGroupChatData(group.chats[0].extraData).userId === GetSessionDataManager().userId)) return true;
|
if( (group.type === GroupType.GROUP_CHAT) && (group.chats.length && getGroupChatData(group.chats[0].extraData).userId === GetSessionDataManager().userId)) return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}, [group, thread]);
|
}, [ group, thread ]);
|
||||||
|
|
||||||
if(!thread || !group) return null;
|
if(!thread || !group) return null;
|
||||||
|
|
||||||
@ -37,8 +37,8 @@ export const FriendsMessengerThreadGroup: FC<FriendsMessengerThreadGroupProps> =
|
|||||||
{ group.chats.map((chat, index) =>
|
{ group.chats.map((chat, index) =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<div className="d-flex gap-2 w-100 justify-content-start">
|
<div key={ index } className="d-flex gap-2 w-100 justify-content-start">
|
||||||
<Base key={ index } className="w-100 text-break">
|
<Base className="w-100 text-break">
|
||||||
{ chat.type === MessengerThreadChat.SECURITY_NOTIFICATION &&
|
{ chat.type === MessengerThreadChat.SECURITY_NOTIFICATION &&
|
||||||
<Base className="bg-light rounded mb-2 d-flex gap-2 px-2 py-1 small text-muted align-items-center">
|
<Base className="bg-light rounded mb-2 d-flex gap-2 px-2 py-1 small text-muted align-items-center">
|
||||||
<Base className="nitro-friends-spritesheet icon-warning flex-shrink-0" />
|
<Base className="nitro-friends-spritesheet icon-warning flex-shrink-0" />
|
||||||
|
@ -12,29 +12,29 @@ import { FriendsMessengerThreadView } from './FriendsMessengerThreadView';
|
|||||||
|
|
||||||
export const FriendsMessengerView: FC<{}> = props =>
|
export const FriendsMessengerView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
const [isVisible, setIsVisible] = useState(false);
|
const [ isVisible, setIsVisible ] = useState(false);
|
||||||
const [messageThreads, setMessageThreads] = useState<MessengerThread[]>([]);
|
const [ messageThreads, setMessageThreads ] = useState<MessengerThread[]>([]);
|
||||||
const [activeThreadIndex, setActiveThreadIndex] = useState(-1);
|
const [ activeThreadIndex, setActiveThreadIndex ] = useState(-1);
|
||||||
const [hiddenThreadIndexes, setHiddenThreadIndexes] = useState<number[]>([]);
|
const [ hiddenThreadIndexes, setHiddenThreadIndexes ] = useState<number[]>([]);
|
||||||
const [messageText, setMessageText] = useState('');
|
const [ messageText, setMessageText ] = useState('');
|
||||||
const [updateValue, setUpdateValue] = useState({});
|
const [ updateValue, setUpdateValue ] = useState({});
|
||||||
const { friends = [] } = useFriendsContext();
|
const { friends = [] } = useFriendsContext();
|
||||||
const messagesBox = useRef<HTMLDivElement>();
|
const messagesBox = useRef<HTMLDivElement>();
|
||||||
|
|
||||||
const followFriend = useCallback(() =>
|
const followFriend = useCallback(() =>
|
||||||
{
|
{
|
||||||
SendMessageComposer(new FollowFriendMessageComposer(messageThreads[activeThreadIndex].participant.id));
|
SendMessageComposer(new FollowFriendMessageComposer(messageThreads[activeThreadIndex].participant.id));
|
||||||
}, [messageThreads, activeThreadIndex]);
|
}, [ messageThreads, activeThreadIndex ]);
|
||||||
|
|
||||||
const openProfile = useCallback(() =>
|
const openProfile = useCallback(() =>
|
||||||
{
|
{
|
||||||
GetUserProfile(messageThreads[activeThreadIndex].participant.id);
|
GetUserProfile(messageThreads[activeThreadIndex].participant.id);
|
||||||
}, [messageThreads, activeThreadIndex]);
|
}, [ messageThreads, activeThreadIndex ]);
|
||||||
|
|
||||||
const getFriend = useCallback((userId: number) =>
|
const getFriend = useCallback((userId: number) =>
|
||||||
{
|
{
|
||||||
return ((friends.find(friend => (friend.id === userId))) || null);
|
return ((friends.find(friend => (friend.id === userId))) || null);
|
||||||
}, [friends]);
|
}, [ friends ]);
|
||||||
|
|
||||||
const visibleThreads = useMemo(() =>
|
const visibleThreads = useMemo(() =>
|
||||||
{
|
{
|
||||||
@ -44,7 +44,7 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
}, [messageThreads, hiddenThreadIndexes]);
|
}, [ messageThreads, hiddenThreadIndexes ]);
|
||||||
|
|
||||||
const getMessageThreadWithIndex = useCallback<(userId: number) => [number, MessengerThread]>((userId: number) =>
|
const getMessageThreadWithIndex = useCallback<(userId: number) => [number, MessengerThread]>((userId: number) =>
|
||||||
{
|
{
|
||||||
@ -62,7 +62,7 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
setHiddenThreadIndexes(prevValue =>
|
setHiddenThreadIndexes(prevValue =>
|
||||||
{
|
{
|
||||||
const newIndexes = [...prevValue];
|
const newIndexes = [ ...prevValue ];
|
||||||
|
|
||||||
newIndexes.splice(hiddenIndex, 1);
|
newIndexes.splice(hiddenIndex, 1);
|
||||||
|
|
||||||
@ -70,34 +70,34 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
return [i, thread];
|
return [ i, thread ];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const friend = getFriend(userId);
|
const friend = getFriend(userId);
|
||||||
|
|
||||||
if(!friend) return [-1, null];
|
if(!friend) return [ -1, null ];
|
||||||
|
|
||||||
const thread = new MessengerThread(friend);
|
const thread = new MessengerThread(friend);
|
||||||
const newThreads = [...messageThreads, thread];
|
const newThreads = [ ...messageThreads, thread ];
|
||||||
|
|
||||||
setMessageThreads(newThreads);
|
setMessageThreads(newThreads);
|
||||||
|
|
||||||
return [(newThreads.length - 1), thread];
|
return [ (newThreads.length - 1), thread ];
|
||||||
}, [messageThreads, hiddenThreadIndexes, getFriend]);
|
}, [ messageThreads, hiddenThreadIndexes, getFriend ]);
|
||||||
|
|
||||||
const onNewConsoleMessageEvent = useCallback((event: NewConsoleMessageEvent) =>
|
const onNewConsoleMessageEvent = useCallback((event: NewConsoleMessageEvent) =>
|
||||||
{
|
{
|
||||||
const parser = event.getParser();
|
const parser = event.getParser();
|
||||||
const [threadIndex, thread] = getMessageThreadWithIndex(parser.senderId);
|
const [ threadIndex, thread ] = getMessageThreadWithIndex(parser.senderId);
|
||||||
|
|
||||||
if((threadIndex === -1) || !thread) return;
|
if((threadIndex === -1) || !thread) return;
|
||||||
|
|
||||||
thread.addMessage(parser.senderId, parser.messageText, parser.secondsSinceSent, parser.extraData);
|
thread.addMessage(parser.senderId, parser.messageText, parser.secondsSinceSent, parser.extraData);
|
||||||
|
|
||||||
setMessageThreads(prevValue => [...prevValue]);
|
setMessageThreads(prevValue => [ ...prevValue ]);
|
||||||
}, [getMessageThreadWithIndex]);
|
}, [ getMessageThreadWithIndex ]);
|
||||||
|
|
||||||
UseMessageEventHook(NewConsoleMessageEvent, onNewConsoleMessageEvent);
|
UseMessageEventHook(NewConsoleMessageEvent, onNewConsoleMessageEvent);
|
||||||
|
|
||||||
@ -105,14 +105,14 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
const parser = event.getParser();
|
const parser = event.getParser();
|
||||||
|
|
||||||
const [threadIndex, thread] = getMessageThreadWithIndex(parser.senderId);
|
const [ threadIndex, thread ] = getMessageThreadWithIndex(parser.senderId);
|
||||||
|
|
||||||
if((threadIndex === -1) || !thread) return;
|
if((threadIndex === -1) || !thread) return;
|
||||||
|
|
||||||
thread.addMessage(null, parser.messageText, 0, null, MessengerThreadChat.ROOM_INVITE);
|
thread.addMessage(null, parser.messageText, 0, null, MessengerThreadChat.ROOM_INVITE);
|
||||||
|
|
||||||
setMessageThreads(prevValue => [...prevValue]);
|
setMessageThreads(prevValue => [ ...prevValue ]);
|
||||||
}, [getMessageThreadWithIndex]);
|
}, [ getMessageThreadWithIndex ]);
|
||||||
|
|
||||||
UseMessageEventHook(RoomInviteEvent, onRoomInviteEvent);
|
UseMessageEventHook(RoomInviteEvent, onRoomInviteEvent);
|
||||||
|
|
||||||
@ -144,17 +144,17 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
|
|
||||||
BatchUpdates(() =>
|
BatchUpdates(() =>
|
||||||
{
|
{
|
||||||
setMessageThreads(prevValue => [...prevValue]);
|
setMessageThreads(prevValue => [ ...prevValue ]);
|
||||||
setMessageText('');
|
setMessageText('');
|
||||||
});
|
});
|
||||||
}, [messageThreads, activeThreadIndex, messageText]);
|
}, [ messageThreads, activeThreadIndex, messageText ]);
|
||||||
|
|
||||||
const onKeyDown = useCallback((event: KeyboardEvent<HTMLInputElement>) =>
|
const onKeyDown = useCallback((event: KeyboardEvent<HTMLInputElement>) =>
|
||||||
{
|
{
|
||||||
if(event.key !== 'Enter') return;
|
if(event.key !== 'Enter') return;
|
||||||
|
|
||||||
sendMessage();
|
sendMessage();
|
||||||
}, [sendMessage]);
|
}, [ sendMessage ]);
|
||||||
|
|
||||||
const linkReceived = useCallback((url: string) =>
|
const linkReceived = useCallback((url: string) =>
|
||||||
{
|
{
|
||||||
@ -169,7 +169,7 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const [threadIndex] = getMessageThreadWithIndex(parseInt(parts[2]));
|
const [ threadIndex ] = getMessageThreadWithIndex(parseInt(parts[2]));
|
||||||
|
|
||||||
if(threadIndex === -1) return;
|
if(threadIndex === -1) return;
|
||||||
|
|
||||||
@ -178,13 +178,13 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
setActiveThreadIndex(threadIndex);
|
setActiveThreadIndex(threadIndex);
|
||||||
setIsVisible(true);
|
setIsVisible(true);
|
||||||
});
|
});
|
||||||
}, [getMessageThreadWithIndex]);
|
}, [ getMessageThreadWithIndex ]);
|
||||||
|
|
||||||
const closeThread = useCallback((threadIndex: number) =>
|
const closeThread = useCallback((threadIndex: number) =>
|
||||||
{
|
{
|
||||||
setHiddenThreadIndexes(prevValue =>
|
setHiddenThreadIndexes(prevValue =>
|
||||||
{
|
{
|
||||||
const values = [...prevValue];
|
const values = [ ...prevValue ];
|
||||||
|
|
||||||
if(values.indexOf(threadIndex) === -1) values.push(threadIndex);
|
if(values.indexOf(threadIndex) === -1) values.push(threadIndex);
|
||||||
|
|
||||||
@ -202,19 +202,19 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
AddEventLinkTracker(linkTracker);
|
AddEventLinkTracker(linkTracker);
|
||||||
|
|
||||||
return () => RemoveLinkEventTracker(linkTracker);
|
return () => RemoveLinkEventTracker(linkTracker);
|
||||||
}, [linkReceived]);
|
}, [ linkReceived ]);
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
if(!isVisible) return;
|
if(!isVisible) return;
|
||||||
|
|
||||||
if(activeThreadIndex === -1) setActiveThreadIndex(0);
|
if(activeThreadIndex === -1) setActiveThreadIndex(0);
|
||||||
}, [isVisible, activeThreadIndex]);
|
}, [ isVisible, activeThreadIndex ]);
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
if(hiddenThreadIndexes.indexOf(activeThreadIndex) >= 0) setActiveThreadIndex(0);
|
if(hiddenThreadIndexes.indexOf(activeThreadIndex) >= 0) setActiveThreadIndex(0);
|
||||||
}, [activeThreadIndex, hiddenThreadIndexes]);
|
}, [ activeThreadIndex, hiddenThreadIndexes ]);
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
@ -230,7 +230,7 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
activeThread.setRead();
|
activeThread.setRead();
|
||||||
setUpdateValue({});
|
setUpdateValue({});
|
||||||
}
|
}
|
||||||
}, [isVisible, messageThreads, activeThreadIndex]);
|
}, [ isVisible, messageThreads, activeThreadIndex ]);
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
@ -258,13 +258,13 @@ export const FriendsMessengerView: FC<{}> = props =>
|
|||||||
if(isUnread) PlaySound(SoundNames.MESSENGER_MESSAGE_RECEIVED);
|
if(isUnread) PlaySound(SoundNames.MESSENGER_MESSAGE_RECEIVED);
|
||||||
|
|
||||||
DispatchUiEvent(new FriendsMessengerIconEvent(FriendsMessengerIconEvent.UPDATE_ICON, isUnread ? FriendsMessengerIconEvent.UNREAD_ICON : FriendsMessengerIconEvent.SHOW_ICON));
|
DispatchUiEvent(new FriendsMessengerIconEvent(FriendsMessengerIconEvent.UPDATE_ICON, isUnread ? FriendsMessengerIconEvent.UNREAD_ICON : FriendsMessengerIconEvent.SHOW_ICON));
|
||||||
}, [visibleThreads, updateValue]);
|
}, [ visibleThreads, updateValue ]);
|
||||||
|
|
||||||
if(!isVisible) return null;
|
if(!isVisible) return null;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<NitroCardView className="nitro-friends-messenger" uniqueKey="nitro-friends-messenger" theme="primary-slim">
|
<NitroCardView className="nitro-friends-messenger" uniqueKey="nitro-friends-messenger" theme="primary-slim">
|
||||||
<NitroCardHeaderView headerText={LocalizeText('messenger.window.title', ['OPEN_CHAT_COUNT'], [visibleThreads.length.toString()])} onCloseClick={event => setIsVisible(false)} />
|
<NitroCardHeaderView headerText={LocalizeText('messenger.window.title', [ 'OPEN_CHAT_COUNT' ], [ visibleThreads.length.toString() ])} onCloseClick={event => setIsVisible(false)} />
|
||||||
<NitroCardContentView>
|
<NitroCardContentView>
|
||||||
<Grid overflow="hidden">
|
<Grid overflow="hidden">
|
||||||
<Column size={ 4 }>
|
<Column size={ 4 }>
|
||||||
|
@ -126,7 +126,7 @@ export const GroupInformationView: FC<GroupInformationViewProps> = props =>
|
|||||||
<i className="icon icon-group-decorate" title={ LocalizeText('group.memberscandecorate') } /> }
|
<i className="icon icon-group-decorate" title={ LocalizeText('group.memberscandecorate') } /> }
|
||||||
</Flex>
|
</Flex>
|
||||||
</Flex>
|
</Flex>
|
||||||
<Text small>{ LocalizeText('group.created', ['date', 'owner'], [groupInformation.createdAt, groupInformation.ownerName]) }</Text>
|
<Text small>{ LocalizeText('group.created', [ 'date', 'owner' ], [ groupInformation.createdAt, groupInformation.ownerName ]) }</Text>
|
||||||
</Column>
|
</Column>
|
||||||
<Text small overflow="auto" className="group-description">{ groupInformation.description }</Text>
|
<Text small overflow="auto" className="group-description">{ groupInformation.description }</Text>
|
||||||
</Column>
|
</Column>
|
||||||
|
@ -160,7 +160,7 @@ export const GroupMembersView: FC<{}> = props =>
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<NitroCardView className="nitro-group-members" theme="primary-slim">
|
<NitroCardView className="nitro-group-members" theme="primary-slim">
|
||||||
<NitroCardHeaderView headerText={ LocalizeText('group.members.title', ['groupName'], [ membersData ? membersData.groupTitle : '' ]) } onCloseClick={ event => setGroupId(-1) } />
|
<NitroCardHeaderView headerText={ LocalizeText('group.members.title', [ 'groupName' ], [ membersData ? membersData.groupTitle : '' ]) } onCloseClick={ event => setGroupId(-1) } />
|
||||||
<NitroCardContentView overflow="hidden">
|
<NitroCardContentView overflow="hidden">
|
||||||
<Flex gap={ 2 }>
|
<Flex gap={ 2 }>
|
||||||
<Flex center className="group-badge">
|
<Flex center className="group-badge">
|
||||||
@ -211,7 +211,7 @@ export const GroupMembersView: FC<{}> = props =>
|
|||||||
<FontAwesomeIcon icon="chevron-left" />
|
<FontAwesomeIcon icon="chevron-left" />
|
||||||
</Button>
|
</Button>
|
||||||
<Text small>
|
<Text small>
|
||||||
{ LocalizeText('group.members.pageinfo', ['amount', 'page', 'totalPages'], [membersData.totalMembersCount.toString(), (membersData.pageIndex + 1).toString(), totalPages.toString()]) }
|
{ LocalizeText('group.members.pageinfo', [ 'amount', 'page', 'totalPages' ], [ membersData.totalMembersCount.toString(), (membersData.pageIndex + 1).toString(), totalPages.toString() ]) }
|
||||||
</Text>
|
</Text>
|
||||||
<Button disabled={ (membersData.pageIndex === (totalPages - 1)) } onClick={ event => setPageId(prevValue => (prevValue + 1)) }>
|
<Button disabled={ (membersData.pageIndex === (totalPages - 1)) } onClick={ event => setPageId(prevValue => (prevValue + 1)) }>
|
||||||
<FontAwesomeIcon icon="chevron-right" />
|
<FontAwesomeIcon icon="chevron-right" />
|
||||||
|
@ -55,7 +55,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
setNoCloseButton(true);
|
setNoCloseButton(true);
|
||||||
break;
|
break;
|
||||||
case GuideSessionState.GUIDE_ONGOING:
|
case GuideSessionState.GUIDE_ONGOING:
|
||||||
setHeaderText(LocalizeText('guide.help.request.guide.ongoing.title', ['name'], [replacement]));
|
setHeaderText(LocalizeText('guide.help.request.guide.ongoing.title', [ 'name' ], [ replacement ]));
|
||||||
setNoCloseButton(true);
|
setNoCloseButton(true);
|
||||||
break;
|
break;
|
||||||
case GuideSessionState.USER_CREATE:
|
case GuideSessionState.USER_CREATE:
|
||||||
@ -67,7 +67,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
setNoCloseButton(true);
|
setNoCloseButton(true);
|
||||||
break;
|
break;
|
||||||
case GuideSessionState.USER_ONGOING:
|
case GuideSessionState.USER_ONGOING:
|
||||||
setHeaderText(LocalizeText('guide.help.request.user.ongoing.title', ['name'], [replacement]));
|
setHeaderText(LocalizeText('guide.help.request.user.ongoing.title', [ 'name' ], [ replacement ]));
|
||||||
setNoCloseButton(true);
|
setNoCloseButton(true);
|
||||||
break;
|
break;
|
||||||
case GuideSessionState.USER_FEEDBACK:
|
case GuideSessionState.USER_FEEDBACK:
|
||||||
@ -183,7 +183,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
const parser = event.getParser();
|
const parser = event.getParser();
|
||||||
|
|
||||||
const messageGroups = [...ongoingMessageGroups];
|
const messageGroups = [ ...ongoingMessageGroups ];
|
||||||
|
|
||||||
let lastGroup = messageGroups[messageGroups.length - 1];
|
let lastGroup = messageGroups[messageGroups.length - 1];
|
||||||
|
|
||||||
@ -203,7 +203,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
const parser = event.getParser();
|
const parser = event.getParser();
|
||||||
|
|
||||||
const messageGroups = [...ongoingMessageGroups];
|
const messageGroups = [ ...ongoingMessageGroups ];
|
||||||
|
|
||||||
let lastGroup = messageGroups[messageGroups.length - 1];
|
let lastGroup = messageGroups[messageGroups.length - 1];
|
||||||
|
|
||||||
@ -217,7 +217,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
|
|
||||||
lastGroup.addChat(new GuideToolMessage(parser.roomName, parser.roomId));
|
lastGroup.addChat(new GuideToolMessage(parser.roomName, parser.roomId));
|
||||||
setOngoingMessageGroups(messageGroups);
|
setOngoingMessageGroups(messageGroups);
|
||||||
}, [isOnDuty, ongoingMessageGroups, ongoingUserId]);
|
}, [ isOnDuty, ongoingMessageGroups, ongoingUserId ]);
|
||||||
|
|
||||||
UseMessageEventHook(GuideSessionInvitedToGuideRoomMessageEvent, onGuideSessionInvitedToGuideRoomMessageEvent);
|
UseMessageEventHook(GuideSessionInvitedToGuideRoomMessageEvent, onGuideSessionInvitedToGuideRoomMessageEvent);
|
||||||
|
|
||||||
@ -299,7 +299,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
case 'toggle_duty':
|
case 'toggle_duty':
|
||||||
if(!isHandlingBullyReports && !isHandlingGuideRequests && !isHandlingHelpRequests)
|
if(!isHandlingBullyReports && !isHandlingGuideRequests && !isHandlingHelpRequests)
|
||||||
{
|
{
|
||||||
DispatchUiEvent(new NotificationAlertEvent([LocalizeText('guide.help.guide.tool.noqueueselected.message')], null, null, null, LocalizeText('guide.help.guide.tool.noqueueselected.caption'), null));
|
DispatchUiEvent(new NotificationAlertEvent([ LocalizeText('guide.help.guide.tool.noqueueselected.message') ], null, null, null, LocalizeText('guide.help.guide.tool.noqueueselected.caption'), null));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -315,7 +315,7 @@ export const GuideToolView: FC<{}> = props =>
|
|||||||
window.open(url);
|
window.open(url);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}, [isHandlingBullyReports, isHandlingGuideRequests, isHandlingHelpRequests]);
|
}, [ isHandlingBullyReports, isHandlingGuideRequests, isHandlingHelpRequests ]);
|
||||||
|
|
||||||
if(!isVisible) return null;
|
if(!isVisible) return null;
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ export const GuideToolOngoingView: FC<GuideToolOngoingViewProps> = props =>
|
|||||||
{ messageGroups.map((group, index) =>
|
{ messageGroups.map((group, index) =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex fullWidth justifyContent={ isOwnChat(group.userId) ? 'end' : 'start' } gap={ 2 }>
|
<Flex key={ index } fullWidth justifyContent={ isOwnChat(group.userId) ? 'end' : 'start' } gap={ 2 }>
|
||||||
<Base shrink className="message-avatar">
|
<Base shrink className="message-avatar">
|
||||||
{ (!isOwnChat(group.userId)) &&
|
{ (!isOwnChat(group.userId)) &&
|
||||||
<LayoutAvatarImageView figure={ userFigure } direction={ 2 } /> }
|
<LayoutAvatarImageView figure={ userFigure } direction={ 2 } /> }
|
||||||
|
@ -90,7 +90,7 @@ export const HcCenterView: FC<{}> = props =>
|
|||||||
setIsVisible(!isVisible);
|
setIsVisible(!isVisible);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}, [isVisible]);
|
}, [ isVisible ]);
|
||||||
|
|
||||||
UseUiEvent(HcCenterEvent.TOGGLE_HC_CENTER, onHcCenterEvent);
|
UseUiEvent(HcCenterEvent.TOGGLE_HC_CENTER, onHcCenterEvent);
|
||||||
|
|
||||||
@ -169,7 +169,7 @@ export const HcCenterView: FC<{}> = props =>
|
|||||||
AddEventLinkTracker(linkTracker);
|
AddEventLinkTracker(linkTracker);
|
||||||
|
|
||||||
return () => RemoveLinkEventTracker(linkTracker);
|
return () => RemoveLinkEventTracker(linkTracker);
|
||||||
}, [ linkReceived]);
|
}, [ linkReceived ]);
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
@ -201,13 +201,16 @@ export const HcCenterView: FC<{}> = props =>
|
|||||||
<Popover id="popover-basic">
|
<Popover id="popover-basic">
|
||||||
<Popover.Body className="text-black py-2 px-3">
|
<Popover.Body className="text-black py-2 px-3">
|
||||||
<h5>{LocalizeText('hccenter.breakdown.title')}</h5>
|
<h5>{LocalizeText('hccenter.breakdown.title')}</h5>
|
||||||
<div>{LocalizeText('hccenter.breakdown.creditsspent', ['credits'], [kickbackData.totalCreditsSpent.toString()])}</div>
|
<div>{LocalizeText('hccenter.breakdown.creditsspent', [ 'credits' ], [ kickbackData.totalCreditsSpent.toString() ])}</div>
|
||||||
<div>{LocalizeText('hccenter.breakdown.paydayfactor.percent', ['percent'], [(kickbackData.kickbackPercentage * 100).toString()])}</div>
|
<div>{LocalizeText('hccenter.breakdown.paydayfactor.percent', [ 'percent' ], [ (kickbackData.kickbackPercentage * 100).toString() ])}</div>
|
||||||
<div>{LocalizeText('hccenter.breakdown.streakbonus', ['credits'], [kickbackData.creditRewardForStreakBonus.toString()])}</div>
|
<div>{LocalizeText('hccenter.breakdown.streakbonus', [ 'credits' ], [ kickbackData.creditRewardForStreakBonus.toString() ])}</div>
|
||||||
<hr className="w-100 text-black my-1" />
|
<hr className="w-100 text-black my-1" />
|
||||||
<div>{LocalizeText('hccenter.breakdown.total', ['credits', 'actual'], [getHcPaydayAmount(),
|
<div>{LocalizeText('hccenter.breakdown.total', [ 'credits', 'actual' ], [ getHcPaydayAmount(),
|
||||||
((((kickbackData.kickbackPercentage * kickbackData.totalCreditsSpent) + kickbackData.creditRewardForStreakBonus) * 100) / 100).toString()])}</div>
|
((((kickbackData.kickbackPercentage * kickbackData.totalCreditsSpent) + kickbackData.creditRewardForStreakBonus) * 100) / 100).toString() ])}</div>
|
||||||
<div className="btn btn-link text-primary p-0" onClick={() => { CreateLinkEvent('habbopages/' + GetConfiguration('hc.center')['payday.habbopage']) }}>{
|
<div className="btn btn-link text-primary p-0" onClick={() =>
|
||||||
|
{
|
||||||
|
CreateLinkEvent('habbopages/' + GetConfiguration('hc.center')['payday.habbopage'])
|
||||||
|
}}>{
|
||||||
LocalizeText('hccenter.special.infolink')}
|
LocalizeText('hccenter.special.infolink')}
|
||||||
</div>
|
</div>
|
||||||
</Popover.Body>
|
</Popover.Body>
|
||||||
@ -221,7 +224,10 @@ export const HcCenterView: FC<{}> = props =>
|
|||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<div className="hc-logo" />
|
<div className="hc-logo" />
|
||||||
<Flex>
|
<Flex>
|
||||||
<Button variant="success" onClick={ event => { CreateLinkEvent('catalog/open/' + GetConfiguration('catalog.links')['hc.buy_hc']) } }>
|
<Button variant="success" onClick={ event =>
|
||||||
|
{
|
||||||
|
CreateLinkEvent('catalog/open/' + GetConfiguration('catalog.links')['hc.buy_hc'])
|
||||||
|
} }>
|
||||||
{ LocalizeText((clubStatus === ClubStatus.ACTIVE) ? 'hccenter.btn.extend' : 'hccenter.btn.buy') }
|
{ LocalizeText((clubStatus === ClubStatus.ACTIVE) ? 'hccenter.btn.extend' : 'hccenter.btn.buy') }
|
||||||
</Button>
|
</Button>
|
||||||
</Flex>
|
</Flex>
|
||||||
@ -243,7 +249,10 @@ export const HcCenterView: FC<{}> = props =>
|
|||||||
<Column className="rounded-start bg-primary p-2 payday-special mb-1">
|
<Column className="rounded-start bg-primary p-2 payday-special mb-1">
|
||||||
<h4 className="mb-1">{LocalizeText('hccenter.special.title')}</h4>
|
<h4 className="mb-1">{LocalizeText('hccenter.special.title')}</h4>
|
||||||
<div>{LocalizeText('hccenter.special.info')}</div>
|
<div>{LocalizeText('hccenter.special.info')}</div>
|
||||||
<div className="btn btn-link text-white p-0 mt-auto align-self-baseline" onClick={() => { CreateLinkEvent('habbopages/' + GetConfiguration('hc.center')['payday.habbopage']) }}>{LocalizeText('hccenter.special.infolink')}</div>
|
<div className="btn btn-link text-white p-0 mt-auto align-self-baseline" onClick={() =>
|
||||||
|
{
|
||||||
|
CreateLinkEvent('habbopages/' + GetConfiguration('hc.center')['payday.habbopage'])
|
||||||
|
}}>{LocalizeText('hccenter.special.infolink')}</div>
|
||||||
</Column>
|
</Column>
|
||||||
<div className="payday flex-shrink-0 p-2">
|
<div className="payday flex-shrink-0 p-2">
|
||||||
<h5 className="mb-2 ms-2">{LocalizeText('hccenter.special.time.title')}</h5>
|
<h5 className="mb-2 ms-2">{LocalizeText('hccenter.special.time.title')}</h5>
|
||||||
@ -271,16 +280,22 @@ export const HcCenterView: FC<{}> = props =>
|
|||||||
<div className="rounded bg-success p-2 d-flex flex-row mb-0">
|
<div className="rounded bg-success p-2 d-flex flex-row mb-0">
|
||||||
<div>
|
<div>
|
||||||
<h4 className="mb-1">{LocalizeText('hccenter.gift.title')}</h4>
|
<h4 className="mb-1">{LocalizeText('hccenter.gift.title')}</h4>
|
||||||
<div dangerouslySetInnerHTML={{ __html: unclaimedGifts > 0 ? LocalizeText('hccenter.unclaimedgifts', ['unclaimedgifts'], [unclaimedGifts.toString()]) : LocalizeText('hccenter.gift.info') }}></div>
|
<div dangerouslySetInnerHTML={{ __html: unclaimedGifts > 0 ? LocalizeText('hccenter.unclaimedgifts', [ 'unclaimedgifts' ], [ unclaimedGifts.toString() ]) : LocalizeText('hccenter.gift.info') }}></div>
|
||||||
</div>
|
</div>
|
||||||
<button className="btn btn-primary btn-lg align-self-center ms-auto" onClick={() => { CreateLinkEvent('catalog/open/' + GetConfiguration('catalog.links')['hc.hc_gifts']) }}>{LocalizeText(clubStatus === ClubStatus.ACTIVE ? 'hccenter.btn.gifts.redeem' : 'hccenter.btn.gifts.view')}</button>
|
<button className="btn btn-primary btn-lg align-self-center ms-auto" onClick={() =>
|
||||||
|
{
|
||||||
|
CreateLinkEvent('catalog/open/' + GetConfiguration('catalog.links')['hc.hc_gifts'])
|
||||||
|
}}>{LocalizeText(clubStatus === ClubStatus.ACTIVE ? 'hccenter.btn.gifts.redeem' : 'hccenter.btn.gifts.view')}</button>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
{GetConfiguration('hc.center')['benefits.info'] &&
|
{GetConfiguration('hc.center')['benefits.info'] &&
|
||||||
<div className="benefits text-black py-2">
|
<div className="benefits text-black py-2">
|
||||||
<h5 className="mb-1 text-primary">{LocalizeText('hccenter.general.title')}</h5>
|
<h5 className="mb-1 text-primary">{LocalizeText('hccenter.general.title')}</h5>
|
||||||
<div className="mb-2" dangerouslySetInnerHTML={{ __html: LocalizeText('hccenter.general.info') }} />
|
<div className="mb-2" dangerouslySetInnerHTML={{ __html: LocalizeText('hccenter.general.info') }} />
|
||||||
<button className="btn btn-link p-0 text-primary" onClick={() => { CreateLinkEvent('habbopages/' + GetConfiguration('hc.center')['benefits.habbopage']) }}>{LocalizeText('hccenter.general.infolink')}</button>
|
<button className="btn btn-link p-0 text-primary" onClick={() =>
|
||||||
|
{
|
||||||
|
CreateLinkEvent('habbopages/' + GetConfiguration('hc.center')['benefits.habbopage'])
|
||||||
|
}}>{LocalizeText('hccenter.general.infolink')}</button>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
</NitroCardContentView>
|
</NitroCardContentView>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
export class BadgeResolver
|
export class BadgeResolver
|
||||||
{
|
{
|
||||||
public static default_badge: string = 'HC1';
|
public static default_badge: string = 'HC1';
|
||||||
public static badges: string[] = ['ACH_VipHC1', 'ACH_VipHC2', 'ACH_VipHC3', 'ACH_VipHC4', 'ACH_VipHC5', 'HC1', 'HC2', 'HC3', 'HC4', 'HC5'];
|
public static badges: string[] = [ 'ACH_VipHC1', 'ACH_VipHC2', 'ACH_VipHC3', 'ACH_VipHC4', 'ACH_VipHC5', 'HC1', 'HC2', 'HC3', 'HC4', 'HC5' ];
|
||||||
|
|
||||||
|
|
||||||
public static getClubBadge(k: string[]): string
|
public static getClubBadge(k: string[]): string
|
||||||
|
@ -104,7 +104,7 @@ export const HelpView: FC<{}> = props =>
|
|||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}, [helpReportState.currentStep]);
|
}, [ helpReportState.currentStep ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<HelpContextProvider value={ { helpReportState, setHelpReportState } }>
|
<HelpContextProvider value={ { helpReportState, setHelpReportState } }>
|
||||||
|
@ -15,7 +15,7 @@ export const HelpIndexView: FC<{}> = props =>
|
|||||||
const reportState = Object.assign({}, helpReportState );
|
const reportState = Object.assign({}, helpReportState );
|
||||||
reportState.currentStep = 1;
|
reportState.currentStep = 1;
|
||||||
setHelpReportState(reportState);
|
setHelpReportState(reportState);
|
||||||
},[helpReportState, setHelpReportState]);
|
},[ helpReportState, setHelpReportState ]);
|
||||||
|
|
||||||
const onRequestMySanctionStatusClick = useCallback(() =>
|
const onRequestMySanctionStatusClick = useCallback(() =>
|
||||||
{
|
{
|
||||||
|
@ -39,11 +39,11 @@ export const SanctionSatusView:FC<{}> = props =>
|
|||||||
if(length > 24)
|
if(length > 24)
|
||||||
{
|
{
|
||||||
localizationName = (localizationName + '.days');
|
localizationName = (localizationName + '.days');
|
||||||
return LocalizeText(localizationName, ['days'], [(length / 24).toString()]);
|
return LocalizeText(localizationName, [ 'days' ], [ (length / 24).toString() ]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return LocalizeText(localizationName, ['hours'], [length.toString()]);
|
return LocalizeText(localizationName, [ 'hours' ], [ length.toString() ]);
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
if(!sanctionInfo) return null;
|
if(!sanctionInfo) return null;
|
||||||
|
@ -9,7 +9,7 @@ export const NameChangeInitView:FC<NameChangeLayoutViewProps> = props =>
|
|||||||
return (
|
return (
|
||||||
<div className="d-flex flex-column gap-4 h-100">
|
<div className="d-flex flex-column gap-4 h-100">
|
||||||
<div className="bg-muted rounded p-2 text-center">{ LocalizeText('tutorial.name_change.info.main') }</div>
|
<div className="bg-muted rounded p-2 text-center">{ LocalizeText('tutorial.name_change.info.main') }</div>
|
||||||
<div className="fw-bold d-flex align-items-center justify-content-center h-100 w-100">{ LocalizeText('tutorial.name_change.current', ['name'], [GetSessionDataManager().userName]) }</div>
|
<div className="fw-bold d-flex align-items-center justify-content-center h-100 w-100">{ LocalizeText('tutorial.name_change.current', [ 'name' ], [ GetSessionDataManager().userName ]) }</div>
|
||||||
<div className="d-flex gap-2">
|
<div className="d-flex gap-2">
|
||||||
<button className="btn btn-success w-100" onClick={ () => onAction('start') }>{ LocalizeText('tutorial.name_change.change') }</button>
|
<button className="btn btn-success w-100" onClick={ () => onAction('start') }>{ LocalizeText('tutorial.name_change.change') }</button>
|
||||||
<button className="btn btn-primary w-100" onClick={ () => onAction('confirmation', GetSessionDataManager().userName) }>{ LocalizeText('tutorial.name_change.keep') }</button>
|
<button className="btn btn-primary w-100" onClick={ () => onAction('confirmation', GetSessionDataManager().userName) }>{ LocalizeText('tutorial.name_change.keep') }</button>
|
||||||
|
@ -83,8 +83,8 @@ export const NameChangeInputView:FC<NameChangeLayoutViewProps> = props =>
|
|||||||
<button className="btn btn-primary" disabled={ newUsername === '' || isChecking } onClick={ check }>{ LocalizeText('tutorial.name_change.check') }</button>
|
<button className="btn btn-primary" disabled={ newUsername === '' || isChecking } onClick={ check }>{ LocalizeText('tutorial.name_change.check') }</button>
|
||||||
</div>
|
</div>
|
||||||
{ !errorCode && !canProceed && <div className="bg-muted rounded p-2 text-center">{ LocalizeText('help.tutorial.name.info') }</div> }
|
{ !errorCode && !canProceed && <div className="bg-muted rounded p-2 text-center">{ LocalizeText('help.tutorial.name.info') }</div> }
|
||||||
{ errorCode && <div className="bg-danger rounded p-2 text-center text-white">{ LocalizeText(`help.tutorial.name.${errorCode}`, ['name'], [newUsername]) }</div> }
|
{ errorCode && <div className="bg-danger rounded p-2 text-center text-white">{ LocalizeText(`help.tutorial.name.${errorCode}`, [ 'name' ], [ newUsername ]) }</div> }
|
||||||
{ canProceed && <div className="bg-success rounded p-2 text-center text-white">{ LocalizeText('help.tutorial.name.available', ['name'], [newUsername]) }</div> }
|
{ canProceed && <div className="bg-success rounded p-2 text-center text-white">{ LocalizeText('help.tutorial.name.available', [ 'name' ], [ newUsername ]) }</div> }
|
||||||
{ suggestions && <div className="d-flex flex-column gap-2">
|
{ suggestions && <div className="d-flex flex-column gap-2">
|
||||||
{
|
{
|
||||||
suggestions.map((suggestion, i) =>
|
suggestions.map((suggestion, i) =>
|
||||||
|
@ -51,7 +51,7 @@ export const NameChangeView:FC<{}> = props =>
|
|||||||
case INPUT: return 'tutorial.name_change.title.select';
|
case INPUT: return 'tutorial.name_change.title.select';
|
||||||
case CONFIRMATION: return 'tutorial.name_change.title.confirm';
|
case CONFIRMATION: return 'tutorial.name_change.title.confirm';
|
||||||
}
|
}
|
||||||
}, [layout]);
|
}, [ layout ]);
|
||||||
|
|
||||||
if(!isVisible) return null;
|
if(!isVisible) return null;
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import { BatchUpdates, UseMessageEventHook, UseRoomSessionManagerEvent } from '.
|
|||||||
import { WidgetSlotView } from './views/widgets/WidgetSlotView';
|
import { WidgetSlotView } from './views/widgets/WidgetSlotView';
|
||||||
export const HotelView: FC<{}> = props =>
|
export const HotelView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
const [isVisible, setIsVisible] = useState(true);
|
const [ isVisible, setIsVisible ] = useState(true);
|
||||||
const widgetSlotCount = 7;
|
const widgetSlotCount = 7;
|
||||||
const [ userFigure, setUserFigure ] = useState<string>(null);
|
const [ userFigure, setUserFigure ] = useState<string>(null);
|
||||||
const [ userInfo, setUserInfo ] = useState<UserInfoDataParser>(null);
|
const [ userInfo, setUserInfo ] = useState<UserInfoDataParser>(null);
|
||||||
|
@ -8,8 +8,8 @@ export interface PromoArticleWidgetViewProps
|
|||||||
|
|
||||||
export const PromoArticleWidgetView: FC<PromoArticleWidgetViewProps> = props =>
|
export const PromoArticleWidgetView: FC<PromoArticleWidgetViewProps> = props =>
|
||||||
{
|
{
|
||||||
const [articles, setArticles] = useState<PromoArticleData[]>(null);
|
const [ articles, setArticles ] = useState<PromoArticleData[]>(null);
|
||||||
const [index, setIndex] = useState(0);
|
const [ index, setIndex ] = useState(0);
|
||||||
|
|
||||||
const handleSelect = (selectedIndex) =>
|
const handleSelect = (selectedIndex) =>
|
||||||
{
|
{
|
||||||
|
@ -90,7 +90,7 @@ export const MainView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
RemoveLinkEventTracker(linkTracker);
|
RemoveLinkEventTracker(linkTracker);
|
||||||
}
|
}
|
||||||
}, [onLinkReceived]);
|
}, [ onLinkReceived ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Base fit>
|
<Base fit>
|
||||||
|
@ -34,7 +34,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}, [dispatchModToolsState]);
|
}, [ dispatchModToolsState ]);
|
||||||
|
|
||||||
const onIssueInfoMessageEvent = useCallback((event: IssueInfoMessageEvent) =>
|
const onIssueInfoMessageEvent = useCallback((event: IssueInfoMessageEvent) =>
|
||||||
{
|
{
|
||||||
@ -62,7 +62,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}, [dispatchModToolsState, tickets]);
|
}, [ dispatchModToolsState, tickets ]);
|
||||||
|
|
||||||
const onModeratorToolPreferencesEvent = useCallback((event: ModeratorToolPreferencesEvent) =>
|
const onModeratorToolPreferencesEvent = useCallback((event: ModeratorToolPreferencesEvent) =>
|
||||||
{
|
{
|
||||||
@ -100,7 +100,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
tickets: newTickets
|
tickets: newTickets
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}, [dispatchModToolsState, tickets]);
|
}, [ dispatchModToolsState, tickets ]);
|
||||||
|
|
||||||
const onModeratorActionResultMessageEvent = useCallback((event: ModeratorActionResultMessageEvent) =>
|
const onModeratorActionResultMessageEvent = useCallback((event: ModeratorActionResultMessageEvent) =>
|
||||||
{
|
{
|
||||||
@ -135,7 +135,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
|
|
||||||
SetCfhCategories(categories);
|
SetCfhCategories(categories);
|
||||||
|
|
||||||
}, [dispatchModToolsState]);
|
}, [ dispatchModToolsState ]);
|
||||||
|
|
||||||
const onCfhSanctionMessageEvent = useCallback((event: CfhSanctionMessageEvent) =>
|
const onCfhSanctionMessageEvent = useCallback((event: CfhSanctionMessageEvent) =>
|
||||||
{
|
{
|
||||||
@ -195,7 +195,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
dispatchModToolsState({
|
dispatchModToolsState({
|
||||||
type: ModToolsActions.SET_OPEN_ROOMS,
|
type: ModToolsActions.SET_OPEN_ROOMS,
|
||||||
payload: {
|
payload: {
|
||||||
openRooms: [...rooms, castedEvent.roomId]
|
openRooms: [ ...rooms, castedEvent.roomId ]
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
@ -210,7 +210,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
dispatchModToolsState({
|
dispatchModToolsState({
|
||||||
type: ModToolsActions.SET_OPEN_ROOM_CHATLOGS,
|
type: ModToolsActions.SET_OPEN_ROOM_CHATLOGS,
|
||||||
payload: {
|
payload: {
|
||||||
openRoomChatlogs: [...chatlogs, castedEvent.roomId]
|
openRoomChatlogs: [ ...chatlogs, castedEvent.roomId ]
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
@ -225,7 +225,7 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
dispatchModToolsState({
|
dispatchModToolsState({
|
||||||
type: ModToolsActions.SET_OPEN_USERINFO,
|
type: ModToolsActions.SET_OPEN_USERINFO,
|
||||||
payload: {
|
payload: {
|
||||||
openUserInfo: [...userInfo, castedEvent.userId]
|
openUserInfo: [ ...userInfo, castedEvent.userId ]
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
@ -240,13 +240,13 @@ export const ModToolsMessageHandler: FC<{}> = props =>
|
|||||||
dispatchModToolsState({
|
dispatchModToolsState({
|
||||||
type: ModToolsActions.SET_OPEN_USER_CHATLOGS,
|
type: ModToolsActions.SET_OPEN_USER_CHATLOGS,
|
||||||
payload: {
|
payload: {
|
||||||
openUserChatlogs: [...userChatlog, castedEvent.userId]
|
openUserChatlogs: [ ...userChatlog, castedEvent.userId ]
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [openRooms, dispatchModToolsState, openRoomChatlogs, openUserInfo, openUserChatlogs]);
|
}, [ openRooms, dispatchModToolsState, openRoomChatlogs, openUserInfo, openUserChatlogs ]);
|
||||||
|
|
||||||
UseUiEvent(ModToolsEvent.OPEN_ROOM_INFO, onModToolsEvent);
|
UseUiEvent(ModToolsEvent.OPEN_ROOM_INFO, onModToolsEvent);
|
||||||
UseUiEvent(ModToolsEvent.OPEN_ROOM_CHATLOG, onModToolsEvent);
|
UseUiEvent(ModToolsEvent.OPEN_ROOM_CHATLOG, onModToolsEvent);
|
||||||
|
@ -17,7 +17,7 @@ import { ModToolsUserView } from './views/user/ModToolsUserView';
|
|||||||
export const ModToolsView: FC<{}> = props =>
|
export const ModToolsView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
const [ isVisible, setIsVisible ] = useState(false);
|
const [ isVisible, setIsVisible ] = useState(false);
|
||||||
const [ selectedUser, setSelectedUser] = useState<ISelectedUser>(null);
|
const [ selectedUser, setSelectedUser ] = useState<ISelectedUser>(null);
|
||||||
const [ isTicketsVisible, setIsTicketsVisible ] = useState(false);
|
const [ isTicketsVisible, setIsTicketsVisible ] = useState(false);
|
||||||
const [ modToolsState, dispatchModToolsState ] = useReducer(ModToolsReducer, initialModTools);
|
const [ modToolsState, dispatchModToolsState ] = useReducer(ModToolsReducer, initialModTools);
|
||||||
const { currentRoomId = null, openRooms = null, openRoomChatlogs = null, openUserChatlogs = null, openUserInfo = null } = modToolsState;
|
const { currentRoomId = null, openRooms = null, openRoomChatlogs = null, openUserChatlogs = null, openUserInfo = null } = modToolsState;
|
||||||
@ -179,7 +179,7 @@ export const ModToolsView: FC<{}> = props =>
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [openRooms, currentRoomId, openRoomChatlogs, selectedUser, openUserInfo, openUserChatlogs]);
|
}, [ openRooms, currentRoomId, openRoomChatlogs, selectedUser, openUserInfo, openUserChatlogs ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ModToolsContextProvider value={ { modToolsState, dispatchModToolsState } }>
|
<ModToolsContextProvider value={ { modToolsState, dispatchModToolsState } }>
|
||||||
|
@ -98,7 +98,7 @@ export const ChatlogView: FC<ChatlogViewProps> = props =>
|
|||||||
}
|
}
|
||||||
|
|
||||||
return count;
|
return count;
|
||||||
}, [records]);
|
}, [ records ]);
|
||||||
|
|
||||||
const RoomInfo = (props: { roomId: number, roomName: string, uniqueKey: Key, style: CSSProperties }) =>
|
const RoomInfo = (props: { roomId: number, roomName: string, uniqueKey: Key, style: CSSProperties }) =>
|
||||||
{
|
{
|
||||||
|
@ -19,7 +19,7 @@ export const CfhChatlogView: FC<CfhChatlogViewProps> = props =>
|
|||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
SendMessageComposer(new GetCfhChatlogMessageComposer(issueId));
|
SendMessageComposer(new GetCfhChatlogMessageComposer(issueId));
|
||||||
}, [issueId]);
|
}, [ issueId ]);
|
||||||
|
|
||||||
const onCfhChatlogEvent = useCallback((event: CfhChatlogEvent) =>
|
const onCfhChatlogEvent = useCallback((event: CfhChatlogEvent) =>
|
||||||
{
|
{
|
||||||
@ -28,7 +28,7 @@ export const CfhChatlogView: FC<CfhChatlogViewProps> = props =>
|
|||||||
if(!parser || parser.data.issueId !== issueId) return;
|
if(!parser || parser.data.issueId !== issueId) return;
|
||||||
|
|
||||||
setChatlogData(parser.data);
|
setChatlogData(parser.data);
|
||||||
}, [issueId]);
|
}, [ issueId ]);
|
||||||
|
|
||||||
UseMessageEventHook(CfhChatlogEvent, onCfhChatlogEvent);
|
UseMessageEventHook(CfhChatlogEvent, onCfhChatlogEvent);
|
||||||
|
|
||||||
@ -36,7 +36,7 @@ export const CfhChatlogView: FC<CfhChatlogViewProps> = props =>
|
|||||||
<NitroCardView className="nitro-mod-tools-chatlog" theme="primary-slim">
|
<NitroCardView className="nitro-mod-tools-chatlog" theme="primary-slim">
|
||||||
<NitroCardHeaderView headerText={'Issue Chatlog'} onCloseClick={onCloseClick} />
|
<NitroCardHeaderView headerText={'Issue Chatlog'} onCloseClick={onCloseClick} />
|
||||||
<NitroCardContentView className="text-black">
|
<NitroCardContentView className="text-black">
|
||||||
{ chatlogData && <ChatlogView records={[chatlogData.chatRecord]} />}
|
{ chatlogData && <ChatlogView records={[ chatlogData.chatRecord ]} />}
|
||||||
</NitroCardContentView>
|
</NitroCardContentView>
|
||||||
</NitroCardView>
|
</NitroCardView>
|
||||||
);
|
);
|
||||||
|
@ -13,7 +13,7 @@ export const ModToolsMyIssuesTabView: FC<ModToolsMyIssuesTabViewProps> = props =
|
|||||||
{
|
{
|
||||||
const { myIssues = null, onIssueHandleClick = null } = props;
|
const { myIssues = null, onIssueHandleClick = null } = props;
|
||||||
|
|
||||||
const onReleaseIssue = (issueId: number) => SendMessageComposer(new ReleaseIssuesMessageComposer([issueId]));
|
const onReleaseIssue = (issueId: number) => SendMessageComposer(new ReleaseIssuesMessageComposer([ issueId ]));
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Column gap={ 0 } overflow="hidden">
|
<Column gap={ 0 } overflow="hidden">
|
||||||
|
@ -12,7 +12,7 @@ export const ModToolsOpenIssuesTabView: FC<ModToolsOpenIssuesTabViewProps> = pro
|
|||||||
{
|
{
|
||||||
const { openIssues = null } = props;
|
const { openIssues = null } = props;
|
||||||
|
|
||||||
const onPickIssue = (issueId: number) => SendMessageComposer(new PickIssuesMessageComposer([issueId], false, 0, 'pick issue button'));
|
const onPickIssue = (issueId: number) => SendMessageComposer(new PickIssuesMessageComposer([ issueId ], false, 0, 'pick issue button'));
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Column gap={ 0 } overflow="hidden">
|
<Column gap={ 0 } overflow="hidden">
|
||||||
|
@ -32,21 +32,21 @@ export const ModToolsTicketsView: FC<ModToolsTicketsViewProps> = props =>
|
|||||||
if(!tickets) return [];
|
if(!tickets) return [];
|
||||||
|
|
||||||
return tickets.filter(issue => issue.state === IssueMessageData.STATE_OPEN);
|
return tickets.filter(issue => issue.state === IssueMessageData.STATE_OPEN);
|
||||||
}, [tickets]);
|
}, [ tickets ]);
|
||||||
|
|
||||||
const myIssues = useMemo(() =>
|
const myIssues = useMemo(() =>
|
||||||
{
|
{
|
||||||
if(!tickets) return [];
|
if(!tickets) return [];
|
||||||
|
|
||||||
return tickets.filter(issue => (issue.state === IssueMessageData.STATE_PICKED) && (issue.pickerUserId === GetSessionDataManager().userId));
|
return tickets.filter(issue => (issue.state === IssueMessageData.STATE_PICKED) && (issue.pickerUserId === GetSessionDataManager().userId));
|
||||||
}, [tickets]);
|
}, [ tickets ]);
|
||||||
|
|
||||||
const pickedIssues = useMemo(() =>
|
const pickedIssues = useMemo(() =>
|
||||||
{
|
{
|
||||||
if(!tickets) return [];
|
if(!tickets) return [];
|
||||||
|
|
||||||
return tickets.filter(issue => issue.state === IssueMessageData.STATE_PICKED);
|
return tickets.filter(issue => issue.state === IssueMessageData.STATE_PICKED);
|
||||||
}, [tickets]);
|
}, [ tickets ]);
|
||||||
|
|
||||||
const onIssueInfoClosed = useCallback((issueId: number) =>
|
const onIssueInfoClosed = useCallback((issueId: number) =>
|
||||||
{
|
{
|
||||||
@ -57,7 +57,7 @@ export const ModToolsTicketsView: FC<ModToolsTicketsViewProps> = props =>
|
|||||||
const newValues = Array.from(issueInfoWindows);
|
const newValues = Array.from(issueInfoWindows);
|
||||||
newValues.splice(indexOfValue, 1);
|
newValues.splice(indexOfValue, 1);
|
||||||
setIssueInfoWindows(newValues);
|
setIssueInfoWindows(newValues);
|
||||||
}, [issueInfoWindows]);
|
}, [ issueInfoWindows ]);
|
||||||
|
|
||||||
const onIssueHandleClicked = useCallback((issueId: number) =>
|
const onIssueHandleClicked = useCallback((issueId: number) =>
|
||||||
{
|
{
|
||||||
@ -71,7 +71,7 @@ export const ModToolsTicketsView: FC<ModToolsTicketsViewProps> = props =>
|
|||||||
{
|
{
|
||||||
onIssueInfoClosed(issueId);
|
onIssueInfoClosed(issueId);
|
||||||
}
|
}
|
||||||
}, [issueInfoWindows, onIssueInfoClosed]);
|
}, [ issueInfoWindows, onIssueInfoClosed ]);
|
||||||
|
|
||||||
const CurrentTabComponent = useCallback(() =>
|
const CurrentTabComponent = useCallback(() =>
|
||||||
{
|
{
|
||||||
@ -82,7 +82,7 @@ export const ModToolsTicketsView: FC<ModToolsTicketsViewProps> = props =>
|
|||||||
case 2: return <ModToolsPickedIssuesTabView pickedIssues={pickedIssues}/>;
|
case 2: return <ModToolsPickedIssuesTabView pickedIssues={pickedIssues}/>;
|
||||||
default: return null;
|
default: return null;
|
||||||
}
|
}
|
||||||
}, [currentTab, myIssues, onIssueHandleClicked, openIssues, pickedIssues]);
|
}, [ currentTab, myIssues, onIssueHandleClicked, openIssues, pickedIssues ]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
|
@ -43,7 +43,7 @@ export const ModToolsUserRoomVisitsView: FC<ModToolsUserRoomVisitsViewProps> = p
|
|||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
SendMessageComposer(new GetRoomVisitsMessageComposer(userId));
|
SendMessageComposer(new GetRoomVisitsMessageComposer(userId));
|
||||||
}, [userId]);
|
}, [ userId ]);
|
||||||
|
|
||||||
if(!userId) return null;
|
if(!userId) return null;
|
||||||
|
|
||||||
|
@ -142,7 +142,7 @@ export const NavigatorRoomInfoView: FC<NavigatorRoomInfoViewProps> = props =>
|
|||||||
<Flex pointer alignItems="center" gap={ 1 } onClick={ () => processAction('open_group_info') }>
|
<Flex pointer alignItems="center" gap={ 1 } onClick={ () => processAction('open_group_info') }>
|
||||||
<LayoutBadgeImageView className="flex-none" badgeCode={ navigatorData.enteredGuestRoom.groupBadgeCode } isGroup={ true } />
|
<LayoutBadgeImageView className="flex-none" badgeCode={ navigatorData.enteredGuestRoom.groupBadgeCode } isGroup={ true } />
|
||||||
<Text underline>
|
<Text underline>
|
||||||
{ LocalizeText('navigator.guildbase', ['groupName'], [navigatorData.enteredGuestRoom.groupName]) }
|
{ LocalizeText('navigator.guildbase', [ 'groupName' ], [ navigatorData.enteredGuestRoom.groupName ]) }
|
||||||
</Text>
|
</Text>
|
||||||
</Flex> }
|
</Flex> }
|
||||||
</Column>
|
</Column>
|
||||||
|
@ -9,7 +9,7 @@ const NEW_LINE_REGEX = /\n\r|\n|\r/mg;
|
|||||||
export const NitropediaView: FC<{}> = props =>
|
export const NitropediaView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
const [ content, setContent ] = useState<string>(null);
|
const [ content, setContent ] = useState<string>(null);
|
||||||
const [ header, setHeader] = useState<string>('');
|
const [ header, setHeader ] = useState<string>('');
|
||||||
const [ dimensions, setDimensions ] = useState<{ width: number, height: number}>(null);
|
const [ dimensions, setDimensions ] = useState<{ width: number, height: number}>(null);
|
||||||
const elementRef = useRef<HTMLDivElement>(null);
|
const elementRef = useRef<HTMLDivElement>(null);
|
||||||
|
|
||||||
|
@ -11,14 +11,14 @@ export const NotificationDefaultAlertView: FC<NotificationDefaultAlertViewProps>
|
|||||||
{
|
{
|
||||||
const { item = null, title = ((props.item && props.item.title) || ''), close = null, ...rest } = props;
|
const { item = null, title = ((props.item && props.item.title) || ''), close = null, ...rest } = props;
|
||||||
|
|
||||||
const [imageFailed, setImageFailed] = useState<boolean>(false)
|
const [ imageFailed, setImageFailed ] = useState<boolean>(false)
|
||||||
|
|
||||||
const visitUrl = useCallback(() =>
|
const visitUrl = useCallback(() =>
|
||||||
{
|
{
|
||||||
NotificationUtilities.openUrl(item.clickUrl);
|
NotificationUtilities.openUrl(item.clickUrl);
|
||||||
|
|
||||||
close();
|
close();
|
||||||
}, [item, close]);
|
}, [ item, close ]);
|
||||||
|
|
||||||
const hasFrank = item.alertType === NotificationAlertType.DEFAULT;
|
const hasFrank = item.alertType === NotificationAlertType.DEFAULT;
|
||||||
|
|
||||||
@ -26,8 +26,11 @@ export const NotificationDefaultAlertView: FC<NotificationDefaultAlertViewProps>
|
|||||||
<LayoutNotificationAlertView title={title} close={close} {...rest} type={ hasFrank ? NotificationAlertType.DEFAULT : item.alertType }>
|
<LayoutNotificationAlertView title={title} close={close} {...rest} type={ hasFrank ? NotificationAlertType.DEFAULT : item.alertType }>
|
||||||
<Flex fullHeight overflow="auto" gap={ hasFrank || (item.imageUrl && !imageFailed) ? 2 : 0 }>
|
<Flex fullHeight overflow="auto" gap={ hasFrank || (item.imageUrl && !imageFailed) ? 2 : 0 }>
|
||||||
{hasFrank && !item.imageUrl && <Base className="notification-frank flex-shrink-0" /> }
|
{hasFrank && !item.imageUrl && <Base className="notification-frank flex-shrink-0" /> }
|
||||||
{item.imageUrl && !imageFailed && <img src={item.imageUrl} alt={item.title} onError={() => { setImageFailed(true) }} className="align-self-baseline" />}
|
{item.imageUrl && !imageFailed && <img src={item.imageUrl} alt={item.title} onError={() =>
|
||||||
<Base classNames={['notification-text overflow-y-auto d-flex flex-column w-100', (item.clickUrl && !hasFrank) ? 'justify-content-center' : '']}>
|
{
|
||||||
|
setImageFailed(true)
|
||||||
|
}} className="align-self-baseline" />}
|
||||||
|
<Base classNames={[ 'notification-text overflow-y-auto d-flex flex-column w-100', (item.clickUrl && !hasFrank) ? 'justify-content-center' : '' ]}>
|
||||||
{ (item.messages.length > 0) && item.messages.map((message, index) =>
|
{ (item.messages.length > 0) && item.messages.map((message, index) =>
|
||||||
{
|
{
|
||||||
const htmlText = message.replace(/\r\n|\r|\n/g, '<br />');
|
const htmlText = message.replace(/\r\n|\r|\n/g, '<br />');
|
||||||
|
@ -12,26 +12,26 @@ export const NotificationSeachAlertView: FC<NotificationDefaultAlertViewProps> =
|
|||||||
const { item = null, title = ((props.item && props.item.title) || ''), close = null, ...rest } = props;
|
const { item = null, title = ((props.item && props.item.title) || ''), close = null, ...rest } = props;
|
||||||
|
|
||||||
const [ searchValue, setSearchValue ] = useState('');
|
const [ searchValue, setSearchValue ] = useState('');
|
||||||
const [ results, setResults] = useState<string[]>([]);
|
const [ results, setResults ] = useState<string[]>([]);
|
||||||
|
|
||||||
const visitUrl = useCallback(() =>
|
const visitUrl = useCallback(() =>
|
||||||
{
|
{
|
||||||
NotificationUtilities.openUrl(item.clickUrl);
|
NotificationUtilities.openUrl(item.clickUrl);
|
||||||
|
|
||||||
close();
|
close();
|
||||||
}, [item, close]);
|
}, [ item, close ]);
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
{
|
{
|
||||||
setResults(JSON.parse(item.messages[0]));
|
setResults(JSON.parse(item.messages[0]));
|
||||||
}, [item])
|
}, [ item ])
|
||||||
|
|
||||||
const updateSearchValue = useCallback((value: string) =>
|
const updateSearchValue = useCallback((value: string) =>
|
||||||
{
|
{
|
||||||
let res = JSON.parse(item.messages[0]);
|
let res = JSON.parse(item.messages[0]);
|
||||||
setResults(res.filter((val: string) => val.includes(value)));
|
setResults(res.filter((val: string) => val.includes(value)));
|
||||||
setSearchValue(value);
|
setSearchValue(value);
|
||||||
},[item])
|
},[ item ])
|
||||||
|
|
||||||
const isAction = (item.clickUrl && item.clickUrl.startsWith('event:'));
|
const isAction = (item.clickUrl && item.clickUrl.startsWith('event:'));
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ export const ChooserWidgetView: FC<ChooserWidgetViewProps> = props =>
|
|||||||
setSelectedItem(item);
|
setSelectedItem(item);
|
||||||
|
|
||||||
widgetHandler.processWidgetMessage(new RoomWidgetRoomObjectMessage(RoomWidgetRoomObjectMessage.SELECT_OBJECT, item.id, item.category));
|
widgetHandler.processWidgetMessage(new RoomWidgetRoomObjectMessage(RoomWidgetRoomObjectMessage.SELECT_OBJECT, item.id, item.category));
|
||||||
}, [ widgetHandler, setSelectedItem]);
|
}, [ widgetHandler, setSelectedItem ]);
|
||||||
|
|
||||||
const rowRenderer: ListRowRenderer = (props: ListRowProps) =>
|
const rowRenderer: ListRowRenderer = (props: ListRowProps) =>
|
||||||
{
|
{
|
||||||
|
@ -4,5 +4,6 @@ export class DimmerFurnitureWidgetPresetItem
|
|||||||
public id: number = 0,
|
public id: number = 0,
|
||||||
public type: number = 0,
|
public type: number = 0,
|
||||||
public color: number = 0,
|
public color: number = 0,
|
||||||
public light: number = 0) {}
|
public light: number = 0)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -8,8 +8,8 @@ import { BatchUpdates, UseEventDispatcherHook } from '../../../../../hooks';
|
|||||||
import { useRoomContext } from '../../../RoomContext';
|
import { useRoomContext } from '../../../RoomContext';
|
||||||
import { DimmerFurnitureWidgetPresetItem } from './DimmerFurnitureWidgetPresetItem';
|
import { DimmerFurnitureWidgetPresetItem } from './DimmerFurnitureWidgetPresetItem';
|
||||||
|
|
||||||
const AVAILABLE_COLORS: number[] = [7665141, 21495, 15161822, 15353138, 15923281, 8581961, 0];
|
const AVAILABLE_COLORS: number[] = [ 7665141, 21495, 15161822, 15353138, 15923281, 8581961, 0 ];
|
||||||
const HTML_COLORS: string[] = ['#74F5F5', '#0053F7', '#E759DE', '#EA4532', '#F2F851', '#82F349', '#000000'];
|
const HTML_COLORS: string[] = [ '#74F5F5', '#0053F7', '#E759DE', '#EA4532', '#F2F851', '#82F349', '#000000' ];
|
||||||
const MIN_BRIGHTNESS: number = 76;
|
const MIN_BRIGHTNESS: number = 76;
|
||||||
const MAX_BRIGHTNESS: number = 255;
|
const MAX_BRIGHTNESS: number = 255;
|
||||||
|
|
||||||
|
@ -6,5 +6,6 @@ export class FurnitureEngravingLockData
|
|||||||
public type: number = 0,
|
public type: number = 0,
|
||||||
public usernames: string[] = [],
|
public usernames: string[] = [],
|
||||||
public figures: string[] = [],
|
public figures: string[] = [],
|
||||||
public date: string = null) {}
|
public date: string = null)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -8,8 +8,8 @@ import { ContextMenuHeaderView } from '../../context-menu/ContextMenuHeaderView'
|
|||||||
import { ContextMenuListView } from '../../context-menu/ContextMenuListView';
|
import { ContextMenuListView } from '../../context-menu/ContextMenuListView';
|
||||||
import { ObjectLocationView } from '../../object-location/ObjectLocationView';
|
import { ObjectLocationView } from '../../object-location/ObjectLocationView';
|
||||||
|
|
||||||
const SCORE_TYPES = ['perteam', 'mostwins', 'classic'];
|
const SCORE_TYPES = [ 'perteam', 'mostwins', 'classic' ];
|
||||||
const CLEAR_TYPES = ['alltime', 'daily', 'weekly', 'monthly'];
|
const CLEAR_TYPES = [ 'alltime', 'daily', 'weekly', 'monthly' ];
|
||||||
|
|
||||||
export const FurnitureHighScoreView: FC<{}> = props =>
|
export const FurnitureHighScoreView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
@ -68,7 +68,7 @@ export const FurnitureHighScoreView: FC<{}> = props =>
|
|||||||
<ObjectLocationView key={ index } objectId={ objectId } category={ RoomObjectCategory.FLOOR }>
|
<ObjectLocationView key={ index } objectId={ objectId } category={ RoomObjectCategory.FLOOR }>
|
||||||
<Column className="nitro-widget-high-score nitro-context-menu" gap={ 0 }>
|
<Column className="nitro-widget-high-score nitro-context-menu" gap={ 0 }>
|
||||||
<ContextMenuHeaderView>
|
<ContextMenuHeaderView>
|
||||||
{ LocalizeText('high.score.display.caption', [ 'scoretype', 'cleartype' ], [ LocalizeText(`high.score.display.scoretype.${ SCORE_TYPES[stuffData.scoreType] }`), LocalizeText(`high.score.display.cleartype.${ CLEAR_TYPES[stuffData.clearType] }`)]) }
|
{ LocalizeText('high.score.display.caption', [ 'scoretype', 'cleartype' ], [ LocalizeText(`high.score.display.scoretype.${ SCORE_TYPES[stuffData.scoreType] }`), LocalizeText(`high.score.display.cleartype.${ CLEAR_TYPES[stuffData.clearType] }`) ]) }
|
||||||
</ContextMenuHeaderView>
|
</ContextMenuHeaderView>
|
||||||
<ContextMenuListView overflow="hidden" gap={ 1 } className="h-100">
|
<ContextMenuListView overflow="hidden" gap={ 1 } className="h-100">
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
|
@ -7,5 +7,6 @@ export class FurnitureMannequinData
|
|||||||
public figure: string,
|
public figure: string,
|
||||||
public gender: string,
|
public gender: string,
|
||||||
public clubLevel: number,
|
public clubLevel: number,
|
||||||
public renderedFigure: string = null) {}
|
public renderedFigure: string = null)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@ const ACTION_SET_NAME: number = 1;
|
|||||||
const ACTION_WEAR: number = 2;
|
const ACTION_WEAR: number = 2;
|
||||||
const ACTION_SAVE: number = 3;
|
const ACTION_SAVE: number = 3;
|
||||||
|
|
||||||
const MANNEQUIN_FIGURE = ['hd', 99999, [ 99998 ]];
|
const MANNEQUIN_FIGURE = [ 'hd', 99999, [ 99998 ] ];
|
||||||
const MANNEQUIN_CLOTHING_PART_TYPES = [
|
const MANNEQUIN_CLOTHING_PART_TYPES = [
|
||||||
AvatarFigurePartType.CHEST_ACCESSORY,
|
AvatarFigurePartType.CHEST_ACCESSORY,
|
||||||
AvatarFigurePartType.COAT_CHEST,
|
AvatarFigurePartType.COAT_CHEST,
|
||||||
|
@ -6,5 +6,6 @@ export class FurnitureStickieData
|
|||||||
public color: string,
|
public color: string,
|
||||||
public text: string,
|
public text: string,
|
||||||
public canModify: boolean = false,
|
public canModify: boolean = false,
|
||||||
public isEditing: boolean = false) {}
|
public isEditing: boolean = false)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
export const STICKIE_COLORS = ['9CCEFF','FF9CFF', '9CFF9C','FFFF33'];
|
export const STICKIE_COLORS = [ '9CCEFF','FF9CFF', '9CFF9C','FFFF33' ];
|
||||||
export const STICKIE_COLOR_NAMES = [ 'blue', 'pink', 'green', 'yellow' ];
|
export const STICKIE_COLOR_NAMES = [ 'blue', 'pink', 'green', 'yellow' ];
|
||||||
|
|
||||||
export function getStickieColorName(color: string): string
|
export function getStickieColorName(color: string): string
|
||||||
|
@ -7,5 +7,6 @@ export class FurnitureTrophyData
|
|||||||
public ownerName: string,
|
public ownerName: string,
|
||||||
public date: string,
|
public date: string,
|
||||||
public message: string,
|
public message: string,
|
||||||
public customTitle?: string) {}
|
public customTitle?: string)
|
||||||
|
{}
|
||||||
}
|
}
|
||||||
|
@ -9,15 +9,15 @@ import { YoutubeVideoPlaybackStateEnum } from './utils/YoutubeVideoPlaybackState
|
|||||||
|
|
||||||
export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
const [objectId, setObjectId] = useState(-1);
|
const [ objectId, setObjectId ] = useState(-1);
|
||||||
const [videoId, setVideoId] = useState<string>(null);
|
const [ videoId, setVideoId ] = useState<string>(null);
|
||||||
const [videoStart, setVideoStart] = useState<number>(null);
|
const [ videoStart, setVideoStart ] = useState<number>(null);
|
||||||
const [videoEnd, setVideoEnd] = useState<number>(null);
|
const [ videoEnd, setVideoEnd ] = useState<number>(null);
|
||||||
const [currentVideoState, setCurrentVideoState] = useState(-1);
|
const [ currentVideoState, setCurrentVideoState ] = useState(-1);
|
||||||
const [selectedItem, setSelectedItem] = useState<string>(null);
|
const [ selectedItem, setSelectedItem ] = useState<string>(null);
|
||||||
const [playlists, setPlaylists] = useState<YoutubeDisplayPlaylist[]>(null);
|
const [ playlists, setPlaylists ] = useState<YoutubeDisplayPlaylist[]>(null);
|
||||||
const [hasControl, setHasControl] = useState(false);
|
const [ hasControl, setHasControl ] = useState(false);
|
||||||
const [player, setPlayer] = useState<any>(null);
|
const [ player, setPlayer ] = useState<any>(null);
|
||||||
const { eventDispatcher = null } = useRoomContext();
|
const { eventDispatcher = null } = useRoomContext();
|
||||||
|
|
||||||
const onRoomWidgetUpdateYoutubeDisplayEvent = useCallback((event: RoomWidgetUpdateYoutubeDisplayEvent) =>
|
const onRoomWidgetUpdateYoutubeDisplayEvent = useCallback((event: RoomWidgetUpdateYoutubeDisplayEvent) =>
|
||||||
@ -60,7 +60,7 @@ export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
|||||||
setVideoEnd(parser.endAtSeconds);
|
setVideoEnd(parser.endAtSeconds);
|
||||||
setCurrentVideoState(parser.state);
|
setCurrentVideoState(parser.state);
|
||||||
});
|
});
|
||||||
}, [objectId]);
|
}, [ objectId ]);
|
||||||
|
|
||||||
const onPlaylists = useCallback((event: YoutubeDisplayPlaylistsEvent) =>
|
const onPlaylists = useCallback((event: YoutubeDisplayPlaylistsEvent) =>
|
||||||
{
|
{
|
||||||
@ -79,7 +79,7 @@ export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
|||||||
setVideoEnd(null);
|
setVideoEnd(null);
|
||||||
setVideoStart(null);
|
setVideoStart(null);
|
||||||
});
|
});
|
||||||
}, [objectId]);
|
}, [ objectId ]);
|
||||||
|
|
||||||
const onControlVideo = useCallback((event: YoutubeControlVideoMessageEvent) =>
|
const onControlVideo = useCallback((event: YoutubeControlVideoMessageEvent) =>
|
||||||
{
|
{
|
||||||
@ -102,7 +102,7 @@ export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
|||||||
player.pauseVideo();
|
player.pauseVideo();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}, [objectId, player]);
|
}, [ objectId, player ]);
|
||||||
|
|
||||||
UseMessageEventHook(YoutubeDisplayVideoMessageEvent, onVideo);
|
UseMessageEventHook(YoutubeDisplayVideoMessageEvent, onVideo);
|
||||||
UseMessageEventHook(YoutubeDisplayPlaylistsEvent, onPlaylists);
|
UseMessageEventHook(YoutubeDisplayPlaylistsEvent, onPlaylists);
|
||||||
@ -140,7 +140,7 @@ export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
|||||||
SendMessageComposer(new SetYoutubeDisplayPlaylistMessageComposer(objectId, action));
|
SendMessageComposer(new SetYoutubeDisplayPlaylistMessageComposer(objectId, action));
|
||||||
setSelectedItem(action);
|
setSelectedItem(action);
|
||||||
}
|
}
|
||||||
}, [hasControl, objectId, selectedItem, videoId]);
|
}, [ hasControl, objectId, selectedItem, videoId ]);
|
||||||
|
|
||||||
const onReady = useCallback((event: any) =>
|
const onReady = useCallback((event: any) =>
|
||||||
{
|
{
|
||||||
@ -172,7 +172,7 @@ export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [currentVideoState, objectId, processAction]);
|
}, [ currentVideoState, objectId, processAction ]);
|
||||||
|
|
||||||
const getYoutubeOpts = useMemo( () =>
|
const getYoutubeOpts = useMemo( () =>
|
||||||
{
|
{
|
||||||
@ -204,7 +204,7 @@ export const FurnitureYoutubeDisplayView: FC<{}> = props =>
|
|||||||
end: videoEnd
|
end: videoEnd
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, [videoEnd, videoStart]);
|
}, [ videoEnd, videoStart ]);
|
||||||
|
|
||||||
if((objectId === -1)) return null;
|
if((objectId === -1)) return null;
|
||||||
|
|
||||||
|
@ -112,7 +112,7 @@ export const WordQuizWidgetView: FC<{}> = props =>
|
|||||||
const updateMessage = new RoomWidgetPollMessage(RoomWidgetPollMessage.ANSWER, pollId);
|
const updateMessage = new RoomWidgetPollMessage(RoomWidgetPollMessage.ANSWER, pollId);
|
||||||
|
|
||||||
updateMessage.questionId = question.id;
|
updateMessage.questionId = question.id;
|
||||||
updateMessage.answers = [vote];
|
updateMessage.answers = [ vote ];
|
||||||
|
|
||||||
widgetHandler.processWidgetMessage(updateMessage);
|
widgetHandler.processWidgetMessage(updateMessage);
|
||||||
|
|
||||||
@ -167,7 +167,7 @@ export const WordQuizWidgetView: FC<{}> = props =>
|
|||||||
{ question &&
|
{ question &&
|
||||||
<WordQuizQuestionView question={question.content} canVote={!answerSent} vote={vote} noVotes={answerCounts.get(VALUE_KEY_DISLIKE) || 0} yesVotes={answerCounts.get(VALUE_KEY_LIKE) || 0} /> }
|
<WordQuizQuestionView question={question.content} canVote={!answerSent} vote={vote} noVotes={answerCounts.get(VALUE_KEY_DISLIKE) || 0} yesVotes={answerCounts.get(VALUE_KEY_LIKE) || 0} /> }
|
||||||
{ userAnswers &&
|
{ userAnswers &&
|
||||||
Array.from(userAnswers.entries()).map(([key, value], index) => <WordQuizVoteView key={index} userIndex={key} vote={value.value} />) }
|
Array.from(userAnswers.entries()).map(([ key, value ], index) => <WordQuizVoteView key={index} userIndex={key} vote={value.value} />) }
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -43,7 +43,7 @@ export const WiredFurniSelectorView: FC<{}> = props =>
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text bold>{ LocalizeText('wiredfurni.pickfurnis.caption', ['count', 'limit'], [ furniIds.length.toString(), trigger.maximumItemSelectionCount.toString() ]) }</Text>
|
<Text bold>{ LocalizeText('wiredfurni.pickfurnis.caption', [ 'count', 'limit' ], [ furniIds.length.toString(), trigger.maximumItemSelectionCount.toString() ]) }</Text>
|
||||||
<Text small>{ LocalizeText('wiredfurni.pickfurnis.desc') }</Text>
|
<Text small>{ LocalizeText('wiredfurni.pickfurnis.desc') }</Text>
|
||||||
</Column>
|
</Column>
|
||||||
);
|
);
|
||||||
|
@ -22,7 +22,7 @@ export const WiredActionGiveRewardView: FC<{}> = props =>
|
|||||||
|
|
||||||
const addReward = useCallback(() =>
|
const addReward = useCallback(() =>
|
||||||
{
|
{
|
||||||
setRewards(rewards => [...rewards, { isBadge: false, itemCode: '', probability: null }]);
|
setRewards(rewards => [ ...rewards, { isBadge: false, itemCode: '', probability: null } ]);
|
||||||
}, [ setRewards ]);
|
}, [ setRewards ]);
|
||||||
|
|
||||||
const removeReward = useCallback((index: number) =>
|
const removeReward = useCallback((index: number) =>
|
||||||
@ -59,7 +59,7 @@ export const WiredActionGiveRewardView: FC<{}> = props =>
|
|||||||
{
|
{
|
||||||
if(!reward.itemCode) continue;
|
if(!reward.itemCode) continue;
|
||||||
|
|
||||||
const rewardsString = [reward.isBadge ? '0' : '1', reward.itemCode, reward.probability.toString()];
|
const rewardsString = [ reward.isBadge ? '0' : '1', reward.itemCode, reward.probability.toString() ];
|
||||||
stringRewards.push(rewardsString.join(','));
|
stringRewards.push(rewardsString.join(','));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -68,7 +68,7 @@ export const WiredActionGiveRewardView: FC<{}> = props =>
|
|||||||
BatchUpdates(() =>
|
BatchUpdates(() =>
|
||||||
{
|
{
|
||||||
setStringParam(stringRewards.join(';'));
|
setStringParam(stringRewards.join(';'));
|
||||||
setIntParams([rewardTime, uniqueRewards ? 1 : 0, rewardsLimit, limitationInterval]);
|
setIntParams([ rewardTime, uniqueRewards ? 1 : 0, rewardsLimit, limitationInterval ]);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}, [ rewardTime, uniqueRewards, rewardsLimit, limitationInterval, rewards, setIntParams, setStringParam ]);
|
}, [ rewardTime, uniqueRewards, rewardsLimit, limitationInterval, rewards, setIntParams, setStringParam ]);
|
||||||
@ -108,7 +108,7 @@ export const WiredActionGiveRewardView: FC<{}> = props =>
|
|||||||
<WiredActionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } hasSpecialInput={ true } save={ save }>
|
<WiredActionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } hasSpecialInput={ true } save={ save }>
|
||||||
<Flex alignItems="center" gap={ 1 }>
|
<Flex alignItems="center" gap={ 1 }>
|
||||||
<input className="form-check-input" type="checkbox" id="limitEnabled" onChange={ event => setLimitEnabled(event.target.checked)} />
|
<input className="form-check-input" type="checkbox" id="limitEnabled" onChange={ event => setLimitEnabled(event.target.checked)} />
|
||||||
<Text>{ LocalizeText('wiredfurni.params.prizelimit', ['amount'], [limitEnabled ? rewardsLimit.toString() : '']) }</Text>
|
<Text>{ LocalizeText('wiredfurni.params.prizelimit', [ 'amount' ], [ limitEnabled ? rewardsLimit.toString() : '' ]) }</Text>
|
||||||
</Flex>
|
</Flex>
|
||||||
{ !limitEnabled &&
|
{ !limitEnabled &&
|
||||||
<Text center small className="bg-muted rounded p-1">
|
<Text center small className="bg-muted rounded p-1">
|
||||||
|
@ -56,7 +56,7 @@ export const WiredActionGiveScoreToPredefinedTeamView: FC<{}> = props =>
|
|||||||
</Column>
|
</Column>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text bold>{ LocalizeText('wiredfurni.params.team') }</Text>
|
<Text bold>{ LocalizeText('wiredfurni.params.team') }</Text>
|
||||||
{ [1, 2, 3, 4].map(value =>
|
{ [ 1, 2, 3, 4 ].map(value =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex key={ value } gap={ 1 }>
|
<Flex key={ value } gap={ 1 }>
|
||||||
|
@ -20,7 +20,7 @@ export const WiredActionJoinTeamView: FC<{}> = props =>
|
|||||||
<WiredActionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } hasSpecialInput={ true } save={ save }>
|
<WiredActionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } hasSpecialInput={ true } save={ save }>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text bold>{ LocalizeText('wiredfurni.params.team') }</Text>
|
<Text bold>{ LocalizeText('wiredfurni.params.team') }</Text>
|
||||||
{ [1, 2, 3, 4].map(team =>
|
{ [ 1, 2, 3, 4 ].map(team =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex key={ team } gap={ 1 }>
|
<Flex key={ team } gap={ 1 }>
|
||||||
|
@ -24,7 +24,7 @@ const directionOptions: { value: number, icon: string }[] = [
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
const rotationOptions: number[] = [0, 1, 2, 3, 4, 5, 6];
|
const rotationOptions: number[] = [ 0, 1, 2, 3, 4, 5, 6 ];
|
||||||
|
|
||||||
export const WiredActionMoveAndRotateFurniView: FC<{}> = props =>
|
export const WiredActionMoveAndRotateFurniView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
@ -59,7 +59,7 @@ export const WiredActionMoveAndRotateFurniView: FC<{}> = props =>
|
|||||||
{ directionOptions.map(option =>
|
{ directionOptions.map(option =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex alignItems="center" gap={ 1 }>
|
<Flex key={ option.value } alignItems="center" gap={ 1 }>
|
||||||
<input className="form-check-input" type="radio" name="movement" id={ `movement${ option.value }` } checked={ (movement === option.value) } onChange={ event => setMovement(option.value) } />
|
<input className="form-check-input" type="radio" name="movement" id={ `movement${ option.value }` } checked={ (movement === option.value) } onChange={ event => setMovement(option.value) } />
|
||||||
<Text>
|
<Text>
|
||||||
<i className={ `icon icon-${ option.icon }` } />
|
<i className={ `icon icon-${ option.icon }` } />
|
||||||
@ -74,7 +74,7 @@ export const WiredActionMoveAndRotateFurniView: FC<{}> = props =>
|
|||||||
{ rotationOptions.map(option =>
|
{ rotationOptions.map(option =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex alignItems="center" gap={ 1 }>
|
<Flex key={ option } alignItems="center" gap={ 1 }>
|
||||||
<input className="form-check-input" type="radio" name="rotation" id={ `rotation${ option }` } checked={ (rotation === option) } onChange={ event => setRotation(option) } />
|
<input className="form-check-input" type="radio" name="rotation" id={ `rotation${ option }` } checked={ (rotation === option) } onChange={ event => setRotation(option) } />
|
||||||
<Text>{ LocalizeText(`wiredfurni.params.turn.${ option }`) }</Text>
|
<Text>{ LocalizeText(`wiredfurni.params.turn.${ option }`) }</Text>
|
||||||
</Flex>
|
</Flex>
|
||||||
|
@ -36,7 +36,7 @@ const directionOptions: { value: number, icon: string }[] = [
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
const rotationOptions: number[] = [0, 1, 2, 3];
|
const rotationOptions: number[] = [ 0, 1, 2, 3 ];
|
||||||
|
|
||||||
export const WiredActionMoveFurniView: FC<{}> = props =>
|
export const WiredActionMoveFurniView: FC<{}> = props =>
|
||||||
{
|
{
|
||||||
@ -92,7 +92,7 @@ export const WiredActionMoveFurniView: FC<{}> = props =>
|
|||||||
<Flex alignItems="center" key={ option } gap={ 1 }>
|
<Flex alignItems="center" key={ option } gap={ 1 }>
|
||||||
<input className="form-check-input" type="radio" name="rotation" id={ `rotation${ option }` } checked={ (rotation === option) } onChange={ event => setRotation(option) } />
|
<input className="form-check-input" type="radio" name="rotation" id={ `rotation${ option }` } checked={ (rotation === option) } onChange={ event => setRotation(option) } />
|
||||||
<Text>
|
<Text>
|
||||||
{ [1, 2].includes(option) && <i className={ `icon icon-rot-${ option }` } /> }
|
{ [ 1, 2 ].includes(option) && <i className={ `icon icon-rot-${ option }` } /> }
|
||||||
{ LocalizeText(`wiredfurni.params.rotatefurni.${ option }`) }
|
{ LocalizeText(`wiredfurni.params.rotatefurni.${ option }`) }
|
||||||
</Text>
|
</Text>
|
||||||
</Flex>
|
</Flex>
|
||||||
|
@ -33,7 +33,7 @@ export const WiredActionMuteUserView: FC<{}> = props =>
|
|||||||
return (
|
return (
|
||||||
<WiredActionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } hasSpecialInput={ true } save={ save }>
|
<WiredActionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_NONE } hasSpecialInput={ true } save={ save }>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text bold>{ LocalizeText('wiredfurni.params.length.minutes', ['minutes'], [ time.toString() ]) }</Text>
|
<Text bold>{ LocalizeText('wiredfurni.params.length.minutes', [ 'minutes' ], [ time.toString() ]) }</Text>
|
||||||
<ReactSlider
|
<ReactSlider
|
||||||
className={ 'nitro-slider' }
|
className={ 'nitro-slider' }
|
||||||
min={ 1 }
|
min={ 1 }
|
||||||
|
@ -25,7 +25,7 @@ export const WiredConditionDateRangeView: FC<{}> = props =>
|
|||||||
endDateMili = endDateInstance.getTime() / 1000;
|
endDateMili = endDateInstance.getTime() / 1000;
|
||||||
}
|
}
|
||||||
|
|
||||||
setIntParams([startDateMili, endDateMili]);
|
setIntParams([ startDateMili, endDateMili ]);
|
||||||
}
|
}
|
||||||
|
|
||||||
useEffect(() =>
|
useEffect(() =>
|
||||||
|
@ -20,7 +20,7 @@ export const WiredConditionFurniHasFurniOnView: FC<{}> = props =>
|
|||||||
<WiredConditionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_BY_ID } hasSpecialInput={ true } save={ save }>
|
<WiredConditionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_BY_ID } hasSpecialInput={ true } save={ save }>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text bold>{ LocalizeText('wiredfurni.params.requireall') }</Text>
|
<Text bold>{ LocalizeText('wiredfurni.params.requireall') }</Text>
|
||||||
{ [0, 1].map(value =>
|
{ [ 0, 1 ].map(value =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex alignItems="center" gap={ 1 } key={ value }>
|
<Flex alignItems="center" gap={ 1 } key={ value }>
|
||||||
|
@ -20,7 +20,7 @@ export const WiredConditionFurniHasNotFurniOnView: FC<{}> = props =>
|
|||||||
<WiredConditionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_BY_ID } hasSpecialInput={ true } save={ save }>
|
<WiredConditionBaseView requiresFurni={ WiredFurniType.STUFF_SELECTION_OPTION_BY_ID } hasSpecialInput={ true } save={ save }>
|
||||||
<Column gap={ 1 }>
|
<Column gap={ 1 }>
|
||||||
<Text bold>{ LocalizeText('wiredfurni.params.not_requireall') }</Text>
|
<Text bold>{ LocalizeText('wiredfurni.params.not_requireall') }</Text>
|
||||||
{ [0, 1].map(value =>
|
{ [ 0, 1 ].map(value =>
|
||||||
{
|
{
|
||||||
return (
|
return (
|
||||||
<Flex alignItems="center" gap={ 1 } key={ value }>
|
<Flex alignItems="center" gap={ 1 } key={ value }>
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
// eslint-disable-next-line import/no-anonymous-default-export
|
|
||||||
export default () =>
|
export default () =>
|
||||||
{
|
{
|
||||||
const intervals: {
|
const intervals: {
|
||||||
|
@ -3,7 +3,7 @@ export class WorkerBuilder extends Worker
|
|||||||
constructor(worker)
|
constructor(worker)
|
||||||
{
|
{
|
||||||
const code = worker.toString();
|
const code = worker.toString();
|
||||||
const blob = new Blob([`(${code})()`]);
|
const blob = new Blob([ `(${code})()` ]);
|
||||||
|
|
||||||
super(URL.createObjectURL(blob));
|
super(URL.createObjectURL(blob));
|
||||||
}
|
}
|
||||||
|
506
yarn.lock
506
yarn.lock
@ -58,17 +58,17 @@
|
|||||||
source-map "^0.5.0"
|
source-map "^0.5.0"
|
||||||
|
|
||||||
"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.5", "@babel/core@^7.8.4":
|
"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.5", "@babel/core@^7.8.4":
|
||||||
version "7.17.7"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.7.tgz#f7c28228c83cdf2dbd1b9baa06eaf9df07f0c2f9"
|
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.17.8.tgz#3dac27c190ebc3a4381110d46c80e77efe172e1a"
|
||||||
integrity sha512-djHlEfFHnSnTAcPb7dATbiM5HxGOP98+3JLBZtjRb5I7RXrw7kFRoG2dXM8cm3H+o11A8IFH/uprmJpwFynRNQ==
|
integrity sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@ampproject/remapping" "^2.1.0"
|
"@ampproject/remapping" "^2.1.0"
|
||||||
"@babel/code-frame" "^7.16.7"
|
"@babel/code-frame" "^7.16.7"
|
||||||
"@babel/generator" "^7.17.7"
|
"@babel/generator" "^7.17.7"
|
||||||
"@babel/helper-compilation-targets" "^7.17.7"
|
"@babel/helper-compilation-targets" "^7.17.7"
|
||||||
"@babel/helper-module-transforms" "^7.17.7"
|
"@babel/helper-module-transforms" "^7.17.7"
|
||||||
"@babel/helpers" "^7.17.7"
|
"@babel/helpers" "^7.17.8"
|
||||||
"@babel/parser" "^7.17.7"
|
"@babel/parser" "^7.17.8"
|
||||||
"@babel/template" "^7.16.7"
|
"@babel/template" "^7.16.7"
|
||||||
"@babel/traverse" "^7.17.3"
|
"@babel/traverse" "^7.17.3"
|
||||||
"@babel/types" "^7.17.0"
|
"@babel/types" "^7.17.0"
|
||||||
@ -112,7 +112,7 @@
|
|||||||
browserslist "^4.17.5"
|
browserslist "^4.17.5"
|
||||||
semver "^6.3.0"
|
semver "^6.3.0"
|
||||||
|
|
||||||
"@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7", "@babel/helper-create-class-features-plugin@^7.17.1", "@babel/helper-create-class-features-plugin@^7.17.6":
|
"@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7", "@babel/helper-create-class-features-plugin@^7.17.6":
|
||||||
version "7.17.6"
|
version "7.17.6"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz#3778c1ed09a7f3e65e6d6e0f6fbfcc53809d92c9"
|
resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz#3778c1ed09a7f3e65e6d6e0f6fbfcc53809d92c9"
|
||||||
integrity sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==
|
integrity sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg==
|
||||||
@ -285,10 +285,10 @@
|
|||||||
"@babel/traverse" "^7.16.8"
|
"@babel/traverse" "^7.16.8"
|
||||||
"@babel/types" "^7.16.8"
|
"@babel/types" "^7.16.8"
|
||||||
|
|
||||||
"@babel/helpers@^7.12.1", "@babel/helpers@^7.17.7":
|
"@babel/helpers@^7.12.1", "@babel/helpers@^7.17.8":
|
||||||
version "7.17.7"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.7.tgz#6fc0a24280fd00026e85424bbfed4650e76d7127"
|
resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.17.8.tgz#288450be8c6ac7e4e44df37bcc53d345e07bc106"
|
||||||
integrity sha512-TKsj9NkjJfTBxM7Phfy7kv6yYc4ZcOo+AaWGqQOKTPDOmcGkIFb5xNA746eKisQkm4yavUYh4InYM9S+VnO01w==
|
integrity sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/template" "^7.16.7"
|
"@babel/template" "^7.16.7"
|
||||||
"@babel/traverse" "^7.17.3"
|
"@babel/traverse" "^7.17.3"
|
||||||
@ -303,10 +303,10 @@
|
|||||||
chalk "^2.0.0"
|
chalk "^2.0.0"
|
||||||
js-tokens "^4.0.0"
|
js-tokens "^4.0.0"
|
||||||
|
|
||||||
"@babel/parser@^7.1.0", "@babel/parser@^7.12.3", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3", "@babel/parser@^7.17.7", "@babel/parser@^7.7.0":
|
"@babel/parser@^7.1.0", "@babel/parser@^7.12.3", "@babel/parser@^7.14.7", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3", "@babel/parser@^7.17.8", "@babel/parser@^7.7.0":
|
||||||
version "7.17.7"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.7.tgz#fc19b645a5456c8d6fdb6cecd3c66c0173902800"
|
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.8.tgz#2817fb9d885dd8132ea0f8eb615a6388cca1c240"
|
||||||
integrity sha512-bm3AQf45vR4gKggRfvJdYJ0gFLoCbsPxiFLSH6hTVYABptNHY6l9NrhnucVjQ/X+SPtLANT9lc0fFhikj+VBRA==
|
integrity sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ==
|
||||||
|
|
||||||
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7":
|
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7":
|
||||||
version "7.16.7"
|
version "7.16.7"
|
||||||
@ -351,11 +351,11 @@
|
|||||||
"@babel/plugin-syntax-class-static-block" "^7.14.5"
|
"@babel/plugin-syntax-class-static-block" "^7.14.5"
|
||||||
|
|
||||||
"@babel/plugin-proposal-decorators@^7.16.4":
|
"@babel/plugin-proposal-decorators@^7.16.4":
|
||||||
version "7.17.2"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.17.2.tgz#c36372ddfe0360cac1ee331a238310bddca11493"
|
resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.17.8.tgz#4f0444e896bee85d35cf714a006fc5418f87ff00"
|
||||||
integrity sha512-WH8Z95CwTq/W8rFbMqb9p3hicpt4RX4f0K659ax2VHxgOyT6qQmUaEVEjIh4WR9Eh9NymkVn5vwsrE68fAQNUw==
|
integrity sha512-U69odN4Umyyx1xO1rTII0IDkAEC+RNlcKXtqOblfpzqy1C+aOplb76BQNq0+XdpVkOaPlpEDwd++joY8FNFJKA==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/helper-create-class-features-plugin" "^7.17.1"
|
"@babel/helper-create-class-features-plugin" "^7.17.6"
|
||||||
"@babel/helper-plugin-utils" "^7.16.7"
|
"@babel/helper-plugin-utils" "^7.16.7"
|
||||||
"@babel/helper-replace-supers" "^7.16.7"
|
"@babel/helper-replace-supers" "^7.16.7"
|
||||||
"@babel/plugin-syntax-decorators" "^7.17.0"
|
"@babel/plugin-syntax-decorators" "^7.17.0"
|
||||||
@ -742,12 +742,12 @@
|
|||||||
babel-plugin-dynamic-import-node "^2.3.3"
|
babel-plugin-dynamic-import-node "^2.3.3"
|
||||||
|
|
||||||
"@babel/plugin-transform-modules-systemjs@^7.16.7":
|
"@babel/plugin-transform-modules-systemjs@^7.16.7":
|
||||||
version "7.16.7"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz#887cefaef88e684d29558c2b13ee0563e287c2d7"
|
resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz#81fd834024fae14ea78fbe34168b042f38703859"
|
||||||
integrity sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==
|
integrity sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/helper-hoist-variables" "^7.16.7"
|
"@babel/helper-hoist-variables" "^7.16.7"
|
||||||
"@babel/helper-module-transforms" "^7.16.7"
|
"@babel/helper-module-transforms" "^7.17.7"
|
||||||
"@babel/helper-plugin-utils" "^7.16.7"
|
"@babel/helper-plugin-utils" "^7.16.7"
|
||||||
"@babel/helper-validator-identifier" "^7.16.7"
|
"@babel/helper-validator-identifier" "^7.16.7"
|
||||||
babel-plugin-dynamic-import-node "^2.3.3"
|
babel-plugin-dynamic-import-node "^2.3.3"
|
||||||
@ -1035,17 +1035,17 @@
|
|||||||
"@babel/plugin-transform-typescript" "^7.16.7"
|
"@babel/plugin-transform-typescript" "^7.16.7"
|
||||||
|
|
||||||
"@babel/runtime-corejs3@^7.10.2":
|
"@babel/runtime-corejs3@^7.10.2":
|
||||||
version "7.17.7"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.17.7.tgz#cf914f474c490ef1aa8661d47adaa0a993636e7e"
|
resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.17.8.tgz#d7dd49fb812f29c61c59126da3792d8740d4e284"
|
||||||
integrity sha512-TvliGJjhxis5m7xIMvlXH/xG8Oa/LK0SCUCyfKD6nLi42n5fB4WibDJ0g9trmmBB6hwpMNx+Lzbxy9/4gpMaVw==
|
integrity sha512-ZbYSUvoSF6dXZmMl/CYTMOvzIFnbGfv4W3SEHYgMvNsFTeLaF2gkGAF4K2ddmtSK4Emej+0aYcnSC6N5dPCXUQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
core-js-pure "^3.20.2"
|
core-js-pure "^3.20.2"
|
||||||
regenerator-runtime "^0.13.4"
|
regenerator-runtime "^0.13.4"
|
||||||
|
|
||||||
"@babel/runtime@^7.10.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.16", "@babel/runtime@^7.16.3", "@babel/runtime@^7.17.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7":
|
"@babel/runtime@^7.10.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.16", "@babel/runtime@^7.16.3", "@babel/runtime@^7.17.2", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7":
|
||||||
version "7.17.7"
|
version "7.17.8"
|
||||||
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.7.tgz#a5f3328dc41ff39d803f311cfe17703418cf9825"
|
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.8.tgz#3e56e4aff81befa55ac3ac6a0967349fd1c5bca2"
|
||||||
integrity sha512-L6rvG9GDxaLgFjg41K+5Yv9OMrU98sWe+Ykmc6FDJW/+vYZMhdOMKkISgzptMaERHvS2Y2lw9MDRm2gHhlQQoA==
|
integrity sha512-dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==
|
||||||
dependencies:
|
dependencies:
|
||||||
regenerator-runtime "^0.13.4"
|
regenerator-runtime "^0.13.4"
|
||||||
|
|
||||||
@ -1144,29 +1144,44 @@
|
|||||||
minimatch "^3.0.4"
|
minimatch "^3.0.4"
|
||||||
strip-json-comments "^3.1.1"
|
strip-json-comments "^3.1.1"
|
||||||
|
|
||||||
"@fortawesome/fontawesome-common-types@6.1.0":
|
"@eslint/eslintrc@^1.2.1":
|
||||||
version "6.1.0"
|
version "1.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.0.tgz#5a9468da0e5c2a3ccc161882ef5ffafbd3d4882f"
|
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.2.1.tgz#8b5e1c49f4077235516bc9ec7d41378c0f69b8c6"
|
||||||
integrity sha512-lFIJ5opxOKG9q88xOsuJJAdRZ+2WRldsZwUR/7MJoOMUMhF/LkHUjwWACIEPTa5Wo6uTDHvGRIX+XutdN7zYxA==
|
integrity sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==
|
||||||
|
dependencies:
|
||||||
|
ajv "^6.12.4"
|
||||||
|
debug "^4.3.2"
|
||||||
|
espree "^9.3.1"
|
||||||
|
globals "^13.9.0"
|
||||||
|
ignore "^5.2.0"
|
||||||
|
import-fresh "^3.2.1"
|
||||||
|
js-yaml "^4.1.0"
|
||||||
|
minimatch "^3.0.4"
|
||||||
|
strip-json-comments "^3.1.1"
|
||||||
|
|
||||||
|
"@fortawesome/fontawesome-common-types@6.1.1":
|
||||||
|
version "6.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.1.tgz#7dc996042d21fc1ae850e3173b5c67b0549f9105"
|
||||||
|
integrity sha512-wVn5WJPirFTnzN6tR95abCx+ocH+3IFLXAgyavnf9hUmN0CfWoDjPT/BAWsUVwSlYYVBeCLJxaqi7ZGe4uSjBA==
|
||||||
|
|
||||||
"@fortawesome/fontawesome-svg-core@^6.1.0":
|
"@fortawesome/fontawesome-svg-core@^6.1.0":
|
||||||
version "6.1.0"
|
version "6.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.0.tgz#b78a43df315a6b1568d803ee48a9f1edea0714aa"
|
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.1.tgz#3424ec6182515951816be9b11665d67efdce5b5f"
|
||||||
integrity sha512-racj+/EDnMZN0jcuHePOa+9kdHHOCpCAbBvVRnEi4G4DA5SWQiT/uXJ8WcfVEbLN51vPJjhukP4o+zH0cfYplg==
|
integrity sha512-NCg0w2YIp81f4V6cMGD9iomfsIj7GWrqmsa0ZsPh59G7PKiGN1KymZNxmF00ssuAlo/VZmpK6xazsGOwzKYUMg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@fortawesome/fontawesome-common-types" "6.1.0"
|
"@fortawesome/fontawesome-common-types" "6.1.1"
|
||||||
|
|
||||||
"@fortawesome/free-solid-svg-icons@^6.1.0":
|
"@fortawesome/free-solid-svg-icons@^6.1.0":
|
||||||
version "6.1.0"
|
version "6.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.0.tgz#1bdc3ce6ddd2336348ba324ac4a72161725b0d95"
|
resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.1.tgz#3369e673f8fe8be2fba30b1ec274d47490a830a6"
|
||||||
integrity sha512-OOr0jRHl5d41RzBS3sZh5Z3HmdPjMr43PxxKlYeLtQxFSixPf4sJFVM12/rTepB2m0rVShI0vtjHQmzOTlBaXg==
|
integrity sha512-0/5exxavOhI/D4Ovm2r3vxNojGZioPwmFrKg0ZUH69Q68uFhFPs6+dhAToh6VEQBntxPRYPuT5Cg1tpNa9JUPg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@fortawesome/fontawesome-common-types" "6.1.0"
|
"@fortawesome/fontawesome-common-types" "6.1.1"
|
||||||
|
|
||||||
"@fortawesome/react-fontawesome@^0.1.17":
|
"@fortawesome/react-fontawesome@^0.1.17":
|
||||||
version "0.1.17"
|
version "0.1.18"
|
||||||
resolved "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.17.tgz#06fc06cb1a721e38e5b50b4a1cb851e9b9c77d7a"
|
resolved "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.18.tgz#dae37f718a24e14d7a99a5496c873d69af3fbd73"
|
||||||
integrity sha512-dX43Z5IvMaW7fwzU8farosYjKNGfRb2HB/DgjVBHeJZ/NSnuuaujPPx0YOdcAq+n3mqn70tyCde2HM1mqbhiuw==
|
integrity sha512-RwLIB4TZw0M9gvy5u+TusAA0afbwM4JQIimNH/j3ygd6aIvYPQLqXMhC9ErY26J23rDPyDZldIfPq/HpTTJ/tQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
prop-types "^15.8.1"
|
prop-types "^15.8.1"
|
||||||
|
|
||||||
@ -1216,7 +1231,16 @@
|
|||||||
debug "^4.1.1"
|
debug "^4.1.1"
|
||||||
minimatch "^3.0.4"
|
minimatch "^3.0.4"
|
||||||
|
|
||||||
"@humanwhocodes/object-schema@^1.2.0":
|
"@humanwhocodes/config-array@^0.9.2":
|
||||||
|
version "0.9.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7"
|
||||||
|
integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==
|
||||||
|
dependencies:
|
||||||
|
"@humanwhocodes/object-schema" "^1.2.1"
|
||||||
|
debug "^4.1.1"
|
||||||
|
minimatch "^3.0.4"
|
||||||
|
|
||||||
|
"@humanwhocodes/object-schema@^1.2.0", "@humanwhocodes/object-schema@^1.2.1":
|
||||||
version "1.2.1"
|
version "1.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
|
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
|
||||||
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
|
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
|
||||||
@ -1702,9 +1726,9 @@
|
|||||||
"@babel/runtime" "^7.6.2"
|
"@babel/runtime" "^7.6.2"
|
||||||
|
|
||||||
"@restart/hooks@^0.4.0", "@restart/hooks@^0.4.5":
|
"@restart/hooks@^0.4.0", "@restart/hooks@^0.4.5":
|
||||||
version "0.4.5"
|
version "0.4.6"
|
||||||
resolved "https://registry.yarnpkg.com/@restart/hooks/-/hooks-0.4.5.tgz#e7acbea237bfc9e479970500cf87538b41a1ed02"
|
resolved "https://registry.yarnpkg.com/@restart/hooks/-/hooks-0.4.6.tgz#15dcf34631a618c513efc924705c7cbe349a4a0c"
|
||||||
integrity sha512-tLGtY0aHeIfT7aPwUkvQuhIy3+q3w4iqmUzFLPlOAf/vNUacLaBt1j/S//jv/dQhenRh8jvswyMojCwmLvJw8A==
|
integrity sha512-FzpEzy6QeLB3OpUrC9OQD/lWCluQmilLfRGa/DqbB6OmV05AEt/0Lgn3Jf6l27UIJMK0qFmNcps6p8DNLXa6Pw==
|
||||||
dependencies:
|
dependencies:
|
||||||
dequal "^2.0.2"
|
dequal "^2.0.2"
|
||||||
|
|
||||||
@ -1902,9 +1926,9 @@
|
|||||||
integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==
|
integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==
|
||||||
|
|
||||||
"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7":
|
"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7":
|
||||||
version "7.1.18"
|
version "7.1.19"
|
||||||
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8"
|
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460"
|
||||||
integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==
|
integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/parser" "^7.1.0"
|
"@babel/parser" "^7.1.0"
|
||||||
"@babel/types" "^7.0.0"
|
"@babel/types" "^7.0.0"
|
||||||
@ -2001,10 +2025,10 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/istanbul-lib-report" "*"
|
"@types/istanbul-lib-report" "*"
|
||||||
|
|
||||||
"@types/json-schema@*", "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8":
|
"@types/json-schema@*", "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
|
||||||
version "7.0.9"
|
version "7.0.11"
|
||||||
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d"
|
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3"
|
||||||
integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==
|
integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==
|
||||||
|
|
||||||
"@types/json5@^0.0.29":
|
"@types/json5@^0.0.29":
|
||||||
version "0.0.29"
|
version "0.0.29"
|
||||||
@ -2022,9 +2046,9 @@
|
|||||||
integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
|
integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
|
||||||
|
|
||||||
"@types/node@*":
|
"@types/node@*":
|
||||||
version "17.0.21"
|
version "17.0.23"
|
||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.21.tgz#864b987c0c68d07b4345845c3e63b75edd143644"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.23.tgz#3b41a6e643589ac6442bdbd7a4a3ded62f33f7da"
|
||||||
integrity sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==
|
integrity sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==
|
||||||
|
|
||||||
"@types/node@^12.20.19":
|
"@types/node@^12.20.19":
|
||||||
version "12.20.47"
|
version "12.20.47"
|
||||||
@ -2062,9 +2086,9 @@
|
|||||||
integrity sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==
|
integrity sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==
|
||||||
|
|
||||||
"@types/react-dom@^17.0.9":
|
"@types/react-dom@^17.0.9":
|
||||||
version "17.0.13"
|
version "17.0.14"
|
||||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.13.tgz#a3323b974ee4280070982b3112351bb1952a7809"
|
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.14.tgz#c8f917156b652ddf807711f5becbd2ab018dea9f"
|
||||||
integrity sha512-wEP+B8hzvy6ORDv1QBhcQia4j6ea4SFIBttHYpXKPFZRviBvknq0FRh3VrIxeXUmsPkwuXVZrVGG7KUVONmXCQ==
|
integrity sha512-H03xwEP1oXmSfl3iobtmQ/2dHF5aBHr8aUMwyGZya6OW45G+xtdzmq6HkncefiBt5JU8DVyaWl/nWZbjZCnzAQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/react" "*"
|
"@types/react" "*"
|
||||||
|
|
||||||
@ -2091,9 +2115,9 @@
|
|||||||
"@types/react" "*"
|
"@types/react" "*"
|
||||||
|
|
||||||
"@types/react@*", "@types/react@>=16.14.8", "@types/react@>=16.9.11", "@types/react@^17.0.15":
|
"@types/react@*", "@types/react@>=16.14.8", "@types/react@>=16.9.11", "@types/react@^17.0.15":
|
||||||
version "17.0.40"
|
version "17.0.43"
|
||||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.40.tgz#dc010cee6254d5239a138083f3799a16638e6bad"
|
resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.43.tgz#4adc142887dd4a2601ce730bc56c3436fdb07a55"
|
||||||
integrity sha512-UrXhD/JyLH+W70nNSufXqMZNuUD2cXHu6UjCllC6pmOQgBX4SGXOH8fjRka0O0Ee0HrFxapDD8Bwn81Kmiz6jQ==
|
integrity sha512-8Q+LNpdxf057brvPu1lMtC5Vn7J119xrP1aq4qiaefNioQUYANF/CYeK4NsKorSZyUGJ66g0IM+4bbjwx45o2A==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/prop-types" "*"
|
"@types/prop-types" "*"
|
||||||
"@types/scheduler" "*"
|
"@types/scheduler" "*"
|
||||||
@ -2171,7 +2195,7 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/yargs-parser" "*"
|
"@types/yargs-parser" "*"
|
||||||
|
|
||||||
"@typescript-eslint/eslint-plugin@^4.29.1", "@typescript-eslint/eslint-plugin@^4.5.0":
|
"@typescript-eslint/eslint-plugin@^4.5.0":
|
||||||
version "4.33.0"
|
version "4.33.0"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276"
|
||||||
integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==
|
integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==
|
||||||
@ -2185,6 +2209,21 @@
|
|||||||
semver "^7.3.5"
|
semver "^7.3.5"
|
||||||
tsutils "^3.21.0"
|
tsutils "^3.21.0"
|
||||||
|
|
||||||
|
"@typescript-eslint/eslint-plugin@^5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.17.0.tgz#704eb4e75039000531255672bf1c85ee85cf1d67"
|
||||||
|
integrity sha512-qVstvQilEd89HJk3qcbKt/zZrfBZ+9h2ynpAGlWjWiizA7m/MtLT9RoX6gjtpE500vfIg8jogAkDzdCxbsFASQ==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/scope-manager" "5.17.0"
|
||||||
|
"@typescript-eslint/type-utils" "5.17.0"
|
||||||
|
"@typescript-eslint/utils" "5.17.0"
|
||||||
|
debug "^4.3.2"
|
||||||
|
functional-red-black-tree "^1.0.1"
|
||||||
|
ignore "^5.1.8"
|
||||||
|
regexpp "^3.2.0"
|
||||||
|
semver "^7.3.5"
|
||||||
|
tsutils "^3.21.0"
|
||||||
|
|
||||||
"@typescript-eslint/experimental-utils@4.33.0", "@typescript-eslint/experimental-utils@^4.0.1":
|
"@typescript-eslint/experimental-utils@4.33.0", "@typescript-eslint/experimental-utils@^4.0.1":
|
||||||
version "4.33.0"
|
version "4.33.0"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd"
|
||||||
@ -2218,6 +2257,16 @@
|
|||||||
"@typescript-eslint/typescript-estree" "4.33.0"
|
"@typescript-eslint/typescript-estree" "4.33.0"
|
||||||
debug "^4.3.1"
|
debug "^4.3.1"
|
||||||
|
|
||||||
|
"@typescript-eslint/parser@^5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.17.0.tgz#7def77d5bcd8458d12d52909118cf3f0a45f89d5"
|
||||||
|
integrity sha512-aRzW9Jg5Rlj2t2/crzhA2f23SIYFlF9mchGudyP0uiD6SenIxzKoLjwzHbafgHn39dNV/TV7xwQkLfFTZlJ4ig==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/scope-manager" "5.17.0"
|
||||||
|
"@typescript-eslint/types" "5.17.0"
|
||||||
|
"@typescript-eslint/typescript-estree" "5.17.0"
|
||||||
|
debug "^4.3.2"
|
||||||
|
|
||||||
"@typescript-eslint/scope-manager@4.33.0":
|
"@typescript-eslint/scope-manager@4.33.0":
|
||||||
version "4.33.0"
|
version "4.33.0"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3"
|
||||||
@ -2226,6 +2275,23 @@
|
|||||||
"@typescript-eslint/types" "4.33.0"
|
"@typescript-eslint/types" "4.33.0"
|
||||||
"@typescript-eslint/visitor-keys" "4.33.0"
|
"@typescript-eslint/visitor-keys" "4.33.0"
|
||||||
|
|
||||||
|
"@typescript-eslint/scope-manager@5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.17.0.tgz#4cea7d0e0bc0e79eb60cad431c89120987c3f952"
|
||||||
|
integrity sha512-062iCYQF/doQ9T2WWfJohQKKN1zmmXVfAcS3xaiialiw8ZUGy05Em6QVNYJGO34/sU1a7a+90U3dUNfqUDHr3w==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/types" "5.17.0"
|
||||||
|
"@typescript-eslint/visitor-keys" "5.17.0"
|
||||||
|
|
||||||
|
"@typescript-eslint/type-utils@5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.17.0.tgz#1c4549d68c89877662224aabb29fbbebf5fc9672"
|
||||||
|
integrity sha512-3hU0RynUIlEuqMJA7dragb0/75gZmwNwFf/QJokWzPehTZousP/MNifVSgjxNcDCkM5HI2K22TjQWUmmHUINSg==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/utils" "5.17.0"
|
||||||
|
debug "^4.3.2"
|
||||||
|
tsutils "^3.21.0"
|
||||||
|
|
||||||
"@typescript-eslint/types@3.10.1":
|
"@typescript-eslint/types@3.10.1":
|
||||||
version "3.10.1"
|
version "3.10.1"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-3.10.1.tgz#1d7463fa7c32d8a23ab508a803ca2fe26e758727"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-3.10.1.tgz#1d7463fa7c32d8a23ab508a803ca2fe26e758727"
|
||||||
@ -2236,6 +2302,11 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72"
|
||||||
integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==
|
integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==
|
||||||
|
|
||||||
|
"@typescript-eslint/types@5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.17.0.tgz#861ec9e669ffa2aa9b873dd4d28d9b1ce26d216f"
|
||||||
|
integrity sha512-AgQ4rWzmCxOZLioFEjlzOI3Ch8giDWx8aUDxyNw9iOeCvD3GEYAB7dxWGQy4T/rPVe8iPmu73jPHuaSqcjKvxw==
|
||||||
|
|
||||||
"@typescript-eslint/typescript-estree@3.10.1":
|
"@typescript-eslint/typescript-estree@3.10.1":
|
||||||
version "3.10.1"
|
version "3.10.1"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-3.10.1.tgz#fd0061cc38add4fad45136d654408569f365b853"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-3.10.1.tgz#fd0061cc38add4fad45136d654408569f365b853"
|
||||||
@ -2263,6 +2334,31 @@
|
|||||||
semver "^7.3.5"
|
semver "^7.3.5"
|
||||||
tsutils "^3.21.0"
|
tsutils "^3.21.0"
|
||||||
|
|
||||||
|
"@typescript-eslint/typescript-estree@5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.17.0.tgz#a7cba7dfc8f9cc2ac78c18584e684507df4f2488"
|
||||||
|
integrity sha512-X1gtjEcmM7Je+qJRhq7ZAAaNXYhTgqMkR10euC4Si6PIjb+kwEQHSxGazXUQXFyqfEXdkGf6JijUu5R0uceQzg==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/types" "5.17.0"
|
||||||
|
"@typescript-eslint/visitor-keys" "5.17.0"
|
||||||
|
debug "^4.3.2"
|
||||||
|
globby "^11.0.4"
|
||||||
|
is-glob "^4.0.3"
|
||||||
|
semver "^7.3.5"
|
||||||
|
tsutils "^3.21.0"
|
||||||
|
|
||||||
|
"@typescript-eslint/utils@5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.17.0.tgz#549a9e1d491c6ccd3624bc3c1b098f5cfb45f306"
|
||||||
|
integrity sha512-DVvndq1QoxQH+hFv+MUQHrrWZ7gQ5KcJzyjhzcqB1Y2Xes1UQQkTRPUfRpqhS8mhTWsSb2+iyvDW1Lef5DD7vA==
|
||||||
|
dependencies:
|
||||||
|
"@types/json-schema" "^7.0.9"
|
||||||
|
"@typescript-eslint/scope-manager" "5.17.0"
|
||||||
|
"@typescript-eslint/types" "5.17.0"
|
||||||
|
"@typescript-eslint/typescript-estree" "5.17.0"
|
||||||
|
eslint-scope "^5.1.1"
|
||||||
|
eslint-utils "^3.0.0"
|
||||||
|
|
||||||
"@typescript-eslint/visitor-keys@3.10.1":
|
"@typescript-eslint/visitor-keys@3.10.1":
|
||||||
version "3.10.1"
|
version "3.10.1"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-3.10.1.tgz#cd4274773e3eb63b2e870ac602274487ecd1e931"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-3.10.1.tgz#cd4274773e3eb63b2e870ac602274487ecd1e931"
|
||||||
@ -2278,6 +2374,14 @@
|
|||||||
"@typescript-eslint/types" "4.33.0"
|
"@typescript-eslint/types" "4.33.0"
|
||||||
eslint-visitor-keys "^2.0.0"
|
eslint-visitor-keys "^2.0.0"
|
||||||
|
|
||||||
|
"@typescript-eslint/visitor-keys@5.17.0":
|
||||||
|
version "5.17.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.17.0.tgz#52daae45c61b0211b4c81b53a71841911e479128"
|
||||||
|
integrity sha512-6K/zlc4OfCagUu7Am/BD5k8PSWQOgh34Nrv9Rxe2tBzlJ7uOeJ/h7ugCGDCeEZHT6k2CJBhbk9IsbkPI0uvUkA==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/types" "5.17.0"
|
||||||
|
eslint-visitor-keys "^3.0.0"
|
||||||
|
|
||||||
"@webassemblyjs/ast@1.9.0":
|
"@webassemblyjs/ast@1.9.0":
|
||||||
version "1.9.0"
|
version "1.9.0"
|
||||||
resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964"
|
resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964"
|
||||||
@ -2484,7 +2588,7 @@ acorn@^7.1.0, acorn@^7.1.1, acorn@^7.4.0:
|
|||||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
|
resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
|
||||||
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
|
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
|
||||||
|
|
||||||
acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0:
|
acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.0:
|
||||||
version "8.7.0"
|
version "8.7.0"
|
||||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
|
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
|
||||||
integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
|
integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
|
||||||
@ -2538,9 +2642,9 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5:
|
|||||||
uri-js "^4.2.2"
|
uri-js "^4.2.2"
|
||||||
|
|
||||||
ajv@^8.0.1:
|
ajv@^8.0.1:
|
||||||
version "8.10.0"
|
version "8.11.0"
|
||||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.10.0.tgz#e573f719bd3af069017e3b66538ab968d040e54d"
|
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f"
|
||||||
integrity sha512-bzqAEZOjkrUMl2afH8dknrq5KEk2SrwdBROR+vH1EKVQTqaUbJVPdc/gEdggTMM0Se+s+Ja4ju4TlNcStKl2Hw==
|
integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==
|
||||||
dependencies:
|
dependencies:
|
||||||
fast-deep-equal "^3.1.1"
|
fast-deep-equal "^3.1.1"
|
||||||
json-schema-traverse "^1.0.0"
|
json-schema-traverse "^1.0.0"
|
||||||
@ -2659,6 +2763,11 @@ argparse@^1.0.7:
|
|||||||
dependencies:
|
dependencies:
|
||||||
sprintf-js "~1.0.2"
|
sprintf-js "~1.0.2"
|
||||||
|
|
||||||
|
argparse@^2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
|
||||||
|
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
|
||||||
|
|
||||||
aria-query@^4.2.2:
|
aria-query@^4.2.2:
|
||||||
version "4.2.2"
|
version "4.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b"
|
resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b"
|
||||||
@ -2697,7 +2806,7 @@ array-flatten@^2.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099"
|
resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099"
|
||||||
integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==
|
integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==
|
||||||
|
|
||||||
array-includes@^3.1.3, array-includes@^3.1.4:
|
array-includes@^3.1.4:
|
||||||
version "3.1.4"
|
version "3.1.4"
|
||||||
resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9"
|
resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9"
|
||||||
integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==
|
integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==
|
||||||
@ -3206,7 +3315,7 @@ braces@^2.3.1, braces@^2.3.2:
|
|||||||
split-string "^3.0.2"
|
split-string "^3.0.2"
|
||||||
to-regex "^3.0.1"
|
to-regex "^3.0.1"
|
||||||
|
|
||||||
braces@^3.0.1, braces@~3.0.2:
|
braces@^3.0.2, braces@~3.0.2:
|
||||||
version "3.0.2"
|
version "3.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
|
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
|
||||||
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
|
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
|
||||||
@ -3486,9 +3595,9 @@ caniuse-api@^3.0.0:
|
|||||||
lodash.uniq "^4.5.0"
|
lodash.uniq "^4.5.0"
|
||||||
|
|
||||||
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001317:
|
caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001125, caniuse-lite@^1.0.30001317:
|
||||||
version "1.0.30001317"
|
version "1.0.30001323"
|
||||||
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001317.tgz#0548fb28fd5bc259a70b8c1ffdbe598037666a1b"
|
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001323.tgz#a451ff80dec7033016843f532efda18f02eec011"
|
||||||
integrity sha512-xIZLh8gBm4dqNX0gkzrBeyI86J2eCjWzYAs40q88smG844YIrN4tVQl/RhquHvKEKImWWFIVh1Lxe5n1G/N+GQ==
|
integrity sha512-e4BF2RlCVELKx8+RmklSEIVub1TWrmdhvA5kEUueummz1XyySW0DVk+3x9HyhU9MuWTa2BhqLgEuEmUwASAdCA==
|
||||||
|
|
||||||
capture-exit@^2.0.0:
|
capture-exit@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
@ -4112,13 +4221,13 @@ css-select@^2.0.0:
|
|||||||
nth-check "^1.0.2"
|
nth-check "^1.0.2"
|
||||||
|
|
||||||
css-select@^4.1.3:
|
css-select@^4.1.3:
|
||||||
version "4.2.1"
|
version "4.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.2.1.tgz#9e665d6ae4c7f9d65dbe69d0316e3221fb274cdd"
|
resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b"
|
||||||
integrity sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==
|
integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
boolbase "^1.0.0"
|
boolbase "^1.0.0"
|
||||||
css-what "^5.1.0"
|
css-what "^6.0.1"
|
||||||
domhandler "^4.3.0"
|
domhandler "^4.3.1"
|
||||||
domutils "^2.8.0"
|
domutils "^2.8.0"
|
||||||
nth-check "^2.0.1"
|
nth-check "^2.0.1"
|
||||||
|
|
||||||
@ -4143,10 +4252,10 @@ css-what@^3.2.1:
|
|||||||
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4"
|
resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4"
|
||||||
integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==
|
integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==
|
||||||
|
|
||||||
css-what@^5.1.0:
|
css-what@^6.0.1:
|
||||||
version "5.1.0"
|
version "6.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe"
|
resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4"
|
||||||
integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==
|
integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==
|
||||||
|
|
||||||
css@^2.0.0:
|
css@^2.0.0:
|
||||||
version "2.2.4"
|
version "2.2.4"
|
||||||
@ -4311,10 +4420,10 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.
|
|||||||
dependencies:
|
dependencies:
|
||||||
ms "2.0.0"
|
ms "2.0.0"
|
||||||
|
|
||||||
debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1:
|
debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2:
|
||||||
version "4.3.3"
|
version "4.3.4"
|
||||||
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
|
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
|
||||||
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
|
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
ms "2.1.2"
|
ms "2.1.2"
|
||||||
|
|
||||||
@ -4590,10 +4699,10 @@ domexception@^2.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
webidl-conversions "^5.0.0"
|
webidl-conversions "^5.0.0"
|
||||||
|
|
||||||
domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.0:
|
domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1:
|
||||||
version "4.3.0"
|
version "4.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.0.tgz#16c658c626cf966967e306f966b431f77d4a5626"
|
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c"
|
||||||
integrity sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==
|
integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
domelementtype "^2.2.0"
|
domelementtype "^2.2.0"
|
||||||
|
|
||||||
@ -4678,9 +4787,9 @@ ejs@^2.6.1:
|
|||||||
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
|
integrity sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==
|
||||||
|
|
||||||
electron-to-chromium@^1.3.564, electron-to-chromium@^1.4.84:
|
electron-to-chromium@^1.3.564, electron-to-chromium@^1.4.84:
|
||||||
version "1.4.85"
|
version "1.4.103"
|
||||||
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.85.tgz#a3666ba42147026b9f34d4d8d4caf0740e80f751"
|
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz#abfe376a4d70fa1e1b4b353b95df5d6dfd05da3a"
|
||||||
integrity sha512-K9AsQ41WS2bjZUFpRWfvaS4RjEcRCamEkBJN1Z1TQILBfP1H8QnJ9ti0wiLiMv0sRjX3EHKzgs9jDnmGFx2jXg==
|
integrity sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg==
|
||||||
|
|
||||||
elliptic@^6.5.3:
|
elliptic@^6.5.3:
|
||||||
version "6.5.4"
|
version "6.5.4"
|
||||||
@ -4790,9 +4899,9 @@ error-stack-parser@^2.0.6:
|
|||||||
stackframe "^1.1.1"
|
stackframe "^1.1.1"
|
||||||
|
|
||||||
es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1:
|
es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1:
|
||||||
version "1.19.1"
|
version "1.19.2"
|
||||||
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3"
|
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.2.tgz#8f7b696d8f15b167ae3640b4060670f3d054143f"
|
||||||
integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==
|
integrity sha512-gfSBJoZdlL2xRiOCy0g8gLMryhoe1TlimjzU99L/31Z8QEGIhVQI+EWwt5lT+AuU9SnorVupXFqqOGqGfsyO6w==
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind "^1.0.2"
|
call-bind "^1.0.2"
|
||||||
es-to-primitive "^1.2.1"
|
es-to-primitive "^1.2.1"
|
||||||
@ -4800,15 +4909,15 @@ es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1:
|
|||||||
get-intrinsic "^1.1.1"
|
get-intrinsic "^1.1.1"
|
||||||
get-symbol-description "^1.0.0"
|
get-symbol-description "^1.0.0"
|
||||||
has "^1.0.3"
|
has "^1.0.3"
|
||||||
has-symbols "^1.0.2"
|
has-symbols "^1.0.3"
|
||||||
internal-slot "^1.0.3"
|
internal-slot "^1.0.3"
|
||||||
is-callable "^1.2.4"
|
is-callable "^1.2.4"
|
||||||
is-negative-zero "^2.0.1"
|
is-negative-zero "^2.0.2"
|
||||||
is-regex "^1.1.4"
|
is-regex "^1.1.4"
|
||||||
is-shared-array-buffer "^1.0.1"
|
is-shared-array-buffer "^1.0.1"
|
||||||
is-string "^1.0.7"
|
is-string "^1.0.7"
|
||||||
is-weakref "^1.0.1"
|
is-weakref "^1.0.2"
|
||||||
object-inspect "^1.11.0"
|
object-inspect "^1.12.0"
|
||||||
object-keys "^1.1.1"
|
object-keys "^1.1.1"
|
||||||
object.assign "^4.1.2"
|
object.assign "^4.1.2"
|
||||||
string.prototype.trimend "^1.0.4"
|
string.prototype.trimend "^1.0.4"
|
||||||
@ -4825,9 +4934,9 @@ es-to-primitive@^1.2.1:
|
|||||||
is-symbol "^1.0.2"
|
is-symbol "^1.0.2"
|
||||||
|
|
||||||
es5-ext@^0.10.35, es5-ext@^0.10.50:
|
es5-ext@^0.10.35, es5-ext@^0.10.50:
|
||||||
version "0.10.58"
|
version "0.10.59"
|
||||||
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.58.tgz#5b97d94236285fb87c8ffc782cf42eb0a25d2ae0"
|
resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.59.tgz#71038939730eb6f4f165f1421308fb60be363bc6"
|
||||||
integrity sha512-LHO+KBBaHGwjy32ibSaMY+ZzjpC4K4I5bPoijICMBL7gXEXfrEUrzssmNP+KigbQEp1dRUnGkry/vUnxOqptLQ==
|
integrity sha512-cOgyhW0tIJyQY1Kfw6Kr0viu9ZlUctVchRMZ7R0HiH3dxTSp5zJDLecwxUqPUrGKMsgBI1wd1FL+d9Jxfi4cLw==
|
||||||
dependencies:
|
dependencies:
|
||||||
es6-iterator "^2.0.3"
|
es6-iterator "^2.0.3"
|
||||||
es6-symbol "^3.1.3"
|
es6-symbol "^3.1.3"
|
||||||
@ -4918,7 +5027,7 @@ eslint-plugin-flowtype@^5.2.0:
|
|||||||
lodash "^4.17.15"
|
lodash "^4.17.15"
|
||||||
string-natural-compare "^3.0.1"
|
string-natural-compare "^3.0.1"
|
||||||
|
|
||||||
eslint-plugin-import@^2.22.1:
|
eslint-plugin-import@^2.22.1, eslint-plugin-import@^2.25.4:
|
||||||
version "2.25.4"
|
version "2.25.4"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz#322f3f916a4e9e991ac7af32032c25ce313209f1"
|
resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz#322f3f916a4e9e991ac7af32032c25ce313209f1"
|
||||||
integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA==
|
integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA==
|
||||||
@ -4944,7 +5053,7 @@ eslint-plugin-jest@^24.1.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@typescript-eslint/experimental-utils" "^4.0.1"
|
"@typescript-eslint/experimental-utils" "^4.0.1"
|
||||||
|
|
||||||
eslint-plugin-jsx-a11y@^6.3.1:
|
eslint-plugin-jsx-a11y@^6.3.1, eslint-plugin-jsx-a11y@^6.5.1:
|
||||||
version "6.5.1"
|
version "6.5.1"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz#cdbf2df901040ca140b6ec14715c988889c2a6d8"
|
resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.5.1.tgz#cdbf2df901040ca140b6ec14715c988889c2a6d8"
|
||||||
integrity sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g==
|
integrity sha512-sVCFKX9fllURnXT2JwLN5Qgo24Ug5NF6dxhkmxsMEUZhXRcGg+X3e1JbJ84YePQKBl5E0ZjAH5Q4rkdcGY99+g==
|
||||||
@ -4962,12 +5071,12 @@ eslint-plugin-jsx-a11y@^6.3.1:
|
|||||||
language-tags "^1.0.5"
|
language-tags "^1.0.5"
|
||||||
minimatch "^3.0.4"
|
minimatch "^3.0.4"
|
||||||
|
|
||||||
eslint-plugin-react-hooks@^4.2.0:
|
eslint-plugin-react-hooks@^4.2.0, eslint-plugin-react-hooks@^4.4.0:
|
||||||
version "4.3.0"
|
version "4.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.3.0.tgz#318dbf312e06fab1c835a4abef00121751ac1172"
|
resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.4.0.tgz#71c39e528764c848d8253e1aa2c7024ed505f6c4"
|
||||||
integrity sha512-XslZy0LnMn+84NEG9jSGR6eGqaZB3133L8xewQo3fQagbQuGt7a63gf+P1NGKZavEYEC3UXaWEAA/AqDkuN6xA==
|
integrity sha512-U3RVIfdzJaeKDQKEJbz5p3NW8/L80PCATJAfuojwbaEL+gBjfGdhUcGde+WGUW46Q5sr/NgxevsIiDtNXrvZaQ==
|
||||||
|
|
||||||
eslint-plugin-react@^7.21.5:
|
eslint-plugin-react@^7.21.5, eslint-plugin-react@^7.29.4:
|
||||||
version "7.29.4"
|
version "7.29.4"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.29.4.tgz#4717de5227f55f3801a5fd51a16a4fa22b5914d2"
|
resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.29.4.tgz#4717de5227f55f3801a5fd51a16a4fa22b5914d2"
|
||||||
integrity sha512-CVCXajliVh509PcZYRFyu/BoUEz452+jtQJq2b3Bae4v3xBUWPLCmtmBM+ZinG4MzwmxJgJ2M5rMqhqLVn7MtQ==
|
integrity sha512-CVCXajliVh509PcZYRFyu/BoUEz452+jtQJq2b3Bae4v3xBUWPLCmtmBM+ZinG4MzwmxJgJ2M5rMqhqLVn7MtQ==
|
||||||
@ -5010,6 +5119,14 @@ eslint-scope@^5.0.0, eslint-scope@^5.1.1:
|
|||||||
esrecurse "^4.3.0"
|
esrecurse "^4.3.0"
|
||||||
estraverse "^4.1.1"
|
estraverse "^4.1.1"
|
||||||
|
|
||||||
|
eslint-scope@^7.1.1:
|
||||||
|
version "7.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642"
|
||||||
|
integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==
|
||||||
|
dependencies:
|
||||||
|
esrecurse "^4.3.0"
|
||||||
|
estraverse "^5.2.0"
|
||||||
|
|
||||||
eslint-utils@^2.0.0, eslint-utils@^2.1.0:
|
eslint-utils@^2.0.0, eslint-utils@^2.1.0:
|
||||||
version "2.1.0"
|
version "2.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27"
|
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27"
|
||||||
@ -5034,6 +5151,11 @@ eslint-visitor-keys@^2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
|
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
|
||||||
integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
|
integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
|
||||||
|
|
||||||
|
eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0:
|
||||||
|
version "3.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
|
||||||
|
integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
|
||||||
|
|
||||||
eslint-webpack-plugin@^2.5.2:
|
eslint-webpack-plugin@^2.5.2:
|
||||||
version "2.6.0"
|
version "2.6.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-2.6.0.tgz#3bd4ada4e539cb1f6687d2f619073dbb509361cd"
|
resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-2.6.0.tgz#3bd4ada4e539cb1f6687d2f619073dbb509361cd"
|
||||||
@ -5092,6 +5214,47 @@ eslint@^7.11.0:
|
|||||||
text-table "^0.2.0"
|
text-table "^0.2.0"
|
||||||
v8-compile-cache "^2.0.3"
|
v8-compile-cache "^2.0.3"
|
||||||
|
|
||||||
|
eslint@^8.12.0:
|
||||||
|
version "8.12.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.12.0.tgz#c7a5bd1cfa09079aae64c9076c07eada66a46e8e"
|
||||||
|
integrity sha512-it1oBL9alZg1S8UycLm5YDMAkIhtH6FtAzuZs6YvoGVldWjbS08BkAdb/ymP9LlAyq8koANu32U7Ib/w+UNh8Q==
|
||||||
|
dependencies:
|
||||||
|
"@eslint/eslintrc" "^1.2.1"
|
||||||
|
"@humanwhocodes/config-array" "^0.9.2"
|
||||||
|
ajv "^6.10.0"
|
||||||
|
chalk "^4.0.0"
|
||||||
|
cross-spawn "^7.0.2"
|
||||||
|
debug "^4.3.2"
|
||||||
|
doctrine "^3.0.0"
|
||||||
|
escape-string-regexp "^4.0.0"
|
||||||
|
eslint-scope "^7.1.1"
|
||||||
|
eslint-utils "^3.0.0"
|
||||||
|
eslint-visitor-keys "^3.3.0"
|
||||||
|
espree "^9.3.1"
|
||||||
|
esquery "^1.4.0"
|
||||||
|
esutils "^2.0.2"
|
||||||
|
fast-deep-equal "^3.1.3"
|
||||||
|
file-entry-cache "^6.0.1"
|
||||||
|
functional-red-black-tree "^1.0.1"
|
||||||
|
glob-parent "^6.0.1"
|
||||||
|
globals "^13.6.0"
|
||||||
|
ignore "^5.2.0"
|
||||||
|
import-fresh "^3.0.0"
|
||||||
|
imurmurhash "^0.1.4"
|
||||||
|
is-glob "^4.0.0"
|
||||||
|
js-yaml "^4.1.0"
|
||||||
|
json-stable-stringify-without-jsonify "^1.0.1"
|
||||||
|
levn "^0.4.1"
|
||||||
|
lodash.merge "^4.6.2"
|
||||||
|
minimatch "^3.0.4"
|
||||||
|
natural-compare "^1.4.0"
|
||||||
|
optionator "^0.9.1"
|
||||||
|
regexpp "^3.2.0"
|
||||||
|
strip-ansi "^6.0.1"
|
||||||
|
strip-json-comments "^3.1.0"
|
||||||
|
text-table "^0.2.0"
|
||||||
|
v8-compile-cache "^2.0.3"
|
||||||
|
|
||||||
espree@^7.3.0, espree@^7.3.1:
|
espree@^7.3.0, espree@^7.3.1:
|
||||||
version "7.3.1"
|
version "7.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6"
|
resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6"
|
||||||
@ -5101,6 +5264,15 @@ espree@^7.3.0, espree@^7.3.1:
|
|||||||
acorn-jsx "^5.3.1"
|
acorn-jsx "^5.3.1"
|
||||||
eslint-visitor-keys "^1.3.0"
|
eslint-visitor-keys "^1.3.0"
|
||||||
|
|
||||||
|
espree@^9.3.1:
|
||||||
|
version "9.3.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd"
|
||||||
|
integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==
|
||||||
|
dependencies:
|
||||||
|
acorn "^8.7.0"
|
||||||
|
acorn-jsx "^5.3.1"
|
||||||
|
eslint-visitor-keys "^3.3.0"
|
||||||
|
|
||||||
esprima@^4.0.0, esprima@^4.0.1:
|
esprima@^4.0.0, esprima@^4.0.1:
|
||||||
version "4.0.1"
|
version "4.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
|
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
|
||||||
@ -5751,6 +5923,13 @@ glob-parent@^5.1.2, glob-parent@~5.1.2:
|
|||||||
dependencies:
|
dependencies:
|
||||||
is-glob "^4.0.1"
|
is-glob "^4.0.1"
|
||||||
|
|
||||||
|
glob-parent@^6.0.1:
|
||||||
|
version "6.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
|
||||||
|
integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
|
||||||
|
dependencies:
|
||||||
|
is-glob "^4.0.3"
|
||||||
|
|
||||||
glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
|
glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
|
||||||
version "7.2.0"
|
version "7.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
|
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
|
||||||
@ -5815,7 +5994,7 @@ globby@11.0.1:
|
|||||||
merge2 "^1.3.0"
|
merge2 "^1.3.0"
|
||||||
slash "^3.0.0"
|
slash "^3.0.0"
|
||||||
|
|
||||||
globby@^11.0.3:
|
globby@^11.0.3, globby@^11.0.4:
|
||||||
version "11.1.0"
|
version "11.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
|
resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
|
||||||
integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
|
integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
|
||||||
@ -5915,7 +6094,7 @@ has-flag@^4.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
|
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
|
||||||
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
|
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
|
||||||
|
|
||||||
has-symbols@^1.0.1, has-symbols@^1.0.2:
|
has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
|
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
|
||||||
integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
|
integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
|
||||||
@ -6577,7 +6756,7 @@ is-module@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
|
resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
|
||||||
integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=
|
integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=
|
||||||
|
|
||||||
is-negative-zero@^2.0.1:
|
is-negative-zero@^2.0.2:
|
||||||
version "2.0.2"
|
version "2.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"
|
resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150"
|
||||||
integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
|
integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
|
||||||
@ -6704,7 +6883,7 @@ is-typedarray@^1.0.0, is-typedarray@~1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
|
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
|
||||||
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
|
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
|
||||||
|
|
||||||
is-weakref@^1.0.1:
|
is-weakref@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
|
resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2"
|
||||||
integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
|
integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
|
||||||
@ -7274,6 +7453,13 @@ js-yaml@^3.13.1:
|
|||||||
argparse "^1.0.7"
|
argparse "^1.0.7"
|
||||||
esprima "^4.0.0"
|
esprima "^4.0.0"
|
||||||
|
|
||||||
|
js-yaml@^4.1.0:
|
||||||
|
version "4.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
|
||||||
|
integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
|
||||||
|
dependencies:
|
||||||
|
argparse "^2.0.1"
|
||||||
|
|
||||||
jsbn@~0.1.0:
|
jsbn@~0.1.0:
|
||||||
version "0.1.1"
|
version "0.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
|
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
|
||||||
@ -7365,11 +7551,9 @@ json5@^1.0.1:
|
|||||||
minimist "^1.2.0"
|
minimist "^1.2.0"
|
||||||
|
|
||||||
json5@^2.1.2:
|
json5@^2.1.2:
|
||||||
version "2.2.0"
|
version "2.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
|
resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
|
||||||
integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
|
integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==
|
||||||
dependencies:
|
|
||||||
minimist "^1.2.5"
|
|
||||||
|
|
||||||
jsonfile@^4.0.0:
|
jsonfile@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.0.0"
|
||||||
@ -7398,11 +7582,11 @@ jsprim@^1.2.2:
|
|||||||
verror "1.10.0"
|
verror "1.10.0"
|
||||||
|
|
||||||
"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.2.1:
|
"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.2.1:
|
||||||
version "3.2.1"
|
version "3.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b"
|
resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.2.tgz#6ab1e52c71dfc0c0707008a91729a9491fe9f76c"
|
||||||
integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA==
|
integrity sha512-HDAyJ4MNQBboGpUnHAVUNJs6X0lh058s6FuixsFGP7MgJYpD6Vasd6nzSG5iIfXu1zAYlHJ/zsOKNlrenTUBnw==
|
||||||
dependencies:
|
dependencies:
|
||||||
array-includes "^3.1.3"
|
array-includes "^3.1.4"
|
||||||
object.assign "^4.1.2"
|
object.assign "^4.1.2"
|
||||||
|
|
||||||
killable@^1.0.1:
|
killable@^1.0.1:
|
||||||
@ -7801,12 +7985,12 @@ micromatch@^3.1.10, micromatch@^3.1.4:
|
|||||||
to-regex "^3.0.2"
|
to-regex "^3.0.2"
|
||||||
|
|
||||||
micromatch@^4.0.2, micromatch@^4.0.4:
|
micromatch@^4.0.2, micromatch@^4.0.4:
|
||||||
version "4.0.4"
|
version "4.0.5"
|
||||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
|
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
|
||||||
integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==
|
integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
|
||||||
dependencies:
|
dependencies:
|
||||||
braces "^3.0.1"
|
braces "^3.0.2"
|
||||||
picomatch "^2.2.3"
|
picomatch "^2.3.1"
|
||||||
|
|
||||||
miller-rabin@^4.0.0:
|
miller-rabin@^4.0.0:
|
||||||
version "4.0.1"
|
version "4.0.1"
|
||||||
@ -7898,10 +8082,10 @@ minimist-options@4.1.0:
|
|||||||
is-plain-obj "^1.1.0"
|
is-plain-obj "^1.1.0"
|
||||||
kind-of "^6.0.3"
|
kind-of "^6.0.3"
|
||||||
|
|
||||||
minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5:
|
minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.6:
|
||||||
version "1.2.5"
|
version "1.2.6"
|
||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
|
||||||
integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
|
integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
|
||||||
|
|
||||||
minipass-collect@^1.0.2:
|
minipass-collect@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
@ -7964,11 +8148,11 @@ mixin-deep@^1.2.0:
|
|||||||
is-extendable "^1.0.1"
|
is-extendable "^1.0.1"
|
||||||
|
|
||||||
mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1:
|
mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5, mkdirp@~0.5.1:
|
||||||
version "0.5.5"
|
version "0.5.6"
|
||||||
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
|
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
|
||||||
integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
|
integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
|
||||||
dependencies:
|
dependencies:
|
||||||
minimist "^1.2.5"
|
minimist "^1.2.6"
|
||||||
|
|
||||||
mkdirp@^1.0.3, mkdirp@^1.0.4:
|
mkdirp@^1.0.3, mkdirp@^1.0.4:
|
||||||
version "1.0.4"
|
version "1.0.4"
|
||||||
@ -8021,9 +8205,9 @@ nan@^2.12.1, nan@^2.13.2:
|
|||||||
integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==
|
integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==
|
||||||
|
|
||||||
nanoid@^3.3.1:
|
nanoid@^3.3.1:
|
||||||
version "3.3.1"
|
version "3.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35"
|
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557"
|
||||||
integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==
|
integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==
|
||||||
|
|
||||||
nanomatch@^1.2.9:
|
nanomatch@^1.2.9:
|
||||||
version "1.2.13"
|
version "1.2.13"
|
||||||
@ -8311,7 +8495,7 @@ object-copy@^0.1.0:
|
|||||||
define-property "^0.2.5"
|
define-property "^0.2.5"
|
||||||
kind-of "^3.0.3"
|
kind-of "^3.0.3"
|
||||||
|
|
||||||
object-inspect@^1.11.0, object-inspect@^1.9.0:
|
object-inspect@^1.12.0, object-inspect@^1.9.0:
|
||||||
version "1.12.0"
|
version "1.12.0"
|
||||||
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
|
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
|
||||||
integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
|
integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
|
||||||
@ -8735,7 +8919,7 @@ picocolors@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
|
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
|
||||||
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
|
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
|
||||||
|
|
||||||
picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3:
|
picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.3.1:
|
||||||
version "2.3.1"
|
version "2.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
|
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
|
||||||
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
|
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
|
||||||
@ -9446,9 +9630,9 @@ postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4:
|
|||||||
uniq "^1.0.1"
|
uniq "^1.0.1"
|
||||||
|
|
||||||
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
|
postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2:
|
||||||
version "6.0.9"
|
version "6.0.10"
|
||||||
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz#ee71c3b9ff63d9cd130838876c13a2ec1a992b2f"
|
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d"
|
||||||
integrity sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==
|
integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==
|
||||||
dependencies:
|
dependencies:
|
||||||
cssesc "^3.0.0"
|
cssesc "^3.0.0"
|
||||||
util-deprecate "^1.0.2"
|
util-deprecate "^1.0.2"
|
||||||
@ -9508,9 +9692,9 @@ postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, po
|
|||||||
source-map "^0.6.1"
|
source-map "^0.6.1"
|
||||||
|
|
||||||
postcss@^8.1.0:
|
postcss@^8.1.0:
|
||||||
version "8.4.11"
|
version "8.4.12"
|
||||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.11.tgz#a06229f23820b4ddd46500a3e38dbca1598a8e8d"
|
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.12.tgz#1e7de78733b28970fa4743f7da6f3763648b1905"
|
||||||
integrity sha512-D+jFLnT0ilGfy4CVBGbC+XE68HkVpT8+CUkDrcSpgxmo4RKco2uaZ4kIoyVGEm+m8KN/+Vwgs8MtpNbQ3/ma9w==
|
integrity sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==
|
||||||
dependencies:
|
dependencies:
|
||||||
nanoid "^3.3.1"
|
nanoid "^3.3.1"
|
||||||
picocolors "^1.0.0"
|
picocolors "^1.0.0"
|
||||||
@ -10110,7 +10294,7 @@ regex-parser@^2.2.11:
|
|||||||
resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58"
|
resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58"
|
||||||
integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==
|
integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==
|
||||||
|
|
||||||
regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1:
|
regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.1:
|
||||||
version "1.4.1"
|
version "1.4.1"
|
||||||
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307"
|
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307"
|
||||||
integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==
|
integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ==
|
||||||
@ -10118,7 +10302,7 @@ regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1:
|
|||||||
call-bind "^1.0.2"
|
call-bind "^1.0.2"
|
||||||
define-properties "^1.1.3"
|
define-properties "^1.1.3"
|
||||||
|
|
||||||
regexpp@^3.1.0:
|
regexpp@^3.1.0, regexpp@^3.2.0:
|
||||||
version "3.2.0"
|
version "3.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
|
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
|
||||||
integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
|
integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
|
||||||
@ -11066,17 +11250,17 @@ string-width@^3.0.0, string-width@^3.1.0:
|
|||||||
strip-ansi "^5.1.0"
|
strip-ansi "^5.1.0"
|
||||||
|
|
||||||
string.prototype.matchall@^4.0.6:
|
string.prototype.matchall@^4.0.6:
|
||||||
version "4.0.6"
|
version "4.0.7"
|
||||||
resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa"
|
resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz#8e6ecb0d8a1fb1fda470d81acecb2dba057a481d"
|
||||||
integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg==
|
integrity sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind "^1.0.2"
|
call-bind "^1.0.2"
|
||||||
define-properties "^1.1.3"
|
define-properties "^1.1.3"
|
||||||
es-abstract "^1.19.1"
|
es-abstract "^1.19.1"
|
||||||
get-intrinsic "^1.1.1"
|
get-intrinsic "^1.1.1"
|
||||||
has-symbols "^1.0.2"
|
has-symbols "^1.0.3"
|
||||||
internal-slot "^1.0.3"
|
internal-slot "^1.0.3"
|
||||||
regexp.prototype.flags "^1.3.1"
|
regexp.prototype.flags "^1.4.1"
|
||||||
side-channel "^1.0.4"
|
side-channel "^1.0.4"
|
||||||
|
|
||||||
string.prototype.trimend@^1.0.4:
|
string.prototype.trimend@^1.0.4:
|
||||||
@ -11539,13 +11723,13 @@ ts-pnp@1.2.0, ts-pnp@^1.1.6:
|
|||||||
integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==
|
integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==
|
||||||
|
|
||||||
tsconfig-paths@^3.12.0:
|
tsconfig-paths@^3.12.0:
|
||||||
version "3.14.0"
|
version "3.14.1"
|
||||||
resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz#4fcc48f9ccea8826c41b9ca093479de7f5018976"
|
resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a"
|
||||||
integrity sha512-cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==
|
integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/json5" "^0.0.29"
|
"@types/json5" "^0.0.29"
|
||||||
json5 "^1.0.1"
|
json5 "^1.0.1"
|
||||||
minimist "^1.2.0"
|
minimist "^1.2.6"
|
||||||
strip-bom "^3.0.0"
|
strip-bom "^3.0.0"
|
||||||
|
|
||||||
tslib@^1.8.1:
|
tslib@^1.8.1:
|
||||||
@ -11662,9 +11846,9 @@ typedarray@^0.0.6:
|
|||||||
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
|
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
|
||||||
|
|
||||||
typescript@^4.3.5:
|
typescript@^4.3.5:
|
||||||
version "4.6.2"
|
version "4.6.3"
|
||||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.2.tgz#fe12d2727b708f4eef40f51598b3398baa9611d4"
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.6.3.tgz#eefeafa6afdd31d725584c67a0eaba80f6fc6c6c"
|
||||||
integrity sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==
|
integrity sha512-yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw==
|
||||||
|
|
||||||
unbox-primitive@^1.0.1:
|
unbox-primitive@^1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user