Skip to content
Snippets Groups Projects
Select Git revision
  • master
  • renovate/configure
2 results

TableRow.svelte

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    TableRow.svelte 1.21 KiB
    <script>
      import { createEventDispatcher } from "svelte";
      const dispatch = createEventDispatcher();
    
      export let name = "";
      export let duration = "";
      export let dependsOnNames = [];
    
      export let bufferDuration = NaN;
      export let earliestStartTime = NaN;
      export let earliestEndTime = NaN;
      export let latestStartTime = NaN;
      export let latestEndTime = NaN;
    
      let rawDependsOnNames = dependsOnNames.join(", ");
      $: dependsOnNames = rawDependsOnNames
        .split(",")
        .map((val) => val.trim())
        .filter((val) => val.length !== 0);
    
      function handleRemove() {
        dispatch("remove", name);
      }
    </script>
    
    <tr>
      <td class="tg-0lax">
        <input bind:value={name} />
      </td>
      <td class="tg-0lax">
        <input type="number" bind:value={duration} />
      </td>
      <td class="tg-0lax">
        <input bind:value={rawDependsOnNames} />
      </td>
      <td class="tg-0lax">{earliestStartTime}</td>
      <td class="tg-0lax">{latestStartTime}</td>
      <td class="tg-0lax" class:redText={bufferDuration === 0}>{bufferDuration}</td>
      <td class="tg-0lax">{earliestEndTime}</td>
      <td class="tg-0lax">{latestEndTime}</td>
      <td class="tg-0lax"><button on:click={handleRemove}>x</button></td>
    </tr>
    
    <style>
      td.redText {
        color: red;
      }
    </style>