@skhemata/skhemata-blog
Version:
Skhemata Blog Web Component. This web component provides several sub components in addition to main component, allowing featured blogs, blog listing and blog post display.
78 lines (77 loc) • 1.99 kB
TypeScript
/**
*
* Lit Blog List Element
*
* */
import { CSSResult, SkhemataBase } from '@skhemata/skhemata-base';
import './SkhemataBlogSearch';
export declare class SkhemataBlogList extends SkhemataBase {
apiWordpress: {
url: string;
};
blogPagePath: string;
postsPerPage: number;
pagerType: string;
currentPage: number;
searchedBlogPosts: string;
private blogPosts;
private blogFeatures;
totalPages: number;
totalCount: number;
maxLoadCount: number;
private count;
translationData: {
eng: {
SkhemataBlogList: {
showMoreButton: string;
tags: string;
categories: string;
};
};
};
static get styles(): CSSResult[];
static get scopedElements(): {
'fa-icon': any;
};
constructor();
willUpdate(changedProperties: Map<string, any>): void;
/**
* dispatch navigate event
* @param slug post slug
*/
navigateToPost(slug: string): void;
/**
* Implement `render` to define a template for your element.
* Use JS template literals
*/
protected render(): import("lit-html").TemplateResult<1>;
/**
* Implement firstUpdated to perform one-time work after
* the element’s template has been created.
*/
firstUpdated(): Promise<void>;
/**
* Fetch Featured Posts from WP REST API
*/
private getFeatures;
/**
* Fetch Posts from WP REST API
*/
private getPosts;
/**
* Load more posts event handler
*/
private loadMorePosts;
private static formatCategories;
private formatDate;
/**
* Filters post based on query params
* @param id tag/category/author id
* @param queryId query param id
*/
filterPostsBy(id: string, queryId: string): void;
cleanExcerpt: (excerpt?: string) => string;
private goToButtonPage;
private setPageNumber;
private loadPostPage;
}