transfer_data / kanban /index.html
Okoge-keys's picture
Upload 3 files
bebebd9 verified
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>&#x30C8;&#x30E8;&#x30BF;&#x5F0F;&#x30AB;&#x30F3;&#x30D0;&#x30F3;</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<div class="app-shell">
<header class="app-header">
<div class="brand">
<span class="brand-mark">&#x25EF;</span>
<div>
<h1>TOYOTA KANBAN</h1>
<p class="subtitle">&#x73FE;&#x5834;&#x306E;&#x8996;&#x70B9;&#x3067;&#x78E8;&#x304D;&#x4E0A;&#x3052;&#x305F;&#x30BF;&#x30B9;&#x30AF;&#x30D5;&#x30ED;&#x30FC;</p>
</div>
</div>
<div class="primary-controls">
<button class="btn primary" id="btn-new-task">&#x65B0;&#x898F;&#x30BF;&#x30B9;&#x30AF;</button>
<button class="btn ghost" id="btn-toggle-group">&#x89AA;&#x5B50;&#x30D3;&#x30E5;&#x30FC;</button>
<button class="btn ghost" id="btn-toggle-selection">&#x4E00;&#x62EC;&#x64CD;&#x4F5C;</button>
</div>
</header>
<section class="filters">
<div class="search-box">
<label for="search-input">&#x691C;&#x7D22;</label>
<input id="search-input" type="search" placeholder="&#x30AD;&#x30FC;&#x30EF;&#x30FC;&#x30C9;&#x3067;&#x691C;&#x7D22; (&#x30BF;&#x30A4;&#x30C8;&#x30EB;&#x30FB;&#x62C5;&#x5F53;&#x30FB;&#x5185;&#x5BB9;&#x30FB;&#x30BF;&#x30B0;&#x30FB;&#x30EA;&#x30F3;&#x30AF;)">
</div>
<div class="date-filter">
<label>&#x671F;&#x9650;</label>
<div class="date-inputs">
<input id="date-from" type="date">
<span>&#x301C;</span>
<input id="date-to" type="date">
</div>
</div>
<div class="parent-filter">
<label for="parent-filter-select">&#x89AA;&#x30BF;&#x30B9;&#x30AF;</label>
<input id="parent-filter-search" type="search" placeholder="&#x89AA;&#x30BF;&#x30B9;&#x30AF;&#x540D;&#x3067;&#x7D5E;&#x308A;&#x8FBC;&#x307F;">
<select id="parent-filter-select">
<option value="">&#x3059;&#x3079;&#x3066;</option>
</select>
</div>
<div class="tag-filter-row">
<span class="tag-filter-label">&#x30BF;&#x30B0;</span>
<div id="tag-toggle-container" class="tag-toggle-container"></div>
</div>
<div class="filter-actions">
<button class="btn small ghost" id="filter-reset-button">&#x30D5;&#x30A3;&#x30EB;&#x30BF;&#x30FC;&#x89E3;&#x9664;</button>
</div>
</section>
<section class="selection-toolbar" id="selection-toolbar">
<div class="selection-summary">
<span id="selection-count">0&#x4EF6;&#x9078;&#x629E;&#x4E2D;</span>
<button class="btn subtle" id="btn-select-all">&#x5168;&#x9078;&#x629E;</button>
<button class="btn subtle" id="btn-clear-selection">&#x9078;&#x629E;&#x89E3;&#x9664;</button>
</div>
<div class="selection-actions">
<div class="selection-status">
<span>&#x30B9;&#x30C6;&#x30FC;&#x30BF;&#x30B9;&#x5909;&#x66F4;:</span>
<div id="bulk-status-buttons" class="status-button-group"></div>
</div>
<button class="btn danger" id="btn-bulk-delete">&#x9078;&#x629E;&#x3092;&#x524A;&#x9664;</button>
</div>
</section>
<section class="status-dock" id="status-dock"></section>
<main class="board" id="board"></main>
<section class="parent-view" id="parent-view">
<header>
<h2>&#x89AA;&#x5B50;&#x30D3;&#x30E5;&#x30FC;</h2>
<div class="parent-view-meta">
<p>&#x89AA;&#x30BF;&#x30B9;&#x30AF;&#x3054;&#x3068;&#x306E;&#x9032;&#x6357;&#x3092;&#x4FEF;&#x77B0;&#x3057;&#x3001;&#x30EF;&#x30F3;&#x30AF;&#x30EA;&#x30C3;&#x30AF;&#x3067;&#x30DC;&#x30FC;&#x30C9;&#x306B;&#x53CD;&#x6620;&#x3067;&#x304D;&#x307E;&#x3059;&#x3002;</p>
<div class="parent-view-controls">
<input id="parent-view-search" type="search" placeholder="&#x89AA;&#x30BF;&#x30B9;&#x30AF;&#x30FB;&#x5B50;&#x30BF;&#x30B9;&#x30AF;&#x30FB;&#x30BF;&#x30B0;&#x3092;&#x691C;&#x7D22;">
<button class="btn small ghost" id="parent-view-clear">&#x30CF;&#x30A4;&#x30E9;&#x30A4;&#x30C8;&#x89E3;&#x9664;</button>
</div>
</div>
</header>
<div class="parent-clusters" id="parent-clusters"></div>
</section>
</div>
<dialog id="task-dialog" class="task-dialog">
<form method="dialog" id="task-form">
<header>
<h3 id="dialog-title">&#x30BF;&#x30B9;&#x30AF;&#x3092;&#x8FFD;&#x52A0;</h3>
<button type="button" class="icon-button" id="dialog-close" aria-label="&#x9589;&#x3058;&#x308B;">&#x00D7;</button>
</header>
<div class="form-body">
<div class="field">
<label for="task-title">&#x30BF;&#x30A4;&#x30C8;&#x30EB;</label>
<input id="task-title" name="title" type="text" required>
</div>
<div class="field-grid">
<div class="field">
<label for="task-assignee">&#x62C5;&#x5F53;</label>
<input id="task-assignee" name="assignee" type="text" placeholder="&#x62C5;&#x5F53;&#x8005;&#x540D;">
</div>
<div class="field">
<label for="task-due">&#x671F;&#x9650;</label>
<input id="task-due" name="dueDate" type="date">
</div>
</div>
<div class="field">
<label for="task-link">&#x30EA;&#x30F3;&#x30AF;</label>
<input id="task-link" name="link" type="url" placeholder="https:// &#x307E;&#x305F;&#x306F; file://">
</div>
<div class="field">
<label for="task-tags">&#x30BF;&#x30B0;</label>
<input id="task-tags" name="tags" type="text" placeholder="&#x30AB;&#x30F3;&#x30DE;&#x533A;&#x5207;&#x308A; (&#x4F8B;: &#x8A2D;&#x8A08;,&#x30EC;&#x30D3;&#x30E5;&#x30FC;)">
</div>
<div class="field">
<label for="task-progress">&#x9032;&#x6357;&#x30E1;&#x30E2;</label>
<textarea id="task-progress" name="progress" rows="3"></textarea>
</div>
<div class="field">
<label for="task-notes">&#x5099;&#x8003;&#x30E1;&#x30E2;</label>
<textarea id="task-notes" name="notes" rows="3"></textarea>
</div>
<div class="field">
<label for="task-parent">&#x89AA;&#x30BF;&#x30B9;&#x30AF;</label>
<select id="task-parent" name="parentId">
<option value="">&#x306A;&#x3057;</option>
</select>
</div>
<div class="field">
<label for="task-status">&#x30B9;&#x30C6;&#x30FC;&#x30BF;&#x30B9;</label>
<select id="task-status" name="status" required></select>
</div>
</div>
<footer>
<button type="submit" class="btn primary">&#x4FDD;&#x5B58;</button>
<button type="button" class="btn ghost" id="task-delete-button">&#x524A;&#x9664;</button>
</footer>
</form>
</dialog>
<template id="task-card-template">
<article class="task-card">
<header class="task-card-header">
<div class="title-row">
<input type="checkbox" class="task-select">
<h3 class="task-title"></h3>
</div>
<div class="status-quick-buttons"></div>
</header>
<div class="task-meta">
<span class="assignee"></span>
<span class="due-date"></span>
</div>
<div class="task-body">
<div class="progress"></div>
<div class="notes"></div>
<a class="resource-link" target="_blank" rel="noopener"></a>
</div>
<div class="task-tags"></div>
<div class="task-children"></div>
<footer class="task-footer">
<button class="btn tiny" data-action="edit">&#x7DE8;&#x96C6;</button>
<button class="btn tiny danger" data-action="delete">&#x524A;&#x9664;</button>
</footer>
</article>
</template>
<script src="script.js" defer></script>
</body>
</html>