export const elementUrl = "https://element.io";
export const postRefetchSeconds: number = 60 * 1000;
-export const fetchLimit = 20;
+export const fetchLimit = 40;
export const trendingFetchLimit = 6;
export const mentionDropdownFetchLimit = 10;
export const commentTreeMaxDepth = 8;
function notify(info: NotifyInfo, router: any) {
messageToastify(info, router);
- // TODO absolute nightmare bug, but notifs are currently broken.
- // Notification.new will try to do a browser fetch ???
-
- // if (Notification.permission !== "granted") Notification.requestPermission();
- // else {
- // var notification = new Notification(info.name, {
- // icon: info.icon,
- // body: info.body,
- // });
+ if (Notification.permission !== "granted") Notification.requestPermission();
+ else {
+ var notification = new Notification(info.name, {
+ ...{ body: info.body },
+ ...(info.icon.isSome() && { icon: info.icon.unwrap() }),
+ });
- // notification.onclick = (ev: Event): any => {
- // ev.preventDefault();
- // router.history.push(info.link);
- // };
- // }
+ notification.onclick = (ev: Event): any => {
+ ev.preventDefault();
+ router.history.push(info.link);
+ };
+ }
}
export function setupTribute() {
.unwrapOr(false);
}
-interface ChoicesValue {
+export interface ChoicesValue {
value: string;
label: string;
}
},
};
+export const choicesModLogConfig = {
+ shouldSort: false,
+ searchResultLimit: fetchLimit,
+ classNames: {
+ containerOuter: "choices mb-2 custom-select col-4 px-0",
+ containerInner:
+ "choices__inner bg-secondary border-0 py-0 modlog-choices-font-size",
+ input: "form-control",
+ inputCloned: "choices__input--cloned w-100",
+ list: "choices__list",
+ listItems: "choices__list--multiple",
+ listSingle: "choices__list--single py-0",
+ listDropdown: "choices__list--dropdown",
+ item: "choices__item bg-secondary",
+ itemSelectable: "choices__item--selectable",
+ itemDisabled: "choices__item--disabled",
+ itemChoice: "choices__item--choice",
+ placeholder: "choices__placeholder",
+ group: "choices__group",
+ groupHeading: "choices__heading",
+ button: "choices__button",
+ activeState: "is-active",
+ focusState: "is-focused",
+ openState: "is-open",
+ disabledState: "is-disabled",
+ highlightedState: "text-info",
+ selectedState: "text-info",
+ flippedState: "is-flipped",
+ loadingState: "is-loading",
+ noResults: "has-no-results",
+ noChoices: "has-no-choices",
+ },
+};
+
export function communitySelectName(cv: CommunityView): string {
return cv.community.local
? cv.community.title