Add support for more than 9 cards, with multi-page
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
c9cd9f0da5
commit
8cd26c971a
@ -29,11 +29,16 @@
|
||||
}
|
||||
}
|
||||
|
||||
//let card_selected = 0;
|
||||
//$: selected_card = cards[card_selected];
|
||||
function chunk(arr) {
|
||||
let larr = [...arr], out = [];
|
||||
while(larr.length) {
|
||||
out = [...out, (larr.splice(0,MAX_CARDS))];
|
||||
};
|
||||
return out;
|
||||
}
|
||||
$: pages = chunk(cards);
|
||||
|
||||
let selector = cards[0].id;
|
||||
//$: selector = cards[card_selected].id;
|
||||
$: selected_card = cards.filter(x => x.id === selector)[0];
|
||||
$: selected_idx = get_idx_by_id(selector);
|
||||
|
||||
@ -45,11 +50,9 @@
|
||||
}
|
||||
|
||||
function add_card() {
|
||||
if (cards.length < MAX_CARDS) {
|
||||
cards = [...cards, {id: cards[cards.length-1].id+1, ...mhp}];
|
||||
selector = cards[cards.length-1].id;
|
||||
}
|
||||
}
|
||||
|
||||
function remove_card() {
|
||||
console.log(cards);
|
||||
@ -70,20 +73,22 @@
|
||||
<h1>PF2e card generator</h1>
|
||||
<CardInput bind:name={selected_card.name} bind:type={selected_card.type} tags={selected_card.tags} bind:attributes={selected_card.attributes} bind:description={selected_card.description} on:change_tags={change_tags} on:add_card={add_card} on:remove_card={remove_card}/>
|
||||
</section>
|
||||
{#each pages as page}
|
||||
<section class="cards">
|
||||
{#each cards as card, idx (card.id)}
|
||||
<div class="card">
|
||||
{#each page as card, idx (card.id)}
|
||||
<div class="card" style="break-after:avoid;">
|
||||
<Card {...card}/>
|
||||
<input class="card-selector" type="radio" bind:group={selector} value={card.id}/>
|
||||
</div>
|
||||
{/each}
|
||||
</section>
|
||||
{/each}
|
||||
</main>
|
||||
|
||||
<style>
|
||||
@media print {
|
||||
@page {
|
||||
margin: 0;
|
||||
margin: 7mm;
|
||||
}
|
||||
.controls {
|
||||
display: none;
|
||||
@ -95,6 +100,7 @@
|
||||
.cards {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
break-after: always;
|
||||
}
|
||||
h1 {
|
||||
text-transform: uppercase;
|
||||
|
Loading…
Reference in New Issue
Block a user