From dcf9d52961819e4c081e9d6c743464a625915c20 Mon Sep 17 00:00:00 2001 From: Book Pauk Date: Thu, 20 Feb 2020 18:00:03 +0700 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D1=85=D0=BE=D0=B4=20?= =?UTF-8?q?=D0=BD=D0=B0=20quasar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/includer.js | 19 +- .../Reader/SettingsPage/SettingsPage.vue | 6 +- .../Reader/SettingsPage/include/ViewTab.inc | 316 ++---------------- .../SettingsPage/include/ViewTab/Color.inc | 58 ++++ .../SettingsPage/include/ViewTab/Font.inc | 56 ++++ .../SettingsPage/include/ViewTab/Status.inc | 24 ++ .../SettingsPage/include/ViewTab/Text.inc | 160 +++++++++ 7 files changed, 338 insertions(+), 301 deletions(-) create mode 100644 client/components/Reader/SettingsPage/include/ViewTab/Color.inc create mode 100644 client/components/Reader/SettingsPage/include/ViewTab/Font.inc create mode 100644 client/components/Reader/SettingsPage/include/ViewTab/Status.inc create mode 100644 client/components/Reader/SettingsPage/include/ViewTab/Text.inc diff --git a/build/includer.js b/build/includer.js index f805f0a9..eff3e452 100644 --- a/build/includer.js +++ b/build/includer.js @@ -4,21 +4,28 @@ const fs = require('fs'); //пример в коде: // @@include('./test/testFile.inc'); -exports.default = function includer(source) { +function includeRecursive(self, parentFile, source, depth) { + depth = (depth ? depth : 0); + if (depth > 50) + throw new Error('includer: stack too big'); const lines = source.split('\n'); - let result = []; for (const line of lines) { const trimmed = line.trim(); const m = trimmed.match(/^@@[\s]*?include[\s]*?\(['"](.*)['"]\)/); if (m) { - const includedFile = path.resolve(path.dirname(this.resourcePath), m[1]); + const includedFile = path.resolve(path.dirname(parentFile), m[1]); + self.addDependency(includedFile); + const fileContent = fs.readFileSync(includedFile, 'utf8'); - result.push(fileContent); - this.addDependency(includedFile); + result = result.concat(includeRecursive(self, includedFile, fileContent, depth + 1)); } else { result.push(line); } } - return result.join('\n'); + return result; +} + +exports.default = function includer(source) { + return includeRecursive(this, this.resourcePath, source).join('\n'); } \ No newline at end of file diff --git a/client/components/Reader/SettingsPage/SettingsPage.vue b/client/components/Reader/SettingsPage/SettingsPage.vue index ad7a9453..16440700 100644 --- a/client/components/Reader/SettingsPage/SettingsPage.vue +++ b/client/components/Reader/SettingsPage/SettingsPage.vue @@ -41,7 +41,7 @@ -
+
@@include('./include/ViewTab.inc');
@@ -144,7 +144,7 @@ export default @Component({ }) class SettingsPage extends Vue { selectedTab = 'profiles'; -selectedTabOld = null;//todo: remove + selectedViewTab = 'color'; form = {}; fontBold = false; fontItalic = false; @@ -526,7 +526,7 @@ selectedTabOld = null;//todo: remove } .part-header { - border-top: 2px solid #bbbbbb; + border-bottom: 2px solid #bbbbbb; font-weight: bold; font-size: 110%; margin-top: 15px; diff --git a/client/components/Reader/SettingsPage/include/ViewTab.inc b/client/components/Reader/SettingsPage/include/ViewTab.inc index 5725de69..7db29927 100644 --- a/client/components/Reader/SettingsPage/include/ViewTab.inc +++ b/client/components/Reader/SettingsPage/include/ViewTab.inc @@ -1,301 +1,33 @@ - -
Цвет
+ + + + + + -
-
Текст
-
- - - +
- Обои: +
+
+ @@include('./ViewTab/Color.inc');
-
-
-
-
Фон
-
- - - - -
- +
+ @@include('./ViewTab/Font.inc');
-
- -
Шрифт
- -
-
Локальный/веб
-
- - -
- - - Веб шрифты дают большое разнообразие,
- однако есть шанс, что шрифт будет загружаться
- очень медленно или вовсе не загрузится -
-
+
+ @@include('./ViewTab/Text.inc');
-
-
-
Размер
-
- - - +
+ @@include('./ViewTab/Status.inc');
-
- -
-
Сдвиг
-
- - - Сдвиг шрифта по вертикали в процентах от размера.
- Отрицательное значение сдвигает вверх, положительное -
- вниз. Значение зависит от метрики шрифта. -
-
-
-
- -
-
Стиль
-
- - -
-
- - -
Текст
- -
-
Интервал
-
- -
-
- -
-
Параграф
-
- -
-
- -
-
Отступ
-
- - - Слева/справа - - -
- - - Сверху/снизу - - -
-
- -
-
Сдвиг
-
- - - Сдвиг текста по вертикали в процентах от размера шрифта.
- Отрицательное значение сдвигает вверх, положительное -
- вниз. -
-
-
-
- -
-
Скроллинг
-
- - - Замедление скроллинга в миллисекундах.
- Определяет время, за которое текст
- прокручивается на одну строку. -
-
- -
- - - Вид скроллинга: линейный,
- ускорение-замедление и пр. -
-
-
-
- -
-
Выравнивание
-
- - -
-
- -
-
-
- Компактность -
-
- - - Степень компактности текста в процентах.
- Чем больше компактность, тем хуже выравнивание
- по правому краю. -
-
-
- -
-
Обработка
-
- -
-
- -
-
-
- Добавлять пустые -
-
- -
- -
-
-
- - - Html-фильтр вырезает лишние элементы со
- страницы для определенных сайтов, таких как:
- samlib.ru
- www.fanfiction.net
- archiveofourown.org
- и других -
-
-
-
- -
-
Изображения
-
- - - - Выносить все изображения в центр экрана - - -
-
- -
-
-
- -
-
- -
-
-
- Высота не более -
-
- - - Определяет высоту изображения количеством строк.
- В случае превышения высоты, изображение будет
- уменьшено с сохранением пропорций так, чтобы
- помещаться в указанное количество строк. -
-
-
- - -
Строка статуса
- -
-
Статус
-
- - -
-
- -
-
Высота
-
- -
-
- -
-
Прозрачность
-
- -
-
+
\ No newline at end of file diff --git a/client/components/Reader/SettingsPage/include/ViewTab/Color.inc b/client/components/Reader/SettingsPage/include/ViewTab/Color.inc new file mode 100644 index 00000000..fe3bc246 --- /dev/null +++ b/client/components/Reader/SettingsPage/include/ViewTab/Color.inc @@ -0,0 +1,58 @@ + + + +
+
Текст
+
+ + + + + Обои: +
+
+ +
+
+
Фон
+
+ + + + +
+ +
+
diff --git a/client/components/Reader/SettingsPage/include/ViewTab/Font.inc b/client/components/Reader/SettingsPage/include/ViewTab/Font.inc new file mode 100644 index 00000000..de834bb9 --- /dev/null +++ b/client/components/Reader/SettingsPage/include/ViewTab/Font.inc @@ -0,0 +1,56 @@ + + + +
+
Локальный/веб
+
+ + +
+ + + Веб шрифты дают большое разнообразие,
+ однако есть шанс, что шрифт будет загружаться
+ очень медленно или вовсе не загрузится +
+
+
+
+ +
+
Размер
+
+ + + +
+
+ +
+
Сдвиг
+
+ + + Сдвиг шрифта по вертикали в процентах от размера.
+ Отрицательное значение сдвигает вверх, положительное -
+ вниз. Значение зависит от метрики шрифта. +
+
+
+
+ +
+
Стиль
+
+ + +
+
diff --git a/client/components/Reader/SettingsPage/include/ViewTab/Status.inc b/client/components/Reader/SettingsPage/include/ViewTab/Status.inc new file mode 100644 index 00000000..c12c7ad7 --- /dev/null +++ b/client/components/Reader/SettingsPage/include/ViewTab/Status.inc @@ -0,0 +1,24 @@ + + + +
+
Статус
+
+ + +
+
+ +
+
Высота
+
+ +
+
+ +
+
Прозрачность
+
+ +
+
diff --git a/client/components/Reader/SettingsPage/include/ViewTab/Text.inc b/client/components/Reader/SettingsPage/include/ViewTab/Text.inc new file mode 100644 index 00000000..19d19efb --- /dev/null +++ b/client/components/Reader/SettingsPage/include/ViewTab/Text.inc @@ -0,0 +1,160 @@ + + + +
+
Интервал
+
+ +
+
+ +
+
Параграф
+
+ +
+
+ +
+
Отступ
+
+ + + Слева/справа + + +
+ + + Сверху/снизу + + +
+
+ +
+
Сдвиг
+
+ + + Сдвиг текста по вертикали в процентах от размера шрифта.
+ Отрицательное значение сдвигает вверх, положительное -
+ вниз. +
+
+
+
+ +
+
Скроллинг
+
+ + + Замедление скроллинга в миллисекундах.
+ Определяет время, за которое текст
+ прокручивается на одну строку. +
+
+ +
+ + + Вид скроллинга: линейный,
+ ускорение-замедление и пр. +
+
+
+
+ +
+
Выравнивание
+
+ + +
+
+ +
+
+
+ Компактность +
+
+ + + Степень компактности текста в процентах.
+ Чем больше компактность, тем хуже выравнивание
+ по правому краю. +
+
+
+ +
+
Обработка
+
+ +
+
+ +
+
+
+ Добавлять пустые +
+
+ +
+ +
+
+
+ + + Html-фильтр вырезает лишние элементы со
+ страницы для определенных сайтов, таких как:
+ samlib.ru
+ www.fanfiction.net
+ archiveofourown.org
+ и других +
+
+
+
+ +
+
Изображения
+
+ + + + Выносить все изображения в центр экрана + + +
+
+ +
+
+
+ +
+
+ +
+
+
+ Высота не более +
+
+ + + Определяет высоту изображения количеством строк.
+ В случае превышения высоты, изображение будет
+ уменьшено с сохранением пропорций так, чтобы
+ помещаться в указанное количество строк. +
+
+