projects-data.ts 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. import { Project } from '../../../../../types/project/dashboard/api'
  2. const moment = require('moment')
  3. const users = {
  4. laforge: {
  5. id: '624371e98a21dd0026a5bfef',
  6. email: 'laforge@overleaf.com',
  7. firstName: '',
  8. lastName: 'La Forge',
  9. },
  10. picard: {
  11. id: '62d6d0b4c5c5030a4d696c7a',
  12. email: 'picard@overleaf.com',
  13. firstName: 'Jean-Luc',
  14. lastName: 'Picard',
  15. },
  16. riker: {
  17. id: '624333f147cfd8002622a1d3',
  18. email: 'riker@overleaf.com',
  19. firstName: 'William',
  20. lastName: 'Riker',
  21. },
  22. worf: {
  23. id: '624371708a21dd0026a5bf86',
  24. email: 'worf@overleaf.com',
  25. firstName: '',
  26. lastName: '',
  27. },
  28. }
  29. export const copyableProject = <Project>{
  30. id: '62f17f594641b405ca2b3264',
  31. name: 'Starfleet Report (owner)',
  32. lastUpdated: moment().subtract(1, 'day').toDate(),
  33. lastUpdatedBy: users.picard,
  34. accessLevel: 'owner',
  35. source: 'owner',
  36. archived: false,
  37. trashed: false,
  38. owner: users.riker,
  39. }
  40. export const archiveableProject = <Project>{
  41. id: '62d6d3721357e20a682110d5',
  42. name: "Captain's logs (Invite & Read Only)",
  43. lastUpdated: moment().subtract(1, 'week').toDate(),
  44. lastUpdatedBy: users.picard,
  45. accessLevel: 'readOnly',
  46. source: 'invite',
  47. archived: false,
  48. trashed: false,
  49. owner: users.picard,
  50. }
  51. export const trashedProject = <Project>{
  52. id: '42f17f594641b405ca2b3265',
  53. name: 'Starfleet Report draft (owner & trashed)',
  54. lastUpdated: moment().subtract(2, 'year').toDate(),
  55. lastUpdatedBy: users.picard,
  56. accessLevel: 'owner',
  57. source: 'owner',
  58. archived: false,
  59. trashed: true,
  60. owner: users.riker,
  61. }
  62. export const archivedProject = <Project>{
  63. id: '52f17f594641b405ca2b3266',
  64. name: 'Starfleet Report old (owner & archive)',
  65. lastUpdated: moment().subtract(1, 'year').toDate(),
  66. lastUpdatedBy: users.picard,
  67. accessLevel: 'owner',
  68. source: 'owner',
  69. archived: true,
  70. trashed: false,
  71. owner: users.riker,
  72. }
  73. export const trashedAndNotOwnedProject = <Project>{
  74. id: '62d6d3721357e20a682110d5',
  75. name: "Captain's logs very old (Trashed & Read Only & Not Owned)",
  76. lastUpdated: moment().subtract(11, 'year').toDate(),
  77. lastUpdatedBy: users.picard,
  78. accessLevel: 'readOnly',
  79. source: 'invite',
  80. archived: false,
  81. trashed: true,
  82. owner: users.picard,
  83. }
  84. export const sharedProject = archiveableProject
  85. export const projectsData: Array<Project> = [
  86. copyableProject,
  87. archiveableProject,
  88. {
  89. id: '62b5cdf85212090c2244161c',
  90. name: 'Enterprise Security Analysis | Deflector Shields, Sensors, Tractor Beams, and Cloaking Devices (Invite & Edit)',
  91. lastUpdated: moment().subtract(1, 'month').toDate(),
  92. lastUpdatedBy: users.worf,
  93. accessLevel: 'readWrite',
  94. source: 'invite',
  95. archived: false,
  96. trashed: false,
  97. owner: users.worf,
  98. },
  99. {
  100. id: '624380431c2e40006c59b922',
  101. name: 'VISOR Sensors (Link Sharing & Edit)',
  102. lastUpdated: moment().subtract(2, 'months').toDate(),
  103. lastUpdatedBy: users.laforge,
  104. accessLevel: 'readAndWrite',
  105. source: 'token',
  106. archived: false,
  107. trashed: false,
  108. owner: users.laforge,
  109. },
  110. {
  111. id: '62f51b31f6f4c60027e8935f',
  112. name: 'United Federation of Planets (Link Sharing & View Only)',
  113. lastUpdated: moment().subtract(2, 'year').toDate(),
  114. lastUpdatedBy: null,
  115. accessLevel: 'readOnly',
  116. source: 'token',
  117. archived: false,
  118. trashed: false,
  119. },
  120. archivedProject,
  121. trashedProject,
  122. ]
  123. export const currentProjects: Array<Project> = projectsData.filter(
  124. ({ archived, trashed }) => !archived && !trashed
  125. )