diff --git a/components/builds/BuildFilters.tsx b/components/builds/BuildFilters.tsx index d02163dfe..e6c889c70 100644 --- a/components/builds/BuildFilters.tsx +++ b/components/builds/BuildFilters.tsx @@ -112,12 +112,7 @@ const BuildFilters: React.FC = ({ filters, dispatch }) => { modeOptions[0] ); - const { - borderColor, - themeColorOpaque, - textColor, - gray - } = useMyTheme(); + const { borderColor, themeColorOpaque, textColor, gray } = useMyTheme(); const selectDefaultStyles = defaultStyles(); const selectStyles = { @@ -127,14 +122,14 @@ const BuildFilters: React.FC = ({ filters, dispatch }) => { padding: 0, borderRadius: 5, color: textColor, - fontSize: '0.875rem', + fontSize: "0.875rem", display: "flex", }), - option: (styles: any, {isFocused}: any) => { + option: (styles: any, { isFocused }: any) => { return { ...styles, backgroundColor: isFocused ? themeColorOpaque : undefined, - fontSize: '0.875rem', + fontSize: "0.875rem", color: textColor, }; }, @@ -147,7 +142,7 @@ const BuildFilters: React.FC = ({ filters, dispatch }) => { }), dropdownIndicator: (base: any) => ({ ...base, - padding: 4 + padding: 4, }), }; diff --git a/components/common/GearSelector.tsx b/components/common/GearSelector.tsx index 6f9773b72..5b40d0250 100644 --- a/components/common/GearSelector.tsx +++ b/components/common/GearSelector.tsx @@ -40,8 +40,10 @@ const Option = (props: any) => { const customFilterOption = (option: any, rawInput: string) => { const words = rawInput.split(" "); return words.reduce( - (acc, cur) => acc && (option.label.toLowerCase().includes(cur.toLowerCase()) - || option.data?.data?.toLowerCase() == rawInput.toLocaleLowerCase()), + (acc, cur) => + acc && + (option.label.toLowerCase().includes(cur.toLowerCase()) || + option.data?.data?.toLowerCase() == rawInput.toLocaleLowerCase()), true ); }; @@ -60,7 +62,7 @@ const GearSelector: React.FC = ({ options: category[slot].map((gear) => ({ value: gear, label: i18n._(gear), - data: i18n._(category.brand) + data: i18n._(category.brand), })), }))} value={value ? { value, label: i18n._(value) } : undefined} diff --git a/components/common/MultipleModeSelector.tsx b/components/common/MultipleModeSelector.tsx index 7e4bd1493..e0653ad2f 100644 --- a/components/common/MultipleModeSelector.tsx +++ b/components/common/MultipleModeSelector.tsx @@ -70,10 +70,7 @@ const MultipleModeSelector: React.FC = ({ hideMenuBeforeTyping, defaultValue, }) => { - const { - themeColorHex, - bgColor, - } = useMyTheme(); + const { themeColorHex, bgColor } = useMyTheme(); const [inputValue, setInputValue] = useState(""); const [selectedModes, setSelectedModes] = useState(defaultValue); const selectDefaultStyles = defaultStyles(); diff --git a/components/common/MySelect.tsx b/components/common/MySelect.tsx index ef9df6564..98101a919 100644 --- a/components/common/MySelect.tsx +++ b/components/common/MySelect.tsx @@ -64,12 +64,9 @@ const MySelect: React.FC = ({ menuIsOpen = false, hideMenuBeforeTyping, customFilterOption, - styles + styles, }) => { - const { - themeColorHex, - bgColor, - } = useMyTheme(); + const { themeColorHex, bgColor } = useMyTheme(); const [inputValue, setInputValue] = useState(""); const selectDefaultStyles = defaultStyles(); @@ -137,7 +134,7 @@ const MySelect: React.FC = ({ }, })} autoFocus={autoFocus} - styles={ styles ? styles : selectDefaultStyles} + styles={styles ? styles : selectDefaultStyles} /> ); }; diff --git a/components/play/ActiveMatchesTab.tsx b/components/play/ActiveMatchesTab.tsx index ba44bfe18..47b6f443a 100644 --- a/components/play/ActiveMatchesTab.tsx +++ b/components/play/ActiveMatchesTab.tsx @@ -34,9 +34,11 @@ const ActiveMatchesTab = () => { ({Intl.DateTimeFormat().resolvedOptions().timeZone}) Maplist - {(previousLadderDay.matches.find( - (match) => match.order === round - )!.maplist as any[]).map(({ stage, mode }, i) => { + {( + previousLadderDay.matches.find( + (match) => match.order === round + )!.maplist as any[] + ).map(({ stage, mode }, i) => { return ( = ({ onClose, build, weaponFromQuery }) => { const { handleSubmit, errors, register, watch, control } = useForm({ resolver: zodResolver(buildSchema), defaultValues: { - headAbilities: ([ + headAbilities: [ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", - ] as unknown) as Ability[], - clothingAbilities: ([ + ] as unknown as Ability[], + clothingAbilities: [ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", - ] as unknown) as Ability[], - shoesAbilities: ([ + ] as unknown as Ability[], + shoesAbilities: [ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", - ] as unknown) as Ability[], + ] as unknown as Ability[], weapon: weapons.includes(weaponFromQuery as any) ? weaponFromQuery : undefined, diff --git a/hooks/common.ts b/hooks/common.ts index 8afd27a9b..79a28b5dd 100644 --- a/hooks/common.ts +++ b/hooks/common.ts @@ -35,10 +35,9 @@ export const useUser = (): [PrismaUser | undefined | null, boolean] => { }; export const useActiveNavItem = () => { - const [navItem, setNavItem] = - useState( - undefined - ); + const [navItem, setNavItem] = useState< + undefined | { code: string; name: string; imageSrc?: string } + >(undefined); const router = useRouter(); const firstPath = router.pathname.split("/")[1]; diff --git a/hooks/plus.ts b/hooks/plus.ts index 7d234eb16..f83936d65 100644 --- a/hooks/plus.ts +++ b/hooks/plus.ts @@ -64,10 +64,9 @@ export default function usePlusVoting() { const toast = useToast(); const [user] = useUser(); - const { - data: votedUserScores, - isLoading: hasVotedIsLoading, - } = trpc.useQuery(["plus.votedUserScores"]); + const { data: votedUserScores, isLoading: hasVotedIsLoading } = trpc.useQuery( + ["plus.votedUserScores"] + ); const { data: usersForVoting, isLoading: isLoadingBallots } = trpc.useQuery([ "plus.usersForVoting", ]); @@ -88,18 +87,16 @@ export default function usePlusVoting() { }, } ); - const { - mutate: editVoteMutate, - isLoading: isLoadingEditVote, - } = trpc.useMutation("plus.editVote", { - onSuccess() { - toast(getToastOptions("Successfully edited vote", "success")); - utils.invalidateQuery(["plus.votedUserScores"]); - }, - onError(error) { - toast(getToastOptions(error.message, "error")); - }, - }); + const { mutate: editVoteMutate, isLoading: isLoadingEditVote } = + trpc.useMutation("plus.editVote", { + onSuccess() { + toast(getToastOptions("Successfully edited vote", "success")); + utils.invalidateQuery(["plus.votedUserScores"]); + }, + onError(error) { + toast(getToastOptions(error.message, "error")); + }, + }); const ownPlusStatus = statuses?.find((status) => status.user.id === user?.id); diff --git a/hooks/useAbilityEffects/index.ts b/hooks/useAbilityEffects/index.ts index cbc3531bb..522888f65 100644 --- a/hooks/useAbilityEffects/index.ts +++ b/hooks/useAbilityEffects/index.ts @@ -142,10 +142,8 @@ export default function useAbilityEffects({ }: useAbilityEffectsArgs) { const { i18n } = useLingui(); const [explanations, setExplanations] = useState([]); - const weaponData: Record< - Weapon | SubWeapon | SpecialWeapon, - any - > = weaponJson; + const weaponData: Record = + weaponJson; const weapon = untypedWeapon as Weapon; @@ -483,7 +481,8 @@ export default function useAbilityEffects({ const moveEffect = getEffect(highMidLow, amount); - const highShootKey = `MoveVelRt_Human_Shot${grade}_High` as keyof typeof RSU; + const highShootKey = + `MoveVelRt_Human_Shot${grade}_High` as keyof typeof RSU; const midShootKey = `MoveVelRt_Human_Shot${grade}_Mid` as keyof typeof RSU; const lowShootKey = `MoveVelRt_Human_Shot${grade}_Low` as keyof typeof RSU; const highShoot = RSU[highShootKey]; diff --git a/pages/builds/[[...slug]].tsx b/pages/builds/[[...slug]].tsx index 6bd9abebd..6f9be84df 100644 --- a/pages/builds/[[...slug]].tsx +++ b/pages/builds/[[...slug]].tsx @@ -15,14 +15,8 @@ import { RiBarChart2Fill, RiTShirtLine } from "react-icons/ri"; import MyHead from "../../components/common/MyHead"; const BuildsPage = () => { - const { - data, - stats, - isLoading, - state, - dispatch, - hiddenBuildCount, - } = useBuildsByWeapon(); + const { data, stats, isLoading, state, dispatch, hiddenBuildCount } = + useBuildsByWeapon(); const [user] = useUser(); const { secondaryBgColor, themeColorShade } = useMyTheme(); const [showStats, setShowStats] = useState(false); diff --git a/pages/plus/history/[[...slug]].tsx b/pages/plus/history/[[...slug]].tsx index 3eaa61664..06e78abe0 100644 --- a/pages/plus/history/[[...slug]].tsx +++ b/pages/plus/history/[[...slug]].tsx @@ -133,41 +133,41 @@ export const getStaticPaths: GetStaticPaths = async () => { }; }; -export const getStaticProps: GetStaticProps = async ({ - params, -}) => { - const getSlug = async () => { - const slug = Array.isArray(params!.slug) ? params!.slug : []; - if (slug.length === 3) { - return slug; - } +export const getStaticProps: GetStaticProps = + async ({ params }) => { + const getSlug = async () => { + const slug = Array.isArray(params!.slug) ? params!.slug : []; + if (slug.length === 3) { + return slug; + } - if (slug.length > 0) { - return []; - } + if (slug.length > 0) { + return []; + } - const mostRecent = await plusService.getMostRecentVotingWithResultsMonth(); + const mostRecent = + await plusService.getMostRecentVotingWithResultsMonth(); - return ["1", mostRecent.year, mostRecent.month]; + return ["1", mostRecent.year, mostRecent.month]; + }; + + const [tier, year, month] = (await getSlug()).map((param) => Number(param)); + if (!tier) return { notFound: true }; + + const [summaries, monthsWithData] = await Promise.all([ + plusService.getVotingSummariesByMonthAndTier({ + tier: tier as any, + year, + month, + }), + plusService.getDistinctSummaryMonths(), + ]); + + if (!summaries.length) return { notFound: true }; + + return { + props: { summaries, monthsWithData }, + }; }; - const [tier, year, month] = (await getSlug()).map((param) => Number(param)); - if (!tier) return { notFound: true }; - - const [summaries, monthsWithData] = await Promise.all([ - plusService.getVotingSummariesByMonthAndTier({ - tier: tier as any, - year, - month, - }), - plusService.getDistinctSummaryMonths(), - ]); - - if (!summaries.length) return { notFound: true }; - - return { - props: { summaries, monthsWithData }, - }; -}; - export default PlusVotingHistoryPage; diff --git a/pages/sr/leaderboards/index.tsx b/pages/sr/leaderboards/index.tsx index f2e16cb84..f59c64a7a 100644 --- a/pages/sr/leaderboards/index.tsx +++ b/pages/sr/leaderboards/index.tsx @@ -37,13 +37,8 @@ import { salmonRunCategoryToNatural } from "./new"; const SalmonRunLeaderboardsPage = ({}) => { const { i18n } = useLingui(); - const { - data, - isLoading, - pendingCount, - state, - dispatch, - } = useSalmonRunRecords(); + const { data, isLoading, pendingCount, state, dispatch } = + useSalmonRunRecords(); let placement = 1; @@ -223,7 +218,7 @@ const SalmonRunLeaderboardsPage = ({}) => { {new Date( @@ -234,7 +229,7 @@ const SalmonRunLeaderboardsPage = ({}) => { {new Date( diff --git a/pages/styles.css b/pages/styles.css index 7b8a96b70..222a9be3c 100644 --- a/pages/styles.css +++ b/pages/styles.css @@ -1,4 +1,4 @@ -@import '/nprogress.css'; +@import "/nprogress.css"; body { margin: 0; diff --git a/prisma/mocks/plus.ts b/prisma/mocks/plus.ts index a9ed52896..7005507fe 100644 --- a/prisma/mocks/plus.ts +++ b/prisma/mocks/plus.ts @@ -63,88 +63,90 @@ export const getPlusStatusesData = (): Prisma.PlusStatusCreateManyInput[] => { }); }; -export const getPlusSuggestionsData = (): Prisma.PlusSuggestionCreateManyInput[] => { - return [ - plusSuggestionFactory.build({ - description: "yooo so cracked", - tier: 2, - suggestedId: 10, - suggesterId: 1, - }), - ]; -}; +export const getPlusSuggestionsData = + (): Prisma.PlusSuggestionCreateManyInput[] => { + return [ + plusSuggestionFactory.build({ + description: "yooo so cracked", + tier: 2, + suggestedId: 10, + suggesterId: 1, + }), + ]; + }; -export const getPlusVotingSummaryData = (): Prisma.PlusVotingSummaryCreateManyInput[] => { - return [ - { - userId: 1, - countsEU: [0, 0, 0, 3], - countsNA: [0, 0, 2, 0], - }, - { - userId: 2, - countsEU: [0, 3, 0, 0], - countsNA: [2, 0, 0, 0], - }, - { - userId: 3, - countsEU: [1, 1, 1, 0], - countsNA: [0, 1, 1, 0], - }, - { - userId: 4, - countsEU: [0, 1, 2, 0], - countsNA: [2, 0, 0, 0], - }, - { - userId: 5, - countsEU: [1, 0, 1, 1], - countsNA: [0, 2, 0, 0], - }, - { - userId: 6, - wasVouched: true, - countsEU: [0, 3, 0, 0], - countsNA: [2, 0, 0, 0], - }, - { - userId: 7, - wasVouched: true, - countsEU: [0, 0, 0, 3], - countsNA: [0, 0, 2, 0], - }, - // +2 - { - userId: 6, - tier: 2, - countsEU: [0, 0, 2, 0], - countsNA: [0, 0, 0, 2], - }, - { - userId: 7, - tier: 2, - countsEU: [0, 1, 0, 1], - countsNA: [0, 1, 1, 0], - }, - { - userId: 8, - tier: 2, - countsEU: [0, 2, 0, 0], - countsNA: [0, 0, 2, 0], - }, - { - userId: 9, - tier: 2, - countsEU: [1, 1, 0, 0], - countsNA: [0, 2, 0, 0], - }, - { - userId: 10, - tier: 2, - countsEU: [0, 0, 2, 0], - countsNA: [0, 0, 0, 2], - }, - ].map((params) => { - return plusVotingSummaryFactory.build(params); - }); -}; +export const getPlusVotingSummaryData = + (): Prisma.PlusVotingSummaryCreateManyInput[] => { + return [ + { + userId: 1, + countsEU: [0, 0, 0, 3], + countsNA: [0, 0, 2, 0], + }, + { + userId: 2, + countsEU: [0, 3, 0, 0], + countsNA: [2, 0, 0, 0], + }, + { + userId: 3, + countsEU: [1, 1, 1, 0], + countsNA: [0, 1, 1, 0], + }, + { + userId: 4, + countsEU: [0, 1, 2, 0], + countsNA: [2, 0, 0, 0], + }, + { + userId: 5, + countsEU: [1, 0, 1, 1], + countsNA: [0, 2, 0, 0], + }, + { + userId: 6, + wasVouched: true, + countsEU: [0, 3, 0, 0], + countsNA: [2, 0, 0, 0], + }, + { + userId: 7, + wasVouched: true, + countsEU: [0, 0, 0, 3], + countsNA: [0, 0, 2, 0], + }, + // +2 + { + userId: 6, + tier: 2, + countsEU: [0, 0, 2, 0], + countsNA: [0, 0, 0, 2], + }, + { + userId: 7, + tier: 2, + countsEU: [0, 1, 0, 1], + countsNA: [0, 1, 1, 0], + }, + { + userId: 8, + tier: 2, + countsEU: [0, 2, 0, 0], + countsNA: [0, 0, 2, 0], + }, + { + userId: 9, + tier: 2, + countsEU: [1, 1, 0, 0], + countsNA: [0, 2, 0, 0], + }, + { + userId: 10, + tier: 2, + countsEU: [0, 0, 2, 0], + countsNA: [0, 0, 0, 2], + }, + ].map((params) => { + return plusVotingSummaryFactory.build(params); + }); + }; diff --git a/prisma/queries/getAllLadderRegisteredTeamsForMatches.ts b/prisma/queries/getAllLadderRegisteredTeamsForMatches.ts index 6e836222d..4079ad750 100644 --- a/prisma/queries/getAllLadderRegisteredTeamsForMatches.ts +++ b/prisma/queries/getAllLadderRegisteredTeamsForMatches.ts @@ -1,9 +1,8 @@ import { Prisma } from "@prisma/client"; import prisma from "prisma/client"; -export type GetAllLadderRegisteredTeamsForMatchesData = Prisma.PromiseReturnType< - typeof getAllLadderRegisteredTeamsForMatches ->; +export type GetAllLadderRegisteredTeamsForMatchesData = + Prisma.PromiseReturnType; export const getAllLadderRegisteredTeamsForMatches = async () => prisma.ladderRegisteredTeam.findMany({ diff --git a/prisma/queries/getPlayerWithPlacements.ts b/prisma/queries/getPlayerWithPlacements.ts index 41c967824..eeabfb6b0 100644 --- a/prisma/queries/getPlayerWithPlacements.ts +++ b/prisma/queries/getPlayerWithPlacements.ts @@ -11,7 +11,8 @@ export const getPlayerWithPlacements = async (switchAccountId: string) => { if (!player) return null; type PlayerWithPlacements = Prisma.PromiseReturnType; - type LeaguePlacementArray = NonNullable["leaguePlacements"]; + type LeaguePlacementArray = + NonNullable["leaguePlacements"]; return { ...player, diff --git a/utils/assets/icons.tsx b/utils/assets/icons.tsx index 340db0d79..54b5b525b 100644 --- a/utils/assets/icons.tsx +++ b/utils/assets/icons.tsx @@ -2,43 +2,37 @@ import { createIcon } from "@chakra-ui/icon"; export const DiscordIcon = createIcon({ displayName: "DiscordIcon", - d: - "M40,12c0,0-4.585-3.588-10-4l-0.488,0.976C34.408,10.174,36.654,11.891,39,14c-4.045-2.065-8.039-4-15-4s-10.955,1.935-15,4c2.346-2.109,5.018-4.015,9.488-5.024L18,8c-5.681,0.537-10,4-10,4s-5.121,7.425-6,22c5.162,5.953,13,6,13,6l1.639-2.185C13.857,36.848,10.715,35.121,8,32c3.238,2.45,8.125,5,16,5s12.762-2.55,16-5c-2.715,3.121-5.857,4.848-8.639,5.815L33,40c0,0,7.838-0.047,13-6C45.121,19.425,40,12,40,12z M17.5,30c-1.933,0-3.5-1.791-3.5-4c0-2.209,1.567-4,3.5-4s3.5,1.791,3.5,4C21,28.209,19.433,30,17.5,30z M30.5,30c-1.933,0-3.5-1.791-3.5-4c0-2.209,1.567-4,3.5-4s3.5,1.791,3.5,4C34,28.209,32.433,30,30.5,30z", + d: "M40,12c0,0-4.585-3.588-10-4l-0.488,0.976C34.408,10.174,36.654,11.891,39,14c-4.045-2.065-8.039-4-15-4s-10.955,1.935-15,4c2.346-2.109,5.018-4.015,9.488-5.024L18,8c-5.681,0.537-10,4-10,4s-5.121,7.425-6,22c5.162,5.953,13,6,13,6l1.639-2.185C13.857,36.848,10.715,35.121,8,32c3.238,2.45,8.125,5,16,5s12.762-2.55,16-5c-2.715,3.121-5.857,4.848-8.639,5.815L33,40c0,0,7.838-0.047,13-6C45.121,19.425,40,12,40,12z M17.5,30c-1.933,0-3.5-1.791-3.5-4c0-2.209,1.567-4,3.5-4s3.5,1.791,3.5,4C21,28.209,19.433,30,17.5,30z M30.5,30c-1.933,0-3.5-1.791-3.5-4c0-2.209,1.567-4,3.5-4s3.5,1.791,3.5,4C34,28.209,32.433,30,30.5,30z", viewBox: "0 0 48 48", }); export const TurfWarIcon = createIcon({ displayName: "TurfWarIcon", - d: - "M8 45l9 30 4-4 5-4 3 2c2 3 2 3 1 5l-1 6c1 4 1 4-7 13l-8 8 13 13 13 14 12-12 11-12 12 12 13 11 14-13 13-13-9-8c-8-9-8-9-8-13v-6c-2-2-2-3 1-5l2-3 5 5 5 4 1-4 8-30 7-27a676 676 0 0 0-61 16l4 5 5 5-6 5-5 5-6-5-5-6 4-4 4-5-4-1-30-8-26-7 7 30zm22-18l22 6-3 3-3 4 17 17c11 11 17 17 16 18l-15 8c-3 0-6-2-15-8l-10-5c-2 0-5-2-8-5l-5-5-4 3c-3 2-3 2-3 0A1874 1874 0 0 1 8 21l22 6zm90-4l-6 21-6 20c0 1-2 0-3-2-3-3-3-2-10 3-2 3-6 5-7 5-3 1-4 1-12-7l-9-9 8-7 7-7-3-4-3-3a1474 1474 0 0 1 44-10zM43 79c-2 5 6 12 11 9l4-3c1-1 1-1 1 1 2 4-4 9-10 9s-12-6-12-11c0-4 2-8 5-8 2 0 2 0 1 3zm46-1c2 3 1 9-1 12-1 3-7 5-11 5s-9-4-9-8c0-2 0-3 4 0 3 2 3 2 6 1 5-2 8-5 6-9-1-3-1-3 2-3l3 2zm-36 2c2 2 2 2 1 3-2 2-6 1-7-1-1-4 2-5 6-2zm27 1c0 3-3 4-6 3-1-2-1-2 1-4 3-3 5-2 5 1zM30 99l-5 6-2-2c-2-2-2-2 3-8l6-6 2 2c2 3 2 3-4 8zm36-8l2 5c1 2 3 3 5 3l11 9 7 8-2 2-2 3-13-14C62 95 61 94 61 91c1-2 4-3 5 0zm39 12l-2 2-6-5-5-6 1-2 2-3 6 6 6 5-2 3zm-61-4c2 0 1 1-5 7l-6 7-3-2-2-2 6-6c3-4 6-6 7-5l3 1zm49 4l6 6-2 2-3 2-6-7-6-6 2-2 3-1 6 6zm-34-3l-9 10c-10 10-10 10-12 9l-2-2 8-9 10-8h5z", + d: "M8 45l9 30 4-4 5-4 3 2c2 3 2 3 1 5l-1 6c1 4 1 4-7 13l-8 8 13 13 13 14 12-12 11-12 12 12 13 11 14-13 13-13-9-8c-8-9-8-9-8-13v-6c-2-2-2-3 1-5l2-3 5 5 5 4 1-4 8-30 7-27a676 676 0 0 0-61 16l4 5 5 5-6 5-5 5-6-5-5-6 4-4 4-5-4-1-30-8-26-7 7 30zm22-18l22 6-3 3-3 4 17 17c11 11 17 17 16 18l-15 8c-3 0-6-2-15-8l-10-5c-2 0-5-2-8-5l-5-5-4 3c-3 2-3 2-3 0A1874 1874 0 0 1 8 21l22 6zm90-4l-6 21-6 20c0 1-2 0-3-2-3-3-3-2-10 3-2 3-6 5-7 5-3 1-4 1-12-7l-9-9 8-7 7-7-3-4-3-3a1474 1474 0 0 1 44-10zM43 79c-2 5 6 12 11 9l4-3c1-1 1-1 1 1 2 4-4 9-10 9s-12-6-12-11c0-4 2-8 5-8 2 0 2 0 1 3zm46-1c2 3 1 9-1 12-1 3-7 5-11 5s-9-4-9-8c0-2 0-3 4 0 3 2 3 2 6 1 5-2 8-5 6-9-1-3-1-3 2-3l3 2zm-36 2c2 2 2 2 1 3-2 2-6 1-7-1-1-4 2-5 6-2zm27 1c0 3-3 4-6 3-1-2-1-2 1-4 3-3 5-2 5 1zM30 99l-5 6-2-2c-2-2-2-2 3-8l6-6 2 2c2 3 2 3-4 8zm36-8l2 5c1 2 3 3 5 3l11 9 7 8-2 2-2 3-13-14C62 95 61 94 61 91c1-2 4-3 5 0zm39 12l-2 2-6-5-5-6 1-2 2-3 6 6 6 5-2 3zm-61-4c2 0 1 1-5 7l-6 7-3-2-2-2 6-6c3-4 6-6 7-5l3 1zm49 4l6 6-2 2-3 2-6-7-6-6 2-2 3-1 6 6zm-34-3l-9 10c-10 10-10 10-12 9l-2-2 8-9 10-8h5z", viewBox: "0 0 128 128", }); export const SplatZonesIcon = createIcon({ displayName: "SplatZonesIcon", - d: - "M29.2 37.2C1.8 57 1.6 57.2 3.1 58c.7.5 4.1 1.4 7.6 2.1 3.5.7 6.3 1.5 6.3 1.8 0 .3-3.4 3.1-7.5 6.1-4.1 3-7.3 5.9-7.1 6.5.1.5 2 1.3 4.2 1.8 2.1.5 5.6 1.3 7.7 1.8l3.8 1-7.8 6C6 88.4 2.4 91.5 2.2 92c-.2.5 1.2 1.1 3 1.4 1.8.2 13.9 2.3 26.8 4.5s29.6 5.1 37.1 6.3l13.5 2.2 14.6-10.5c8.1-5.7 17.8-12.6 21.7-15.2 3.9-2.6 7.1-5.2 7.1-5.6 0-.5-3.8-1.7-8.5-2.7-4.7-1-8.4-2.2-8.3-2.5.2-.4 4.1-3.5 8.7-6.9 4.6-3.4 7.9-6.5 7.5-6.9-.5-.5-4.2-1.4-8.1-2-4-.7-7.3-1.6-7.3-1.9.1-.4 3.6-3.2 8-6.2s8-5.8 8-6.2c0-.9-3.9-1.6-43.5-8.3-18.1-3-33.8-5.7-34.8-5.9-1-.3-8.2 4.2-18.5 11.6zm51.4.3c15.3 2.5 27.9 4.7 28.1 4.9.5.5-11 8.6-12.2 8.6-.5 0-11.3-1.8-24-4-12.6-2.2-23.9-4-25-4-1.1 0-6.2 2.9-11.3 6.5-7.8 5.5-9.7 6.4-12.2 5.8-1.7-.3-3-.8-3-1.2.1-1 29.2-21.1 30.6-21.1.7 0 13.7 2 29 4.5zm-9.1 16C80.8 55.4 88.7 57 89 57c.2 0-1.9 1.6-4.7 3.5-2.9 1.9-6.3 3.5-7.5 3.5-2.9 0-34.9-5.7-35.5-6.3-.9-.9 10.2-8.6 11.7-8.2.8.2 9.1 2 18.5 4zm34.9 5.4c1.7.7 1.3 1.3-3.3 4.9-5.3 4.2-6.9 4.7-10.5 3.3-1.7-.7-1.1-1.3 4-4.9 6.2-4.3 6.8-4.5 9.8-3.3zm-70.5 6C37.8 66.1 28.6 73 25 73c-4.5 0-4.2-1.2 1.2-5.1 5.4-3.9 7.3-4.5 9.7-3zm33.4 5.5c9.8 1.9 18 3.6 18.3 3.9.2.2-1.6 2-4.1 3.9l-4.4 3.5-10.3-1.9c-10.5-1.9-19.6-3.5-25.6-4.4l-3.4-.5 5.3-4c2.9-2.1 5.5-3.9 5.8-3.9.3 0 8.6 1.5 18.4 3.4zm37.5 7.1c.2.2-2 2.1-4.9 4.3-4.7 3.6-5.5 3.9-8.1 3-3.3-1.2-3.4-1 2.9-5.4 3.5-2.3 5.5-3.1 7.3-2.7 1.4.3 2.6.7 2.8.8zm-59 6.1c5.7.8 11.1 1.8 12 2.3.9.4 7.7 1.6 15 2.6C82 89.6 88 90.7 88 91c0 .3-2.6 2.4-5.7 4.6l-5.8 4-9-1.8c-4.9-.9-14.5-2.6-21.2-3.8-6.7-1.1-15.4-2.7-19.3-3.6l-7.1-1.7 5.5-3.7c4.3-2.8 6.4-3.6 8.9-3.3 1.7.2 7.8 1.1 13.5 1.9z", + d: "M29.2 37.2C1.8 57 1.6 57.2 3.1 58c.7.5 4.1 1.4 7.6 2.1 3.5.7 6.3 1.5 6.3 1.8 0 .3-3.4 3.1-7.5 6.1-4.1 3-7.3 5.9-7.1 6.5.1.5 2 1.3 4.2 1.8 2.1.5 5.6 1.3 7.7 1.8l3.8 1-7.8 6C6 88.4 2.4 91.5 2.2 92c-.2.5 1.2 1.1 3 1.4 1.8.2 13.9 2.3 26.8 4.5s29.6 5.1 37.1 6.3l13.5 2.2 14.6-10.5c8.1-5.7 17.8-12.6 21.7-15.2 3.9-2.6 7.1-5.2 7.1-5.6 0-.5-3.8-1.7-8.5-2.7-4.7-1-8.4-2.2-8.3-2.5.2-.4 4.1-3.5 8.7-6.9 4.6-3.4 7.9-6.5 7.5-6.9-.5-.5-4.2-1.4-8.1-2-4-.7-7.3-1.6-7.3-1.9.1-.4 3.6-3.2 8-6.2s8-5.8 8-6.2c0-.9-3.9-1.6-43.5-8.3-18.1-3-33.8-5.7-34.8-5.9-1-.3-8.2 4.2-18.5 11.6zm51.4.3c15.3 2.5 27.9 4.7 28.1 4.9.5.5-11 8.6-12.2 8.6-.5 0-11.3-1.8-24-4-12.6-2.2-23.9-4-25-4-1.1 0-6.2 2.9-11.3 6.5-7.8 5.5-9.7 6.4-12.2 5.8-1.7-.3-3-.8-3-1.2.1-1 29.2-21.1 30.6-21.1.7 0 13.7 2 29 4.5zm-9.1 16C80.8 55.4 88.7 57 89 57c.2 0-1.9 1.6-4.7 3.5-2.9 1.9-6.3 3.5-7.5 3.5-2.9 0-34.9-5.7-35.5-6.3-.9-.9 10.2-8.6 11.7-8.2.8.2 9.1 2 18.5 4zm34.9 5.4c1.7.7 1.3 1.3-3.3 4.9-5.3 4.2-6.9 4.7-10.5 3.3-1.7-.7-1.1-1.3 4-4.9 6.2-4.3 6.8-4.5 9.8-3.3zm-70.5 6C37.8 66.1 28.6 73 25 73c-4.5 0-4.2-1.2 1.2-5.1 5.4-3.9 7.3-4.5 9.7-3zm33.4 5.5c9.8 1.9 18 3.6 18.3 3.9.2.2-1.6 2-4.1 3.9l-4.4 3.5-10.3-1.9c-10.5-1.9-19.6-3.5-25.6-4.4l-3.4-.5 5.3-4c2.9-2.1 5.5-3.9 5.8-3.9.3 0 8.6 1.5 18.4 3.4zm37.5 7.1c.2.2-2 2.1-4.9 4.3-4.7 3.6-5.5 3.9-8.1 3-3.3-1.2-3.4-1 2.9-5.4 3.5-2.3 5.5-3.1 7.3-2.7 1.4.3 2.6.7 2.8.8zm-59 6.1c5.7.8 11.1 1.8 12 2.3.9.4 7.7 1.6 15 2.6C82 89.6 88 90.7 88 91c0 .3-2.6 2.4-5.7 4.6l-5.8 4-9-1.8c-4.9-.9-14.5-2.6-21.2-3.8-6.7-1.1-15.4-2.7-19.3-3.6l-7.1-1.7 5.5-3.7c4.3-2.8 6.4-3.6 8.9-3.3 1.7.2 7.8 1.1 13.5 1.9z", viewBox: "0 0 128 128", }); export const TowerControlIcon = createIcon({ displayName: "TowerControlIcon", - d: - "M54 11.1C41.5 22 41 22.7 43.9 24.9c2 1.5 2.2 2.4 1.9 9.6l-.3 7.9-8.5 3.4c-4.7 1.8-14.2 5.4-21.2 7.9C3.7 58 3 58.5 3 61c0 2.3.6 2.9 4 3.9 2.2.6 5.7 2.6 7.6 4.3l3.6 3.2-.3 17.9-.4 17.9 25.2 9.4 25.1 9.3 22.1-10.1 22.1-10.2.1-18c.1-10 .1-18.5 0-18.9-.2-1.1 5.3-5.7 9.8-8.3 2.5-1.5 3.6-2.8 3.6-4.5 0-2.2-1-2.6-19-7-10.4-2.6-20.2-5-21.7-5.3L82 44v-9.4c0-8.5.2-9.4 2-9.9 4.1-1.1 3.6-3.8-1.6-8.5C73.8 8.5 65.9 2 65.2 2c-.4 0-5.5 4.1-11.2 9.1z", + d: "M54 11.1C41.5 22 41 22.7 43.9 24.9c2 1.5 2.2 2.4 1.9 9.6l-.3 7.9-8.5 3.4c-4.7 1.8-14.2 5.4-21.2 7.9C3.7 58 3 58.5 3 61c0 2.3.6 2.9 4 3.9 2.2.6 5.7 2.6 7.6 4.3l3.6 3.2-.3 17.9-.4 17.9 25.2 9.4 25.1 9.3 22.1-10.1 22.1-10.2.1-18c.1-10 .1-18.5 0-18.9-.2-1.1 5.3-5.7 9.8-8.3 2.5-1.5 3.6-2.8 3.6-4.5 0-2.2-1-2.6-19-7-10.4-2.6-20.2-5-21.7-5.3L82 44v-9.4c0-8.5.2-9.4 2-9.9 4.1-1.1 3.6-3.8-1.6-8.5C73.8 8.5 65.9 2 65.2 2c-.4 0-5.5 4.1-11.2 9.1z", viewBox: "0 0 128 128", }); export const RainmakerIcon = createIcon({ displayName: "RainmakerIcon", - d: - "M62.8 14.9c-6.7 2.2-13.3 10.3-12.6 15.4.3 1.9 1.1 2.3 6.8 2.8 14.9 1.4 22.7 8.7 20 18.7-1.5 5.7-3.2 6.9-6.7 4.4-4.1-2.9-9.3-4.9-14.9-5.7-2.7-.3-6-1.2-7.4-2-2.1-1.1-2.4-1.9-2.1-5.9.2-3.2-.2-4.8-1.1-5.1-1.7-.7-10.2 3-20 8.5-6.5 3.7-7.3 4-10.3 2.9-4.5-1.7-10.5.5-12.3 4.5-1.2 2.3-1.2 3.4.1 7.2.8 2.4 1 4.7.6 5-1.8 1.1-.9 6.5 1.6 8.9C5.8 75.9 7.4 77 8 77c.5 0 1 1.2 1 2.6 0 4.1 2.1 10.2 4.1 12 1.7 1.5 1.9 1.4 3.9-1.7 1.1-1.9 2.3-5.1 2.6-7.2.5-2.9 1.1-3.7 2.8-3.7 3 0 4.2 1 5.9 5.3 2.9 6.9 6.3 5.5 9.7-4 1-2.9 1.9-4 2.7-3.5 1 .6 1 1.7.2 4.7-.6 2.2-.9 6.5-.7 9.6.3 4.4.1 5.6-.9 5.2-1.9-.7-4.1 1.4-4.8 4.7-.9 4-3.5 2.8-3.5-1.5 0-1.8-.7-3.8-1.5-4.5-1.2-1-2.2-.4-6 3.6-6 6.5-6 11-.1 14.2 2.5 1.4 5.5 1.7 15.6 1.5 20.8-.2 34.3-5.1 46.8-16.7 5.3-4.9 6.5-6.8 8-11.7C95 81.8 96 80 97.2 80c.9 0 7.5.7 14.7 1.5 7.3.9 13.6 1.3 14.1 1 1.3-.8-1.4-10.8-4.3-15.8-3-5-7.7-9.5-13.9-13-6.8-3.9-8.6-4.2-11.3-1.7l-2.3 2.2-.7-4.5c-.9-5.8 1.4-10.8 6.8-15.1 3.2-2.6 4.9-3.1 10.8-3.4 6.3-.4 6.9-.6 6.9-2.6 0-3.7-4.4-10-8.5-12.3-5.3-3-14-3.1-19.5-.3-2.1 1.1-4.1 2.4-4.5 3-.4.6-2.6-.1-5.6-1.7-5.4-2.8-12.7-3.8-17.1-2.4z", + d: "M62.8 14.9c-6.7 2.2-13.3 10.3-12.6 15.4.3 1.9 1.1 2.3 6.8 2.8 14.9 1.4 22.7 8.7 20 18.7-1.5 5.7-3.2 6.9-6.7 4.4-4.1-2.9-9.3-4.9-14.9-5.7-2.7-.3-6-1.2-7.4-2-2.1-1.1-2.4-1.9-2.1-5.9.2-3.2-.2-4.8-1.1-5.1-1.7-.7-10.2 3-20 8.5-6.5 3.7-7.3 4-10.3 2.9-4.5-1.7-10.5.5-12.3 4.5-1.2 2.3-1.2 3.4.1 7.2.8 2.4 1 4.7.6 5-1.8 1.1-.9 6.5 1.6 8.9C5.8 75.9 7.4 77 8 77c.5 0 1 1.2 1 2.6 0 4.1 2.1 10.2 4.1 12 1.7 1.5 1.9 1.4 3.9-1.7 1.1-1.9 2.3-5.1 2.6-7.2.5-2.9 1.1-3.7 2.8-3.7 3 0 4.2 1 5.9 5.3 2.9 6.9 6.3 5.5 9.7-4 1-2.9 1.9-4 2.7-3.5 1 .6 1 1.7.2 4.7-.6 2.2-.9 6.5-.7 9.6.3 4.4.1 5.6-.9 5.2-1.9-.7-4.1 1.4-4.8 4.7-.9 4-3.5 2.8-3.5-1.5 0-1.8-.7-3.8-1.5-4.5-1.2-1-2.2-.4-6 3.6-6 6.5-6 11-.1 14.2 2.5 1.4 5.5 1.7 15.6 1.5 20.8-.2 34.3-5.1 46.8-16.7 5.3-4.9 6.5-6.8 8-11.7C95 81.8 96 80 97.2 80c.9 0 7.5.7 14.7 1.5 7.3.9 13.6 1.3 14.1 1 1.3-.8-1.4-10.8-4.3-15.8-3-5-7.7-9.5-13.9-13-6.8-3.9-8.6-4.2-11.3-1.7l-2.3 2.2-.7-4.5c-.9-5.8 1.4-10.8 6.8-15.1 3.2-2.6 4.9-3.1 10.8-3.4 6.3-.4 6.9-.6 6.9-2.6 0-3.7-4.4-10-8.5-12.3-5.3-3-14-3.1-19.5-.3-2.1 1.1-4.1 2.4-4.5 3-.4.6-2.6-.1-5.6-1.7-5.4-2.8-12.7-3.8-17.1-2.4z", viewBox: "0 0 128 128", }); export const ClamBlitzIcon = createIcon({ displayName: "ClamBlitzIcon", - d: - "M49.7 22c-19.5 3.1-32.6 11.3-39.6 24.8-2.3 4.3-3 12.7-1.7 18.5C10.6 74.5 14.7 79 36.1 95c27.2 20.4 33.3 22.5 44.5 15.1 3.2-2.1 7.3-5.3 8.9-7.1 1.7-1.7 6.8-6.4 11.5-10.3 19.7-16.4 22-19.6 22-30.4-.1-11.4-6.5-21.5-19.1-29.8-11.1-7.4-21.3-10.5-36.2-11-6.7-.2-14.8 0-18 .5z", + d: "M49.7 22c-19.5 3.1-32.6 11.3-39.6 24.8-2.3 4.3-3 12.7-1.7 18.5C10.6 74.5 14.7 79 36.1 95c27.2 20.4 33.3 22.5 44.5 15.1 3.2-2.1 7.3-5.3 8.9-7.1 1.7-1.7 6.8-6.4 11.5-10.3 19.7-16.4 22-19.6 22-30.4-.1-11.4-6.5-21.5-19.1-29.8-11.1-7.4-21.3-10.5-36.2-11-6.7-.2-14.8 0-18 .5z", viewBox: "0 0 128 128", }); diff --git a/utils/lists/abilityPoints.ts b/utils/lists/abilityPoints.ts index b903d1a8e..3dc4add22 100644 --- a/utils/lists/abilityPoints.ts +++ b/utils/lists/abilityPoints.ts @@ -1,51 +1,5 @@ export const abilityPoints = [ - 0, - 3, - 6, - 9, - 10, - 12, - 13, - 15, - 16, - 18, - 19, - 20, - 21, - 22, - 23, - 24, - 25, - 26, - 27, - 28, - 29, - 30, - 31, - 32, - 33, - 34, - 35, - 36, - 37, - 38, - 39, - 40, - 41, - 42, - 43, - 44, - 45, - 46, - 47, - 48, - 49, - 50, - 51, - 52, - 53, - 54, - 55, - 56, - 57, + 0, 3, 6, 9, 10, 12, 13, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, ]; diff --git a/utils/lists/subSpecialWeaponMarkdownCodes.ts b/utils/lists/subSpecialWeaponMarkdownCodes.ts index 50dbe24f2..94002f21c 100644 --- a/utils/lists/subSpecialWeaponMarkdownCodes.ts +++ b/utils/lists/subSpecialWeaponMarkdownCodes.ts @@ -1,31 +1,31 @@ export const subSpecialWeaponMarkdownCodes = { - "curling_bomb": "Wsb_Bomb_Curling", - "fizzy_bomb": "Wsb_Bomb_Piyo", - "burst_bomb": "Wsb_Bomb_Quick", - "autobomb": "Wsb_Bomb_Robo", - "splat_bomb": "Wsb_Bomb_Splash", - "suction_bomb": "Wsb_Bomb_Suction", - "torpedo": "Wsb_Bomb_Tako", - "squid_beacon": "Wsb_Flag", - "point_sensor": "Wsb_PointSensor", - "splash_wall": "Wsb_Shield", - "toxic_mist": "Wsb_PoisonFog", - "sprinkler": "Wsb_Sprinkler", - "ink_mine": "Wsb_TimerTrap", + curling_bomb: "Wsb_Bomb_Curling", + fizzy_bomb: "Wsb_Bomb_Piyo", + burst_bomb: "Wsb_Bomb_Quick", + autobomb: "Wsb_Bomb_Robo", + splat_bomb: "Wsb_Bomb_Splash", + suction_bomb: "Wsb_Bomb_Suction", + torpedo: "Wsb_Bomb_Tako", + squid_beacon: "Wsb_Flag", + point_sensor: "Wsb_PointSensor", + splash_wall: "Wsb_Shield", + toxic_mist: "Wsb_PoisonFog", + sprinkler: "Wsb_Sprinkler", + ink_mine: "Wsb_TimerTrap", - "baller": "Wsp_AquaBall", - "inkjet": "Wsp_Jetpack", - "launcher_curling": "Wsp_LauncherCurling", - "launcher_burst": "Wsp_LauncherQuick", - "launcher_auto": "Wsp_LauncherRobo", - "launcher_splat": "Wsp_LauncherSplash", - "launcher_suction": "Wsp_LauncherSuction", - "ink_storm": "Wsp_RainCloud", - "ink_armor": "Wsp_SuperArmor", - "booyah_bomb": "Wsp_SuperBall", - "bubble_blower": "Wsp_SuperBubble", - "splashdown": "Wsp_SuperLanding", - "tenta_missiles": "Wsp_SuperMissile", - "ultra_stamp": "Wsp_SuperStamp", - "sting_ray": "Wsp_WaterCutter", -}; \ No newline at end of file + baller: "Wsp_AquaBall", + inkjet: "Wsp_Jetpack", + launcher_curling: "Wsp_LauncherCurling", + launcher_burst: "Wsp_LauncherQuick", + launcher_auto: "Wsp_LauncherRobo", + launcher_splat: "Wsp_LauncherSplash", + launcher_suction: "Wsp_LauncherSuction", + ink_storm: "Wsp_RainCloud", + ink_armor: "Wsp_SuperArmor", + booyah_bomb: "Wsp_SuperBall", + bubble_blower: "Wsp_SuperBubble", + splashdown: "Wsp_SuperLanding", + tenta_missiles: "Wsp_SuperMissile", + ultra_stamp: "Wsp_SuperStamp", + sting_ray: "Wsp_WaterCutter", +}; diff --git a/utils/selectStyles.ts b/utils/selectStyles.ts index 73430da56..899e1625b 100644 --- a/utils/selectStyles.ts +++ b/utils/selectStyles.ts @@ -1,13 +1,8 @@ import { useMyTheme } from "../hooks/common"; - const defaultStyles = () => { - const { - borderColor, - themeColorHex, - themeColorOpaque, - textColor, - } = useMyTheme(); + const { borderColor, themeColorHex, themeColorOpaque, textColor } = + useMyTheme(); return { singleValue: (base: any) => ({ @@ -26,14 +21,14 @@ const defaultStyles = () => { background: themeColorHex, color: "black", }), - option: (styles: any, {isFocused}: any) => { + option: (styles: any, { isFocused }: any) => { return { ...styles, backgroundColor: isFocused ? themeColorOpaque : undefined, color: textColor, }; }, - menu: (styles: any) => ({...styles, zIndex: 999}), + menu: (styles: any) => ({ ...styles, zIndex: 999 }), control: (base: any) => ({ ...base, borderColor, @@ -43,4 +38,4 @@ const defaultStyles = () => { }; }; -export default defaultStyles; \ No newline at end of file +export default defaultStyles; diff --git a/utils/validators/salmonRunRecord.ts b/utils/validators/salmonRunRecord.ts index e8a2d17ba..fc6515550 100644 --- a/utils/validators/salmonRunRecord.ts +++ b/utils/validators/salmonRunRecord.ts @@ -1,7 +1,8 @@ import * as z from "zod"; // https://stackoverflow.com/a/3809435 -const urlRegex = /^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$/; +const urlRegex = + /^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$/; export const salmonRunRecordSchema = z.object({ rotationId: z.number(), // check on db level