1
0
mirror of https://github.com/flarum/core.git synced 2025-07-17 14:51:19 +02:00

Bundled output for commit 0c017c2aa0

Includes transpiled JS/TS, and Typescript declaration files (typings).

[skip ci]
This commit is contained in:
flarum-bot
2022-07-15 22:33:28 +00:00
parent 0c017c2aa0
commit cd610a1cf2
16 changed files with 263 additions and 289 deletions

View File

@@ -1,4 +1,39 @@
declare var _default: {
import saveSettings from './utils/saveSettings';
import ExtensionData from './utils/ExtensionData';
import isExtensionEnabled from './utils/isExtensionEnabled';
import getCategorizedExtensions from './utils/getCategorizedExtensions';
import SettingDropdown from './components/SettingDropdown';
import EditCustomFooterModal from './components/EditCustomFooterModal';
import SessionDropdown from './components/SessionDropdown';
import HeaderPrimary from './components/HeaderPrimary';
import AdminPage from './components/AdminPage';
import AppearancePage from './components/AppearancePage';
import StatusWidget from './components/StatusWidget';
import ExtensionsWidget from './components/ExtensionsWidget';
import HeaderSecondary from './components/HeaderSecondary';
import SettingsModal from './components/SettingsModal';
import DashboardWidget from './components/DashboardWidget';
import ExtensionPage from './components/ExtensionPage';
import ExtensionLinkButton from './components/ExtensionLinkButton';
import PermissionGrid from './components/PermissionGrid';
import ExtensionPermissionGrid from './components/ExtensionPermissionGrid';
import MailPage from './components/MailPage';
import UploadImageButton from './components/UploadImageButton';
import LoadingModal from './components/LoadingModal';
import DashboardPage from './components/DashboardPage';
import BasicsPage from './components/BasicsPage';
import UserListPage from './components/UserListPage';
import EditCustomHeaderModal from './components/EditCustomHeaderModal';
import PermissionsPage from './components/PermissionsPage';
import PermissionDropdown from './components/PermissionDropdown';
import AdminNav from './components/AdminNav';
import AdminHeader from './components/AdminHeader';
import EditCustomCssModal from './components/EditCustomCssModal';
import EditGroupModal from './components/EditGroupModal';
import routes from './routes';
import AdminApplication from './AdminApplication';
import generateElementId from './utils/generateElementId';
declare const _default: {
extend: any;
Session: typeof import("../common/Session").default;
Store: typeof import("../common/Store").default;
@@ -128,38 +163,3 @@ declare var _default: {
AdminApplication: typeof AdminApplication;
};
export default _default;
import saveSettings from "./utils/saveSettings";
import ExtensionData from "./utils/ExtensionData";
import isExtensionEnabled from "./utils/isExtensionEnabled";
import getCategorizedExtensions from "./utils/getCategorizedExtensions";
import generateElementId from "./utils/generateElementId";
import SettingDropdown from "./components/SettingDropdown";
import EditCustomFooterModal from "./components/EditCustomFooterModal";
import SessionDropdown from "./components/SessionDropdown";
import HeaderPrimary from "./components/HeaderPrimary";
import AdminPage from "./components/AdminPage";
import AppearancePage from "./components/AppearancePage";
import StatusWidget from "./components/StatusWidget";
import ExtensionsWidget from "./components/ExtensionsWidget";
import HeaderSecondary from "./components/HeaderSecondary";
import SettingsModal from "./components/SettingsModal";
import DashboardWidget from "./components/DashboardWidget";
import ExtensionPage from "./components/ExtensionPage";
import ExtensionLinkButton from "./components/ExtensionLinkButton";
import PermissionGrid from "./components/PermissionGrid";
import ExtensionPermissionGrid from "./components/ExtensionPermissionGrid";
import MailPage from "./components/MailPage";
import UploadImageButton from "./components/UploadImageButton";
import LoadingModal from "./components/LoadingModal";
import DashboardPage from "./components/DashboardPage";
import BasicsPage from "./components/BasicsPage";
import UserListPage from "./components/UserListPage";
import EditCustomHeaderModal from "./components/EditCustomHeaderModal";
import PermissionsPage from "./components/PermissionsPage";
import PermissionDropdown from "./components/PermissionDropdown";
import AdminNav from "./components/AdminNav";
import AdminHeader from "./components/AdminHeader";
import EditCustomCssModal from "./components/EditCustomCssModal";
import EditGroupModal from "./components/EditGroupModal";
import routes from "./routes";
import AdminApplication from "./AdminApplication";

View File

@@ -1,4 +1,84 @@
declare var _default: {
import Session from './Session';
import Store from './Store';
import BasicEditorDriver from './utils/BasicEditorDriver';
import liveHumanTimes from './utils/liveHumanTimes';
import ItemList from './utils/ItemList';
import mixin from './utils/mixin';
import humanTime from './utils/humanTime';
import computed from './utils/computed';
import insertText from './utils/insertText';
import styleSelectedText from './utils/styleSelectedText';
import Drawer from './utils/Drawer';
import anchorScroll from './utils/anchorScroll';
import RequestError from './utils/RequestError';
import abbreviateNumber from './utils/abbreviateNumber';
import escapeRegExp from './utils/escapeRegExp';
import * as string from './utils/string';
import * as ThrottleDebounce from './utils/throttleDebounce';
import Stream from './utils/Stream';
import SubtreeRetainer from './utils/SubtreeRetainer';
import setRouteWithForcedRefresh from './utils/setRouteWithForcedRefresh';
import extract from './utils/extract';
import ScrollListener from './utils/ScrollListener';
import stringToColor from './utils/stringToColor';
import subclassOf from './utils/subclassOf';
import patchMithril from './utils/patchMithril';
import proxifyCompat from './utils/proxifyCompat';
import extractText from './utils/extractText';
import formatNumber from './utils/formatNumber';
import mapRoutes from './utils/mapRoutes';
import * as FocusTrap from './utils/focusTrap';
import Notification from './models/Notification';
import User from './models/User';
import Post from './models/Post';
import Discussion from './models/Discussion';
import Group from './models/Group';
import Forum from './models/Forum';
import Component from './Component';
import Translator from './Translator';
import AlertManager from './components/AlertManager';
import Page from './components/Page';
import Switch from './components/Switch';
import Badge from './components/Badge';
import LoadingIndicator from './components/LoadingIndicator';
import Placeholder from './components/Placeholder';
import Separator from './components/Separator';
import Dropdown from './components/Dropdown';
import SplitDropdown from './components/SplitDropdown';
import RequestErrorModal from './components/RequestErrorModal';
import FieldSet from './components/FieldSet';
import Select from './components/Select';
import Navigation from './components/Navigation';
import Alert from './components/Alert';
import Link from './components/Link';
import LinkButton from './components/LinkButton';
import Checkbox from './components/Checkbox';
import ColorPreviewInput from './components/ColorPreviewInput';
import SelectDropdown from './components/SelectDropdown';
import ModalManager from './components/ModalManager';
import Button from './components/Button';
import Modal from './components/Modal';
import GroupBadge from './components/GroupBadge';
import TextEditor from './components/TextEditor';
import TextEditorButton from './components/TextEditorButton';
import EditUserModal from './components/EditUserModal';
import Tooltip from './components/Tooltip';
import Model from './Model';
import Application from './Application';
import fullTime from './helpers/fullTime';
import avatar from './helpers/avatar';
import icon from './helpers/icon';
import humanTimeHelper from './helpers/humanTime';
import punctuateSeries from './helpers/punctuateSeries';
import highlight from './helpers/highlight';
import username from './helpers/username';
import userOnline from './helpers/userOnline';
import listItems from './helpers/listItems';
import Fragment from './Fragment';
import DefaultResolver from './resolvers/DefaultResolver';
import PaginatedListState from './states/PaginatedListState';
import isObject from './utils/isObject';
declare const _default: {
extend: any;
Session: typeof Session;
Store: typeof Store;
@@ -92,83 +172,3 @@ declare var _default: {
'states/PaginatedListState': typeof PaginatedListState;
};
export default _default;
import Session from "./Session";
import Store from "./Store";
import BasicEditorDriver from "./utils/BasicEditorDriver";
import liveHumanTimes from "./utils/liveHumanTimes";
import ItemList from "./utils/ItemList";
import mixin from "./utils/mixin";
import humanTime from "./utils/humanTime";
import computed from "./utils/computed";
import insertText from "./utils/insertText";
import styleSelectedText from "./utils/styleSelectedText";
import Drawer from "./utils/Drawer";
import anchorScroll from "./utils/anchorScroll";
import RequestError from "./utils/RequestError";
import abbreviateNumber from "./utils/abbreviateNumber";
import * as string from "./utils/string";
import SubtreeRetainer from "./utils/SubtreeRetainer";
import escapeRegExp from "./utils/escapeRegExp";
import extract from "./utils/extract";
import ScrollListener from "./utils/ScrollListener";
import stringToColor from "./utils/stringToColor";
import Stream from "./utils/Stream";
import subclassOf from "./utils/subclassOf";
import setRouteWithForcedRefresh from "./utils/setRouteWithForcedRefresh";
import patchMithril from "./utils/patchMithril";
import proxifyCompat from "./utils/proxifyCompat";
import extractText from "./utils/extractText";
import formatNumber from "./utils/formatNumber";
import mapRoutes from "./utils/mapRoutes";
import * as ThrottleDebounce from "./utils/throttleDebounce";
import isObject from "./utils/isObject";
import * as FocusTrap from "./utils/focusTrap";
import Notification from "./models/Notification";
import User from "./models/User";
import Post from "./models/Post";
import Discussion from "./models/Discussion";
import Group from "./models/Group";
import Forum from "./models/Forum";
import Component from "./Component";
import Fragment from "./Fragment";
import Translator from "./Translator";
import AlertManager from "./components/AlertManager";
import Page from "./components/Page";
import Switch from "./components/Switch";
import Badge from "./components/Badge";
import LoadingIndicator from "./components/LoadingIndicator";
import Placeholder from "./components/Placeholder";
import Separator from "./components/Separator";
import Dropdown from "./components/Dropdown";
import SplitDropdown from "./components/SplitDropdown";
import RequestErrorModal from "./components/RequestErrorModal";
import FieldSet from "./components/FieldSet";
import Select from "./components/Select";
import Navigation from "./components/Navigation";
import Alert from "./components/Alert";
import Link from "./components/Link";
import LinkButton from "./components/LinkButton";
import Checkbox from "./components/Checkbox";
import ColorPreviewInput from "./components/ColorPreviewInput";
import SelectDropdown from "./components/SelectDropdown";
import ModalManager from "./components/ModalManager";
import Button from "./components/Button";
import Modal from "./components/Modal";
import GroupBadge from "./components/GroupBadge";
import TextEditor from "./components/TextEditor";
import TextEditorButton from "./components/TextEditorButton";
import Tooltip from "./components/Tooltip";
import EditUserModal from "./components/EditUserModal";
import Model from "./Model";
import Application from "./Application";
import fullTime from "./helpers/fullTime";
import avatar from "./helpers/avatar";
import icon from "./helpers/icon";
import humanTimeHelper from "./helpers/humanTime";
import punctuateSeries from "./helpers/punctuateSeries";
import highlight from "./helpers/highlight";
import username from "./helpers/username";
import userOnline from "./helpers/userOnline";
import listItems from "./helpers/listItems";
import DefaultResolver from "./resolvers/DefaultResolver";
import PaginatedListState from "./states/PaginatedListState";

View File

@@ -1,11 +1,14 @@
import Component, { ComponentAttrs } from '../Component';
import AlertManagerState from '../states/AlertManagerState';
import type Mithril from 'mithril';
export interface IAlertManagerAttrs extends ComponentAttrs {
state: AlertManagerState;
}
/**
* The `AlertManager` component provides an area in which `Alert` components can
* be shown and dismissed.
*/
export default class AlertManager extends Component<import("../Component").ComponentAttrs, undefined> {
constructor();
oninit(vnode: any): void;
state: any;
export default class AlertManager<CustomAttrs extends IAlertManagerAttrs = IAlertManagerAttrs> extends Component<CustomAttrs, AlertManagerState> {
oninit(vnode: Mithril.Vnode<CustomAttrs, this>): void;
view(): JSX.Element;
}
import Component from "../Component";

View File

@@ -9,7 +9,7 @@ export interface IPageAttrs {
*
* @abstract
*/
export default abstract class Page<CustomAttrs extends IPageAttrs = IPageAttrs> extends Component<CustomAttrs> {
export default abstract class Page<CustomAttrs extends IPageAttrs = IPageAttrs, CustomState = undefined> extends Component<CustomAttrs, CustomState> {
/**
* A class name to apply to the body while the route is active.
*/

View File

@@ -4,19 +4,18 @@ import Alert, { AlertAttrs } from '../components/Alert';
* Returned by `AlertManagerState.show`. Used to dismiss alerts.
*/
export declare type AlertIdentifier = number;
export declare type AlertArray = {
[id: AlertIdentifier]: AlertState;
};
export interface AlertState {
componentClass: typeof Alert;
attrs: AlertAttrs;
children: Mithril.Children;
}
export default class AlertManagerState {
protected activeAlerts: {
[id: number]: AlertState;
};
protected alertId: number;
getActiveAlerts(): {
[id: number]: AlertState;
};
protected activeAlerts: AlertArray;
protected alertId: AlertIdentifier;
getActiveAlerts(): AlertArray;
/**
* Show an Alert in the alerts area.
*

View File

@@ -1,4 +1,75 @@
declare var _default: {
/// <reference types="mithril" />
import KeyboardNavigatable from './utils/KeyboardNavigatable';
import slidable from './utils/slidable';
import History from './utils/History';
import alertEmailConfirmation from './utils/alertEmailConfirmation';
import Pane from './utils/Pane';
import ComposerState from './states/ComposerState';
import DiscussionListState from './states/DiscussionListState';
import GlobalSearchState from './states/GlobalSearchState';
import NotificationListState from './states/NotificationListState';
import PostStreamState from './states/PostStreamState';
import SearchState from './states/SearchState';
import AffixedSidebar from './components/AffixedSidebar';
import DiscussionPage from './components/DiscussionPage';
import DiscussionListPane from './components/DiscussionListPane';
import LogInModal from './components/LogInModal';
import ComposerBody from './components/ComposerBody';
import ForgotPasswordModal from './components/ForgotPasswordModal';
import Notification from './components/Notification';
import LogInButton from './components/LogInButton';
import DiscussionsUserPage from './components/DiscussionsUserPage';
import Composer from './components/Composer';
import SessionDropdown from './components/SessionDropdown';
import HeaderPrimary from './components/HeaderPrimary';
import PostEdited from './components/PostEdited';
import PostStream from './components/PostStream';
import ChangePasswordModal from './components/ChangePasswordModal';
import IndexPage from './components/IndexPage';
import DiscussionRenamedNotification from './components/DiscussionRenamedNotification';
import DiscussionsSearchSource from './components/DiscussionsSearchSource';
import HeaderSecondary from './components/HeaderSecondary';
import ComposerButton from './components/ComposerButton';
import DiscussionList from './components/DiscussionList';
import ReplyPlaceholder from './components/ReplyPlaceholder';
import AvatarEditor from './components/AvatarEditor';
import Post from './components/Post';
import SettingsPage from './components/SettingsPage';
import TerminalPost from './components/TerminalPost';
import ChangeEmailModal from './components/ChangeEmailModal';
import NotificationsDropdown from './components/NotificationsDropdown';
import UserPage from './components/UserPage';
import PostUser from './components/PostUser';
import UserCard from './components/UserCard';
import UsersSearchSource from './components/UsersSearchSource';
import NotificationGrid from './components/NotificationGrid';
import PostPreview from './components/PostPreview';
import EventPost from './components/EventPost';
import DiscussionHero from './components/DiscussionHero';
import PostMeta from './components/PostMeta';
import DiscussionRenamedPost from './components/DiscussionRenamedPost';
import DiscussionComposer from './components/DiscussionComposer';
import LogInButtons from './components/LogInButtons';
import NotificationList from './components/NotificationList';
import WelcomeHero from './components/WelcomeHero';
import SignUpModal from './components/SignUpModal';
import CommentPost from './components/CommentPost';
import ComposerPostPreview from './components/ComposerPostPreview';
import ReplyComposer from './components/ReplyComposer';
import NotificationsPage from './components/NotificationsPage';
import PostStreamScrubber from './components/PostStreamScrubber';
import EditPostComposer from './components/EditPostComposer';
import RenameDiscussionModal from './components/RenameDiscussionModal';
import Search from './components/Search';
import DiscussionListItem from './components/DiscussionListItem';
import LoadingPost from './components/LoadingPost';
import PostsUserPage from './components/PostsUserPage';
import DiscussionPageResolver from './resolvers/DiscussionPageResolver';
import BasicEditorDriver from '../common/utils/BasicEditorDriver';
import routes from './routes';
import ForumApplication from './ForumApplication';
import isSafariMobile from './utils/isSafariMobile';
declare const _default: {
extend: any;
Session: typeof import("../common/Session").default;
Store: typeof import("../common/Store").default;
@@ -193,73 +264,3 @@ declare var _default: {
ForumApplication: typeof ForumApplication;
};
export default _default;
import BasicEditorDriver from "../common/utils/BasicEditorDriver";
import KeyboardNavigatable from "./utils/KeyboardNavigatable";
import slidable from "./utils/slidable";
import History from "./utils/History";
import alertEmailConfirmation from "./utils/alertEmailConfirmation";
import Pane from "./utils/Pane";
import isSafariMobile from "./utils/isSafariMobile";
import ComposerState from "./states/ComposerState";
import DiscussionListState from "./states/DiscussionListState";
import GlobalSearchState from "./states/GlobalSearchState";
import NotificationListState from "./states/NotificationListState";
import PostStreamState from "./states/PostStreamState";
import SearchState from "./states/SearchState";
import AffixedSidebar from "./components/AffixedSidebar";
import DiscussionPage from "./components/DiscussionPage";
import DiscussionListPane from "./components/DiscussionListPane";
import LogInModal from "./components/LogInModal";
import ComposerBody from "./components/ComposerBody";
import ForgotPasswordModal from "./components/ForgotPasswordModal";
import Notification from "./components/Notification";
import LogInButton from "./components/LogInButton";
import DiscussionsUserPage from "./components/DiscussionsUserPage";
import Composer from "./components/Composer";
import SessionDropdown from "./components/SessionDropdown";
import HeaderPrimary from "./components/HeaderPrimary";
import PostEdited from "./components/PostEdited";
import PostStream from "./components/PostStream";
import ChangePasswordModal from "./components/ChangePasswordModal";
import IndexPage from "./components/IndexPage";
import DiscussionRenamedNotification from "./components/DiscussionRenamedNotification";
import DiscussionsSearchSource from "./components/DiscussionsSearchSource";
import HeaderSecondary from "./components/HeaderSecondary";
import ComposerButton from "./components/ComposerButton";
import DiscussionList from "./components/DiscussionList";
import ReplyPlaceholder from "./components/ReplyPlaceholder";
import AvatarEditor from "./components/AvatarEditor";
import Post from "./components/Post";
import SettingsPage from "./components/SettingsPage";
import TerminalPost from "./components/TerminalPost";
import ChangeEmailModal from "./components/ChangeEmailModal";
import NotificationsDropdown from "./components/NotificationsDropdown";
import UserPage from "./components/UserPage";
import PostUser from "./components/PostUser";
import UserCard from "./components/UserCard";
import UsersSearchSource from "./components/UsersSearchSource";
import NotificationGrid from "./components/NotificationGrid";
import PostPreview from "./components/PostPreview";
import EventPost from "./components/EventPost";
import DiscussionHero from "./components/DiscussionHero";
import PostMeta from "./components/PostMeta";
import DiscussionRenamedPost from "./components/DiscussionRenamedPost";
import DiscussionComposer from "./components/DiscussionComposer";
import LogInButtons from "./components/LogInButtons";
import NotificationList from "./components/NotificationList";
import WelcomeHero from "./components/WelcomeHero";
import SignUpModal from "./components/SignUpModal";
import CommentPost from "./components/CommentPost";
import ComposerPostPreview from "./components/ComposerPostPreview";
import ReplyComposer from "./components/ReplyComposer";
import NotificationsPage from "./components/NotificationsPage";
import PostStreamScrubber from "./components/PostStreamScrubber";
import EditPostComposer from "./components/EditPostComposer";
import RenameDiscussionModal from "./components/RenameDiscussionModal";
import Search from "./components/Search";
import DiscussionListItem from "./components/DiscussionListItem";
import LoadingPost from "./components/LoadingPost";
import PostsUserPage from "./components/PostsUserPage";
import DiscussionPageResolver from "./resolvers/DiscussionPageResolver";
import routes from "./routes";
import ForumApplication from "./ForumApplication";

View File

@@ -1,16 +1,13 @@
import UserPage, { IUserPageAttrs } from './UserPage';
import DiscussionListState from '../states/DiscussionListState';
import type Mithril from 'mithril';
import type User from '../../common/models/User';
/**
* The `DiscussionsUserPage` component shows a discussion list inside of a user
* page.
*/
export default class DiscussionsUserPage extends UserPage {
show(user: any): void;
state: DiscussionListState<{
filter: {
author: any;
};
sort: string;
}>;
export default class DiscussionsUserPage extends UserPage<IUserPageAttrs, DiscussionListState> {
oninit(vnode: Mithril.Vnode<IUserPageAttrs, this>): void;
show(user: User): void;
content(): JSX.Element;
}
import UserPage from "./UserPage";
import DiscussionListState from "../states/DiscussionListState";

View File

@@ -1,63 +1,54 @@
import Page, { IPageAttrs } from '../../common/components/Page';
import ItemList from '../../common/utils/ItemList';
import type Mithril from 'mithril';
import type Discussion from '../../common/models/Discussion';
export interface IIndexPageAttrs extends IPageAttrs {
}
/**
* The `IndexPage` component displays the index page, including the welcome
* hero, the sidebar, and the discussion list.
*/
export default class IndexPage extends Page<import("../../common/components/Page").IPageAttrs> {
export default class IndexPage<CustomAttrs extends IIndexPageAttrs = IIndexPageAttrs, CustomState = {}> extends Page<CustomAttrs, CustomState> {
static providesInitialSearch: boolean;
constructor();
oninit(vnode: any): void;
lastDiscussion: any;
lastDiscussion?: Discussion;
oninit(vnode: Mithril.Vnode<CustomAttrs, this>): void;
view(): JSX.Element;
setTitle(): void;
oncreate(vnode: any): void;
onbeforeremove(vnode: any): void;
onremove(vnode: any): void;
oncreate(vnode: Mithril.VnodeDOM<CustomAttrs, this>): void;
onbeforeremove(vnode: Mithril.VnodeDOM<CustomAttrs, this>): void;
onremove(vnode: Mithril.VnodeDOM<CustomAttrs, this>): void;
/**
* Get the component to display as the hero.
*
* @return {import('mithril').Children}
*/
hero(): import('mithril').Children;
hero(): Mithril.Vnode<{}, {}>;
/**
* Build an item list for the sidebar of the index page. By default this is a
* "New Discussion" button, and then a DropdownSelect component containing a
* list of navigation items.
*
* @return {ItemList<import('mithril').Children>}
*/
sidebarItems(): ItemList<import('mithril').Children>;
sidebarItems(): ItemList<Mithril.Children>;
/**
* Build an item list for the navigation in the sidebar of the index page. By
* default this is just the 'All Discussions' link.
*
* @return {ItemList<import('mithril').Children>}
*/
navItems(): ItemList<import('mithril').Children>;
navItems(): ItemList<Mithril.Children>;
/**
* Build an item list for the part of the toolbar which is concerned with how
* the results are displayed. By default this is just a select box to change
* the way discussions are sorted.
*
* @return {ItemList<import('mithril').Children>}
*/
viewItems(): ItemList<import('mithril').Children>;
viewItems(): ItemList<Mithril.Children>;
/**
* Build an item list for the part of the toolbar which is about taking action
* on the results. By default this is just a "mark all as read" button.
*
* @return {ItemList<import('mithril').Children>}
*/
actionItems(): ItemList<import('mithril').Children>;
actionItems(): ItemList<Mithril.Children>;
/**
* Open the composer for a new discussion or prompt the user to login.
*
* @return {Promise<void>}
*/
newDiscussionAction(): Promise<void>;
newDiscussionAction(): Promise<unknown>;
/**
* Mark all discussions as read.
*/
markAllAsRead(): void;
}
import Page from "../../common/components/Page";
import ItemList from "../../common/utils/ItemList";

View File

@@ -2,7 +2,7 @@
* The `NotificationsPage` component shows the notifications list. It is only
* used on mobile devices where the notifications dropdown is within the drawer.
*/
export default class NotificationsPage extends Page<import("../../common/components/Page").IPageAttrs> {
export default class NotificationsPage extends Page<import("../../common/components/Page").IPageAttrs, undefined> {
constructor();
oninit(vnode: any): void;
view(): JSX.Element;

View File

@@ -1,3 +1,7 @@
import UserPage, { IUserPageAttrs } from './UserPage';
import type Post from '../../common/models/Post';
import type Mithril from 'mithril';
import type User from '../../common/models/User';
/**
* The `PostsUserPage` component shows a user's activity feed inside of their
* profile.
@@ -5,34 +9,27 @@
export default class PostsUserPage extends UserPage {
/**
* Whether or not the activity feed is currently loading.
*
* @type {Boolean}
*/
loading: boolean | undefined;
loading: boolean;
/**
* Whether or not there are any more activity items that can be loaded.
*
* @type {Boolean}
*/
moreResults: boolean | undefined;
moreResults: boolean;
/**
* The Post models in the feed.
*
* @type {Post[]}
*/
posts: Post[] | undefined;
posts: Post[];
/**
* The number of activity items to load per request.
*
* @type {number}
*/
loadLimit: number | undefined;
loadLimit: number;
oninit(vnode: Mithril.Vnode<IUserPageAttrs, this>): void;
content(): JSX.Element;
/**
* Initialize the component with a user, and trigger the loading of their
* activity feed.
*/
show(user: any): void;
show(user: User): void;
/**
* Clear and reload the user's activity feed.
*/
@@ -40,21 +37,15 @@ export default class PostsUserPage extends UserPage {
/**
* Load a new page of the user's activity feed.
*
* @param {number} [offset] The position to start getting results from.
* @return {Promise<import('../../common/models/Post').default[]>}
* @protected
*/
protected loadResults(offset?: number | undefined): Promise<import('../../common/models/Post').default[]>;
loadResults(offset?: number): Promise<import("../../common/Store").ApiResponsePlural<Post>>;
/**
* Load the next page of results.
*/
loadMore(): void;
/**
* Parse results and append them to the activity feed.
*
* @param {import('../../common/models/Post').default[]} results
* @return {import('../../common/models/Post').default[]}
*/
parseResults(results: import('../../common/models/Post').default[]): import('../../common/models/Post').default[];
parseResults(results: Post[]): Post[];
}
import UserPage from "./UserPage";

View File

@@ -2,7 +2,9 @@
* The `SettingsPage` component displays the user's settings control panel, in
* the context of their user profile.
*/
export default class SettingsPage extends UserPage {
export default class SettingsPage extends UserPage<import("./UserPage").IUserPageAttrs, undefined> {
constructor();
oninit(vnode: any): void;
content(): JSX.Element;
/**
* Build an item list for the user's settings controls.

View File

@@ -1,3 +1,9 @@
import Page, { IPageAttrs } from '../../common/components/Page';
import ItemList from '../../common/utils/ItemList';
import type User from '../../common/models/User';
import type Mithril from 'mithril';
export interface IUserPageAttrs extends IPageAttrs {
}
/**
* The `UserPage` component shows a user's profile. It can be extended to show
* content inside of the content area. See `ActivityPage` and `SettingsPage` for
@@ -5,54 +11,38 @@
*
* @abstract
*/
export default class UserPage extends Page<import("../../common/components/Page").IPageAttrs> {
constructor();
oninit(vnode: any): void;
export default class UserPage<CustomAttrs extends IUserPageAttrs = IUserPageAttrs, CustomState = undefined> extends Page<CustomAttrs, CustomState> {
/**
* The user this page is for.
*
* @type {User}
*/
user: any;
user: User | null;
oninit(vnode: Mithril.Vnode<CustomAttrs, this>): void;
/**
* Base view template for the user page.
*
* @return {import('mithril').Children}
*/
view(): import('mithril').Children;
view(): JSX.Element;
/**
* Get the content to display in the user page.
*
* @return {import('mithril').Children}
*/
content(): import('mithril').Children;
content(): Mithril.Children | void;
/**
* Initialize the component with a user, and trigger the loading of their
* activity feed.
*
* @param {import('../../common/models/User').default} user
* @protected
*/
protected show(user: import('../../common/models/User').default): void;
show(user: User): void;
/**
* Given a username, load the user's profile from the store, or make a request
* if we don't have it yet. Then initialize the profile page with that user.
*
* @param {string} username
*/
loadUser(username: string): void;
/**
* Build an item list for the content of the sidebar.
*
* @return {ItemList<import('mithril').Children>}
*/
sidebarItems(): ItemList<import('mithril').Children>;
sidebarItems(): ItemList<Mithril.Children>;
/**
* Build an item list for the navigation in the sidebar.
*
* @return {ItemList<import('mithril').Children>}
*/
navItems(): ItemList<import('mithril').Children>;
navItems(): ItemList<Mithril.Children>;
}
import Page from "../../common/components/Page";
import ItemList from "../../common/utils/ItemList";

2
framework/core/js/dist/admin.js generated vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

2
framework/core/js/dist/forum.js generated vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long