import {parse} from "node-html-parser";

export interface INextProps {
	initialState?: {
		item?: {
			detail?: {
				item?: any
			}
		},
		itemsState?: {
			items?: {
				item?: any
			}
		}
	},
	pageProps?: any
}

export function queryNextData(htmlStr: string): INextProps {
	try {
		return JSON.parse(parse(htmlStr).querySelector('#__NEXT_DATA__[type*="application/json"]').text?.trim())?.props || {};
	} catch (e) {
		return {};
	}
}
