$55 GRAYBYTE WORDPRESS FILE MANAGER $85

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.43.35 | ADMIN IP 216.73.216.180
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : mail

/home/bravrvjk/dantho.rw/wp-content/plugins/extendify/src/PageCreator/state/

HOME
Current File : /home/bravrvjk/dantho.rw/wp-content/plugins/extendify/src/PageCreator/state//pages.js
import { pages } from '@page-creator/lib/pages';
import { create } from 'zustand';
import { devtools } from 'zustand/middleware';

const store = (set, get) => ({
	pages: new Map(pages),
	currentPageIndex: 0,
	count: () => get().pages.size,
	getPageOrder: () => Array.from(get().pages.keys()),
	getCurrentPageData: () => get().pages.get(get().getCurrentPageSlug()),
	getPageSlug: (idx) => get().getPageOrder()[idx],
	getCurrentPageSlug: () => {
		const page = get().getPageOrder()[get().currentPageIndex];
		if (!page) {
			get().setPage(0);
			return get().getPageOrder()[0];
		}
		return page;
	},
	getPageData: (slug) => get().pages.get(slug),
	getNextPageData: () => {
		const nextIndex = get().currentPageIndex + 1;
		if (nextIndex > get().count() - 1) return {};
		return get().getPageData(get().getPageSlug(nextIndex));
	},
	setPage: (page) => {
		// If page is a string, get the index
		if (typeof page === 'string') {
			page = get().getPageOrder().indexOf(page);
		}
		if (page > get().count() - 1) return;
		if (page < 0) return;
		set({ currentPageIndex: page });
	},
	findPreviousValidPage: (idx) => {
		let prevIdx = idx;
		do {
			prevIdx -= 1;
		} while (prevIdx > 0);
		return prevIdx;
	},
	nextPage: () => {
		const pageIndex = get().currentPageIndex + 1;
		get().setPage(pageIndex);
	},
	previousPage: () => {
		get().setPage(get().findPreviousValidPage(get().currentPageIndex));
	},
});

const withDevtools = devtools(store, {
	name: 'Extendify Page Creator Pages',
	serialize: true,
});

export const usePagesStore = create(withDevtools);


Current_dir [ WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
6 Nov 2025 10.43 AM
bravrvjk / bravrvjk
0755
cache.js
0.378 KB
13 Mar 2025 9.10 PM
bravrvjk / bravrvjk
0644
global.js
0.455 KB
13 Mar 2025 9.10 PM
bravrvjk / bravrvjk
0644
pages.js
1.522 KB
13 Mar 2025 9.10 PM
bravrvjk / bravrvjk
0644
plugins-cache.js
0.65 KB
12 May 2025 4.42 PM
bravrvjk / bravrvjk
0644
user.js
0.922 KB
23 Oct 2025 8.20 PM
bravrvjk / bravrvjk
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF