{"version":3,"file":"UserCardList.DNAHpMi_.js","sources":["../../../src/components/cards/UserCardList.tsx"],"sourcesContent":["import { CardList as CardList, CardListFilter, CardListLoader, CardListSearch, CardListSortDropdown, filterCards, parseUniqueSeasons, type Filters } from './CardList';\nimport { type SortInfo, getSortInfo, type CardType } from '@site/lib/client/utils';\nimport { Show, Suspense, createResource, createSignal, type Setter } from 'solid-js';\nimport { trpc } from '@site/lib/client/trpc';\nimport { CardListMenu } from './CardList';\nimport PlaceholderCardList from './PlaceholderCardList';\nimport { routes } from '@site/constants';\nimport Card from './Card';\n\nexport default function UserCardList(props: {\n\tinitialCards: CardType[];\n\tusername: string;\n\tssrFilters: Filters;\n\tinitialCursor?: string;\n\tpinnedCardId?: string;\n}) {\n\tconst [nextCursor, setNextCursor] = createSignal(props.initialCursor ?? null);\n\tconst [sortInfo, setSortInfo] = createSignal({\n\t\tby: 'rarity',\n\t\tisReversed: false,\n\t});\n\tconst [filters, setFilters] = createSignal(props.ssrFilters);\n\tconst [searchText, setSearchText] = createSignal('');\n\n\tconst [cardsResource, { mutate: mutateCards }] = createResource(\n\t\t() => ({\n\t\t\tsortInfo: sortInfo(),\n\t\t\tusername: props.username,\n\t\t\tsetNextCursor,\n\t\t\tpinnedCardId: props.pinnedCardId,\n\t\t\tsearchText: searchText(),\n\t\t}),\n\t\tqueryCards,\n\t\t{ initialValue: props.initialCards, ssrLoadFrom: 'initial' }\n\t);\n\n\tconst filteredCards = () => filterCards(cardsResource() ?? [], filters());\n\treturn (\n\t\t
\n\t\t\t\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetSortInfo(getSortInfo(sortType));\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t
\n\t\t\t
\n\t\t\t}>\n\t\t\t\t\n\t\t\t\t\t{(card, index) => (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t 5} scale=\"var(--card-scale)\" />\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\tqueryCards({\n\t\t\t\t\t\t\t\tusername: props.username,\n\t\t\t\t\t\t\t\tsortInfo: sortInfo(),\n\t\t\t\t\t\t\t\tcursor: nextCursor() || undefined,\n\t\t\t\t\t\t\t\tsetNextCursor,\n\t\t\t\t\t\t\t\tsearchText: '',\n\t\t\t\t\t\t\t}).then(result => mutateCards(cards => [...(cards ?? []), ...result]))\n\t\t\t\t\t\t}>\n\t\t\t\t\t\tLoad more cards\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
\n\t);\n}\n\nasync function queryCards(opts: {\n\tsortInfo: SortInfo;\n\tusername: string;\n\tcursor?: string;\n\tpinnedCardId?: string;\n\tsetNextCursor: Setter;\n\tsearchText: string;\n}): Promise> {\n\tif (opts.searchText.length > 0) {\n\t\tconst result = await trpc.userCards.search.query({\n\t\t\tsearchText: opts.searchText,\n\t\t\tusername: opts.username,\n\t\t\tsortType: opts.sortInfo.by,\n\t\t\tisReversed: opts.sortInfo.isReversed,\n\t\t\tignoredIds: opts.pinnedCardId ? [opts.pinnedCardId] : undefined,\n\t\t});\n\n\t\treturn result;\n\t}\n\n\tconst query =\n\t\topts.sortInfo.by === 'cardName'\n\t\t\t? trpc.userCards.sortedByName.query\n\t\t\t: opts.sortInfo.by === 'rarity'\n\t\t\t\t? trpc.userCards.sortedByRarity.query\n\t\t\t\t: trpc.userCards.sortedByOpenDate.query;\n\n\tconst result = await query({\n\t\tusername: opts.username,\n\t\tisReversed: opts.sortInfo.isReversed,\n\t\tcursor: opts.cursor,\n\t\tignoredIds: opts.pinnedCardId ? [opts.pinnedCardId] : undefined,\n\t});\n\n\topts.setNextCursor(result.cursor);\n\treturn result.data;\n}\n"],"names":["UserCardList","props","nextCursor","setNextCursor","createSignal","initialCursor","sortInfo","setSortInfo","by","isReversed","filters","setFilters","ssrFilters","searchText","setSearchText","cardsResource","mutate","mutateCards","createResource","username","pinnedCardId","queryCards","initialValue","initialCards","ssrLoadFrom","filteredCards","filterCards","_el$","_$getNextElement","_tmpl$2","_el$7","firstChild","_el$8","_co$3","_$getNextMarker","nextSibling","_el$9","_el$10","_co$4","_$createComponent","CardListMenu","children","CardListFilter","params","seasons","parseUniqueSeasons","latest","minterId","_el$2","_tmpl$","_el$3","_el$4","_co$","_el$5","_el$6","_co$2","CardListSearch","CardListSortDropdown","sortTypes","setSort","sortType","getSortInfo","Suspense","fallback","PlaceholderCardList","CardList","cards","card","index","_el$11","_tmpl$3","_$insert","Card","_$mergeProps","lazy","scale","_$effect","_$setAttribute","routes","USERS","instanceId","Show","when","_$memo","CardListLoader","load","cursor","undefined","then","result","opts","length","trpc","userCards","search","query","ignoredIds","sortedByName","sortedByRarity","sortedByOpenDate","data"],"mappings":"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"}