You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

65 lines
3.8 KiB

  1. <script lang="ts">
  2. interface EntryCommon {
  3. active?: boolean
  4. statusTag?: string
  5. }
  6. export let selected = false;
  7. export let entry: EntryCommon;
  8. export let affects: "project" | "task" = "project";
  9. let completed: boolean;
  10. let failed: boolean;
  11. let onhold: boolean;
  12. let todo: boolean;
  13. let wontdo: boolean;
  14. let project: boolean;
  15. let task: boolean;
  16. $: completed = !entry.active && entry.statusTag === "completed";
  17. $: failed = !entry.active && entry.statusTag === "failed";
  18. $: onhold = !entry.active && entry.statusTag === "on hold";
  19. $: todo = !entry.active && entry.statusTag === "to do";
  20. $: wontdo = !entry.active && entry.statusTag === "declined";
  21. $: progress = !entry.active && entry.statusTag === "progress";
  22. $: background = !entry.active && entry.statusTag === "background";
  23. $: task = affects === "task";
  24. $: project = affects === "project";
  25. </script>
  26. <div class="status-color-context" class:project class:task class:selected class:completed class:failed class:onhold class:todo class:wontdo class:progress class:background>
  27. <slot></slot>
  28. </div>
  29. <style>
  30. .status-color-context.project :global(.sccfg) { color: #444 !important; }
  31. .status-color-context.project.selected :global(.sccfg) { color: #666 !important; }
  32. .status-color-context.project :global(.sccpb) { background-color: #78ff78 !important; }
  33. .status-color-context.project.completed :global(.sccfg) { color: #484 !important; }
  34. .status-color-context.project.completed.selected :global(.sccfg) { color: #78ff78 !important; }
  35. .status-color-context.project.completed :global(.sccpb) { background-color: #78ff78 !important; }
  36. .status-color-context.project.failed :global(.sccfg) { color: #852a24 !important; }
  37. .status-color-context.project.failed.selected :global(.sccfg) { color: #ff4545 !important; }
  38. .status-color-context.project.failed :global(.sccpb) { background-color: #ff4545 !important; }
  39. .status-color-context.project.onhold :global(.sccfg) { color: #446d88 !important; }
  40. .status-color-context.project.onhold.selected :global(.sccfg) { color: #78c9ff !important; }
  41. .status-color-context.project.onhold :global(.sccpb) { background-color: #78c9ff !important; }
  42. .status-color-context.project.todo :global(.sccfg) { color: #7a7429 !important; }
  43. .status-color-context.project.todo.selected :global(.sccfg) { color: #e7e55e !important; }
  44. .status-color-context.project.todo :global(.sccpb) { background-color: #e7e55e !important; }
  45. .status-color-context.project.wontdo :global(.sccfg) { color: #7a2973 !important; }
  46. .status-color-context.project.wontdo.selected :global(.sccfg) { color: #e75ed0 !important; }
  47. .status-color-context.project.wontdo :global(.sccpb) { background-color: #e75ed0 !important; }
  48. .status-color-context.project.progress :global(.sccfg) { color: #63297a !important; }
  49. .status-color-context.project.progress.selected :global(.sccfg) { color: #a95ee7 !important; }
  50. .status-color-context.project.progress :global(.sccpb) { background-color: #a95ee7 !important; }
  51. .status-color-context.project.background :global(.sccfg) { color: #7a5429 !important; }
  52. .status-color-context.project.background.selected :global(.sccfg) { color: #e7a75e !important; }
  53. .status-color-context.project.background :global(.sccpb) { background-color: #e7a75e !important; }
  54. .status-color-context.task.completed :global(.sccsi) { background-color: #484 !important; color: #78ff78 !important; }
  55. .status-color-context.task.failed :global(.sccsi) { background-color: #85242c !important; color: #ff4545 !important; }
  56. .status-color-context.task.onhold :global(.sccsi) { background-color: #447288 !important; color: #78c9ff !important; }
  57. .status-color-context.task.todo :global(.sccsi) { background-color: #7a7429 !important; color: #e7e55e !important; }
  58. .status-color-context.task.wontdo :global(.sccsi) { background-color: #7a2973 !important; color: #e75ed0 !important; }
  59. </style>