summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/releases/stores/modules/edit_new/state.js
blob: 11a2f9df59bf7f73d6dd722a140f82a22e1025f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
export default ({
  isExistingRelease,
  projectId,
  groupId,
  groupMilestonesAvailable = false,
  projectPath,
  markdownDocsPath,
  markdownPreviewPath,
  releaseAssetsDocsPath,
  manageMilestonesPath,
  newMilestonePath,
  releasesPagePath,
  editReleaseDocsPath,
  upcomingReleaseDocsPath,

  deleteReleaseDocsPath = '',
  tagName = null,
  defaultBranch = null,
}) => ({
  isExistingRelease,
  projectId,
  groupId,
  groupMilestonesAvailable: Boolean(groupMilestonesAvailable),
  projectPath,
  markdownDocsPath,
  markdownPreviewPath,
  releaseAssetsDocsPath,
  manageMilestonesPath,
  newMilestonePath,
  releasesPagePath,
  editReleaseDocsPath,
  upcomingReleaseDocsPath,
  deleteReleaseDocsPath,

  /**
   * The name of the tag associated with the release, provided by the backend.
   * When creating a new release, this is the default from the URL
   */
  tagName,
  showCreateFrom: !tagName,

  defaultBranch,
  createFrom: defaultBranch,

  /** The Release object */
  release: null,

  /**
   * A deep clone of the Release object above.
   * Used when editing this Release so that
   * changes can be computed.
   */
  originalRelease: null,

  isFetchingRelease: false,
  fetchError: null,

  isUpdatingRelease: false,
  updateError: null,

  tagNotes: '',
  includeTagNotes: false,
  existingRelease: null,
  originalReleasedAt: new Date(),
});