Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-docs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid O'Regan <doregan@gitlab.com>2022-11-17 09:00:22 +0300
committerDavid O'Regan <doregan@gitlab.com>2022-11-17 09:00:22 +0300
commit6281d58ae4ce10d61ea317293192a1b203b46a9f (patch)
treee773e8fac7069e8486a3ce0d9909b922c6a75dc9
parent679c46f0e50b8a66af39f60d3b794d73082976e9 (diff)
parent0e9b0d1f01ee31aec0228624f198ee6dedf4b123 (diff)
Merge branch 'sarahg/versions-lite-refactor' into 'main'
Refactor versions fetching See merge request https://gitlab.com/gitlab-org/gitlab-docs/-/merge_requests/3286 Merged-by: David O'Regan <doregan@gitlab.com> Approved-by: David O'Regan <doregan@gitlab.com> Co-authored-by: Sarah German <sgerman@gitlab.com>
-rw-r--r--content/frontend/default/components/archives_page.vue3
-rw-r--r--content/frontend/services/fetch_archive_images.js14
-rw-r--r--content/frontend/services/fetch_versions.js22
-rw-r--r--spec/frontend/default/components/archives_page_spec.js7
4 files changed, 24 insertions, 22 deletions
diff --git a/content/frontend/default/components/archives_page.vue b/content/frontend/default/components/archives_page.vue
index 3751d04c..07df0f59 100644
--- a/content/frontend/default/components/archives_page.vue
+++ b/content/frontend/default/components/archives_page.vue
@@ -1,6 +1,5 @@
<script>
-import { getVersions } from '../../services/fetch_versions';
-import { getArchiveImages } from '../../services/fetch_archive_images';
+import { getVersions, getArchiveImages } from '../../services/fetch_versions';
import HeaderPermalink from '../../shared/components/header_permalink.vue';
export default {
diff --git a/content/frontend/services/fetch_archive_images.js b/content/frontend/services/fetch_archive_images.js
deleted file mode 100644
index 45c68efd..00000000
--- a/content/frontend/services/fetch_archive_images.js
+++ /dev/null
@@ -1,14 +0,0 @@
-export function getArchiveImages() {
- return fetch(
- 'https://gitlab.com/api/v4/projects/1794617/registry/repositories/631635/tags?per_page=100',
- )
- .then((response) => response.json())
- .then((data) => {
- // We only want tags for versioned releases, so drop any that aren't integers.
- const tags = data.filter((object) => {
- return !Number.isNaN(Number(object.name));
- });
- return tags.reverse();
- })
- .catch((error) => console.error(error)); // eslint-disable-line no-console
-}
diff --git a/content/frontend/services/fetch_versions.js b/content/frontend/services/fetch_versions.js
index e65f396c..8765dc10 100644
--- a/content/frontend/services/fetch_versions.js
+++ b/content/frontend/services/fetch_versions.js
@@ -1,8 +1,24 @@
+/* eslint-disable no-console */
+
+const DOCS_VERSIONS_ENDPOINT = 'https://docs.gitlab.com/versions.json';
+const DOCS_IMAGES_ENDPOINT =
+ 'https://gitlab.com/api/v4/projects/1794617/registry/repositories/631635/tags?per_page=100';
+
export function getVersions() {
- return fetch('https://docs.gitlab.com/versions.json')
+ return fetch(DOCS_VERSIONS_ENDPOINT)
.then((response) => response.json())
.then((data) => {
- return data[0];
+ return Object.assign(...data);
})
- .catch((error) => console.error(error)); // eslint-disable-line no-console
+ .catch((error) => console.error(error));
+}
+
+export function getArchiveImages() {
+ return fetch(DOCS_IMAGES_ENDPOINT)
+ .then((response) => response.json())
+ .then((data) => {
+ // We only want tags for versioned releases, so drop any that aren't integers.
+ return data.filter((object) => !Number.isNaN(Number(object.name))).reverse();
+ })
+ .catch((error) => console.error(error));
}
diff --git a/spec/frontend/default/components/archives_page_spec.js b/spec/frontend/default/components/archives_page_spec.js
index 553ef7ba..6bc9ebe8 100644
--- a/spec/frontend/default/components/archives_page_spec.js
+++ b/spec/frontend/default/components/archives_page_spec.js
@@ -4,12 +4,13 @@
import { shallowMount } from '@vue/test-utils';
import ArchivesPage from '../../../../content/frontend/default/components/archives_page.vue';
-import { getVersions } from '../../../../content/frontend/services/fetch_versions';
-import { getArchiveImages } from '../../../../content/frontend/services/fetch_archive_images';
+import {
+ getVersions,
+ getArchiveImages,
+} from '../../../../content/frontend/services/fetch_versions';
import { mockVersions, mockArchiveImages } from '../../__mocks__/versions_mock';
jest.mock('../../../../content/frontend/services/fetch_versions');
-jest.mock('../../../../content/frontend/services/fetch_archive_images');
beforeEach(() => {
jest.clearAllMocks();