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

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/CoreHome/vue/src/Orderable.ts')
-rw-r--r--plugins/CoreHome/vue/src/Orderable.ts26
1 files changed, 26 insertions, 0 deletions
diff --git a/plugins/CoreHome/vue/src/Orderable.ts b/plugins/CoreHome/vue/src/Orderable.ts
new file mode 100644
index 0000000000..6099b99891
--- /dev/null
+++ b/plugins/CoreHome/vue/src/Orderable.ts
@@ -0,0 +1,26 @@
+/*!
+ * Matomo - free/libre analytics platform
+ *
+ * @link https://matomo.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+export interface Orderable {
+ order: number;
+}
+
+export function sortOrderables<T extends Orderable>(menu?: T[]): T[] {
+ const result = [...(menu || [])];
+ result.sort((lhs, rhs) => {
+ if (lhs.order < rhs.order) {
+ return -1;
+ }
+
+ if (lhs.order > rhs.order) {
+ return 1;
+ }
+
+ return 0;
+ });
+ return result;
+}