add placeholderView component
This commit is contained in:
Vendored
+22
-6
@@ -3238,6 +3238,11 @@
|
|||||||
return TaskEntry(taskViewModel);
|
return TaskEntry(taskViewModel);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// src/View/Components/placeholderView.tsx
|
||||||
|
function PlaceholderView(text) {
|
||||||
|
return /* @__PURE__ */ createElement("div", { class: "width-100 height-100 flex-column justify-center align-center" }, /* @__PURE__ */ createElement("span", { class: "secondary slide-up" }, text));
|
||||||
|
}
|
||||||
|
|
||||||
// src/View/ChatPages/calendarPage.tsx
|
// src/View/ChatPages/calendarPage.tsx
|
||||||
function CalendarPage(coreViewModel2, calendarPageViewModel) {
|
function CalendarPage(coreViewModel2, calendarPageViewModel) {
|
||||||
calendarPageViewModel.loadData();
|
calendarPageViewModel.loadData();
|
||||||
@@ -3279,7 +3284,9 @@
|
|||||||
[listState],
|
[listState],
|
||||||
() => {
|
() => {
|
||||||
if (listState.value.size == 0) {
|
if (listState.value.size == 0) {
|
||||||
return /* @__PURE__ */ createElement("div", { class: "width-100 height-100 flex-column justify-center align-center" }, /* @__PURE__ */ createElement("span", { class: "secondary slide-up" }, coreViewModel2.translations.chatPage.calendar.noEvents));
|
return PlaceholderView(
|
||||||
|
coreViewModel2.translations.chatPage.calendar.noEvents
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
return /* @__PURE__ */ createElement(
|
return /* @__PURE__ */ createElement(
|
||||||
"div",
|
"div",
|
||||||
@@ -4377,7 +4384,9 @@
|
|||||||
() => {
|
() => {
|
||||||
const selectedBoardId = taskPageViewModel.selectedBoardId.value;
|
const selectedBoardId = taskPageViewModel.selectedBoardId.value;
|
||||||
if (selectedBoardId == void 0) {
|
if (selectedBoardId == void 0) {
|
||||||
return /* @__PURE__ */ createElement("div", { class: "pane align-center justify-center" }, /* @__PURE__ */ createElement("span", { class: "secondary" }, coreViewModel2.translations.chatPage.task.noBoardSelected));
|
return PlaceholderView(
|
||||||
|
coreViewModel2.translations.chatPage.task.noBoardSelected
|
||||||
|
);
|
||||||
}
|
}
|
||||||
const selectedBoard = taskPageViewModel.boardViewModels.value.get(selectedBoardId);
|
const selectedBoard = taskPageViewModel.boardViewModels.value.get(selectedBoardId);
|
||||||
if (selectedBoard == void 0) {
|
if (selectedBoard == void 0) {
|
||||||
@@ -6420,7 +6429,16 @@
|
|||||||
|
|
||||||
// src/View/Components/splitModal.tsx
|
// src/View/Components/splitModal.tsx
|
||||||
function SplitModal(leftView, rightView, extendedStyle = false, navigationState) {
|
function SplitModal(leftView, rightView, extendedStyle = false, navigationState) {
|
||||||
const view = /* @__PURE__ */ createElement("div", { class: "split-modal", "toggle:extended": extendedStyle, "toggle:primitive": navigationState == void 0 }, /* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("div", { class: "scroll-area", "children:set": leftView })), /* @__PURE__ */ createElement("div", { class: "scroll-area", "children:set": rightView }));
|
const view = /* @__PURE__ */ createElement(
|
||||||
|
"div",
|
||||||
|
{
|
||||||
|
class: "split-modal",
|
||||||
|
"toggle:extended": extendedStyle,
|
||||||
|
"toggle:primitive": navigationState == void 0
|
||||||
|
},
|
||||||
|
/* @__PURE__ */ createElement("div", null, /* @__PURE__ */ createElement("div", { class: "scroll-area", "children:set": leftView })),
|
||||||
|
/* @__PURE__ */ createElement("div", { class: "scroll-area", "children:set": rightView })
|
||||||
|
);
|
||||||
function scrollToDetails() {
|
function scrollToDetails() {
|
||||||
view.scrollLeft = view.scrollWidth;
|
view.scrollLeft = view.scrollWidth;
|
||||||
}
|
}
|
||||||
@@ -6871,9 +6889,7 @@
|
|||||||
function SettingsRegionalPane(coreViewModel2, settingsViewModel2) {
|
function SettingsRegionalPane(coreViewModel2, settingsViewModel2) {
|
||||||
return /* @__PURE__ */ createElement("div", { class: "slide-up" }, /* @__PURE__ */ createElement("h2", null, coreViewModel2.translations.settings.pages.regional), /* @__PURE__ */ createElement("hr", null), /* @__PURE__ */ createElement("h3", null, coreViewModel2.translations.settings.language), OptionButtonList(
|
return /* @__PURE__ */ createElement("div", { class: "slide-up" }, /* @__PURE__ */ createElement("h2", null, coreViewModel2.translations.settings.pages.regional), /* @__PURE__ */ createElement("hr", null), /* @__PURE__ */ createElement("h3", null, coreViewModel2.translations.settings.language), OptionButtonList(
|
||||||
new ListState(
|
new ListState(
|
||||||
Object.values(Languages).map(
|
Object.values(Languages).map((x) => [languageNames[x], x])
|
||||||
(x) => [languageNames[x], x]
|
|
||||||
)
|
|
||||||
),
|
),
|
||||||
settingsViewModel2.language
|
settingsViewModel2.language
|
||||||
), /* @__PURE__ */ createElement("hr", null), /* @__PURE__ */ createElement("h3", null, coreViewModel2.translations.settings.firstDayOfWeekLabel), OptionButtonList(
|
), /* @__PURE__ */ createElement("hr", null), /* @__PURE__ */ createElement("h3", null, coreViewModel2.translations.settings.firstDayOfWeekLabel), OptionButtonList(
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import { TaskSettingsModal } from "../Modals/taskSettingsModal";
|
|||||||
import { TaskViewModelToEntry } from "../Components/taskEntry";
|
import { TaskViewModelToEntry } from "../Components/taskEntry";
|
||||||
import { setFocusWithDelay } from "../utility";
|
import { setFocusWithDelay } from "../utility";
|
||||||
import CoreViewModel from "../../ViewModel/Global/coreViewModel";
|
import CoreViewModel from "../../ViewModel/Global/coreViewModel";
|
||||||
|
import { PlaceholderView } from "../Components/placeholderView";
|
||||||
|
|
||||||
export function CalendarPage(
|
export function CalendarPage(
|
||||||
coreViewModel: CoreViewModel,
|
coreViewModel: CoreViewModel,
|
||||||
@@ -58,15 +59,9 @@ export function CalendarPage(
|
|||||||
[listState],
|
[listState],
|
||||||
() => {
|
() => {
|
||||||
if (listState.value.size == 0) {
|
if (listState.value.size == 0) {
|
||||||
return (
|
return PlaceholderView(
|
||||||
<div class="width-100 height-100 flex-column justify-center align-center">
|
coreViewModel.translations.chatPage.calendar
|
||||||
<span class="secondary slide-up">
|
.noEvents,
|
||||||
{
|
|
||||||
coreViewModel.translations.chatPage
|
|
||||||
.calendar.noEvents
|
|
||||||
}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import { BoardPage } from "./boardPage";
|
|||||||
import { BoardViewModelToEntry } from "../Components/boardEntry";
|
import { BoardViewModelToEntry } from "../Components/boardEntry";
|
||||||
import TaskPageViewModel from "../../ViewModel/Pages/taskPageViewModel";
|
import TaskPageViewModel from "../../ViewModel/Pages/taskPageViewModel";
|
||||||
import CoreViewModel from "../../ViewModel/Global/coreViewModel";
|
import CoreViewModel from "../../ViewModel/Global/coreViewModel";
|
||||||
|
import { PlaceholderView } from "../Components/placeholderView";
|
||||||
|
|
||||||
export function TaskPage(
|
export function TaskPage(
|
||||||
coreViewModel: CoreViewModel,
|
coreViewModel: CoreViewModel,
|
||||||
@@ -23,15 +24,8 @@ export function TaskPage(
|
|||||||
() => {
|
() => {
|
||||||
const selectedBoardId = taskPageViewModel.selectedBoardId.value;
|
const selectedBoardId = taskPageViewModel.selectedBoardId.value;
|
||||||
if (selectedBoardId == undefined) {
|
if (selectedBoardId == undefined) {
|
||||||
return (
|
return PlaceholderView(
|
||||||
<div class="pane align-center justify-center">
|
coreViewModel.translations.chatPage.task.noBoardSelected,
|
||||||
<span class="secondary">
|
|
||||||
{
|
|
||||||
coreViewModel.translations.chatPage.task
|
|
||||||
.noBoardSelected
|
|
||||||
}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
const selectedBoard =
|
const selectedBoard =
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import * as React from "bloatless-react";
|
||||||
|
|
||||||
|
export function PlaceholderView(text: string) {
|
||||||
|
return (
|
||||||
|
<div class="width-100 height-100 flex-column justify-center align-center">
|
||||||
|
<span class="secondary slide-up">{text}</span>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -9,7 +9,11 @@ export function SplitModal(
|
|||||||
navigationState?: React.State<any>,
|
navigationState?: React.State<any>,
|
||||||
) {
|
) {
|
||||||
const view = (
|
const view = (
|
||||||
<div class="split-modal" toggle:extended={extendedStyle} toggle:primitive={navigationState == undefined}>
|
<div
|
||||||
|
class="split-modal"
|
||||||
|
toggle:extended={extendedStyle}
|
||||||
|
toggle:primitive={navigationState == undefined}
|
||||||
|
>
|
||||||
<div>
|
<div>
|
||||||
<div class="scroll-area" children:set={leftView}></div>
|
<div class="scroll-area" children:set={leftView}></div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -137,9 +137,7 @@ function SettingsRegionalPane(
|
|||||||
<h3>{coreViewModel.translations.settings.language}</h3>
|
<h3>{coreViewModel.translations.settings.language}</h3>
|
||||||
{OptionButtonList(
|
{OptionButtonList(
|
||||||
new React.ListState<[string, string]>(
|
new React.ListState<[string, string]>(
|
||||||
Object.values(Languages).map(
|
Object.values(Languages).map((x) => [languageNames[x], x]),
|
||||||
(x) => [languageNames[x], x],
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
settingsViewModel.language,
|
settingsViewModel.language,
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in New Issue
Block a user