aboutsummaryrefslogtreecommitdiffstats
path: root/src/utils/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/helpers')
-rw-r--r--src/utils/helpers/pages.ts18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/utils/helpers/pages.ts b/src/utils/helpers/pages.ts
index 773d454..eb4453b 100644
--- a/src/utils/helpers/pages.ts
+++ b/src/utils/helpers/pages.ts
@@ -1,8 +1,8 @@
import { type Post } from '@components/organisms/layout/posts-list';
import { type LinksListItems } from '@components/organisms/widgets/links-list-widget';
-import { type EdgesResponse } from '@services/graphql/api';
import { getArticleFromRawData } from '@services/graphql/articles';
import { type Article, type PageLink } from '@ts/types/app';
+import { EdgesResponse } from '@ts/types/graphql/queries';
import {
type RawArticle,
type RawThematicPreview,
@@ -36,6 +36,22 @@ export const getPageLinkFromRawData = (
};
/**
+ * Method to sort PageLink objects by name.
+ *
+ * @param {PageLink} a - A PageLink object.
+ * @param {PageLink} b - Another PageLink object.
+ * @returns {1 | -1 | 0}
+ */
+export const sortPageLinksByName = (a: PageLink, b: PageLink) => {
+ const nameA = a.name.toUpperCase();
+ const nameB = b.name.toUpperCase();
+
+ if (nameA < nameB) return -1;
+ if (nameA > nameB) return 1;
+ return 0;
+};
+
+/**
* Convert page link data to an array of links items.
*
* @param {PageLink[]} links - An array of page links.