Commit graph

485 commits

Author SHA1 Message Date
2ead06cf05 Adjust margin based on direction (rtl / ltr) 2024-05-19 20:53:47 -03:00
716096e911 Try to improve ThemeSelect.tsx (mobile) 2024-05-19 20:37:56 -03:00
5acb5484df Add padding (mostly for mobile) 2024-05-19 20:35:16 -03:00
9627c60021 Add translatedBy to surahs.json 2024-05-19 20:22:14 -03:00
0ac9e415a6 Update Filter.tsx 2024-05-19 17:30:04 -03:00
e1249e7b81 Add Farsi support
This change is a big one. It adds Farsi support,
which by itself is significant. In the process of
adding Farsi support other significant improvements
were made:

* Select.tsx component
* TLocale (Quran/index.ts)
* ...
2024-05-19 16:51:37 -03:00
793954b0aa Fix prettier + eslint 2024-05-17 02:55:11 -03:00
d299621488 Add opengraph to root path
Default to the canonical (/en/) for the
title, description, and images.
2024-05-16 17:02:35 -03:00
a966e8a8e2 Restructure info.json
The schema has been changed to be easily
interchangeable between different locales,
and these changes make it easier to adopt
Farsi support as well.
2024-05-16 16:17:12 -03:00
2367cc5792 Reduce max width (1024px -> 768px) 2024-05-16 11:12:10 -03:00
deae96fc4b Add Quran.locales 2024-05-15 21:51:04 -03:00
fcb7aa391a Add self-closing icon links 2024-05-15 01:30:16 -03:00
eeaf48bca8 Add canonical and alternate link tags to all 'main' pages 2024-05-15 00:59:40 -03:00
fe32825e2b src/html/*.html.erb => src/html/main/*.html.erb 2024-05-15 00:35:45 -03:00
8d44281079 Run info.json through JSON.pretty_generate() 2024-05-14 23:18:20 -03:00
82cb7e81e0 Populate surah via info.json 2024-05-14 23:09:31 -03:00
5a59e999b3 Separate information about the surah from surah.json
The first element of the array from surah.json has been
moved into its own file (info.json).

Now we have:
* /json/en/1/surah.json (surah content)
* /json/en/1/info.json (info about the surah)
2024-05-14 23:09:13 -03:00
ea8fe925af s|ref|articleRef|g 2024-05-14 16:26:04 -03:00
2e6952eacc Add SurahStream/ 2024-05-14 16:07:57 -03:00
dc9edbe047 Fix render of refresh icon
It didn't appear quite right with an explicit height of 16px
2024-05-09 19:35:37 -03:00
4f282e12f2 Fix format offenses 2024-05-02 10:46:40 -03:00
610297f60a Remove unused src/json/durations/ 2024-05-02 07:52:10 -03:00
d7cb6f62be images/opengraph/ -> images/og/
But most importantly, for src/og/0.png:

* resize to 512x512
* apply a white background
* similar to the format for og/1.png, og/2.png, etc
2024-05-02 07:32:11 -03:00
cc3b8f27a9 quran.png -> 0.png 2024-05-02 07:15:01 -03:00
4df978e688 Remove src/images/flags/ 2024-05-02 07:12:26 -03:00
adfe95103e !0 evaluates as true, returning early for a case we didn't expect
The if guard in this commit is aimed at catching null / undefined.
2024-05-02 05:31:46 -03:00
1d06b50300 Handle 'ms' being null as "zero" in Timer 2024-05-01 12:40:02 -03:00
eedf2a9c8a Enable 'strictNullChecks' 2024-05-01 12:35:56 -03:00
3a9d5ee022 Forward VERSION to SurahIndex.tsx 2024-05-01 11:51:18 -03:00
16f92008d6 Remove line-height from src/css/_base.scss 2024-05-01 11:09:00 -03:00
5cd3d013f2 Add 'ayat' (arabic) 2024-05-01 10:49:05 -03:00
d04f8d01e3 Fix prop order in Stream
As a general rule the locale prop should come first
2024-05-01 09:40:27 -03:00
17dc9a8499 Fix prop order in Filter
As a general rule the 'locale' prop should come first
2024-05-01 09:37:21 -03:00
3fc4e47f9d Fix prop order in Timer 2024-05-01 09:36:28 -03:00
537cd3f780 Add 'onComplete' prop to Timer 2024-05-01 09:34:45 -03:00
ea496dfcc0 Swap arguments of 'formatNumber' 2024-05-01 09:12:48 -03:00
324c4a8c4b Adjust title (stream.html.erb) 2024-05-01 08:35:14 -03:00
7d0fa78efe Fix typo 2024-05-01 08:18:02 -03:00
2b7f4b2370 Adjust <title> (stream.html.erb) 2024-05-01 08:16:58 -03:00
d62e34dd3e Replace noise-y generic types 2024-05-01 08:07:00 -03:00
644b19b8d4 Fix typo 2024-05-01 07:42:46 -03:00
7f9cc18961 Improve audio controls
This change builds on the previous commit. There is increased reliability,
and coverage of more scenarios involving audio.
2024-05-01 07:36:36 -03:00
9b69b6d43b Fix stream audio
The Sound(On|Off)Icon would turn off after the first track ends.
This happened thanks to code that handles audio tracks played for
a single ayah. We can identify the context where we don't want to
automatically disable via 'autoPlay'. Not a great fix but works.

We also top up the Timer count when sound is turned on. That helps
make sure the audio will finish before the timer.
2024-05-01 04:59:47 -03:00
3d78cd6fcf Update Timer.tsx 2024-05-01 04:36:20 -03:00
d3f075e98e Hoist 'audio' (HTMLAudioElement) into parent component
A new approach that gives the caller (parent) control over
the HTMLAudioElement. This will hopefully provide a framework
for a stable implementation that can handle multiple retries
over a slow network.
2024-05-01 03:47:09 -03:00
8890b67dbb Update /(en|ar)/index.html 2024-05-01 00:09:13 -03:00
f544be4144 Fix / improve render of meta tags (stream.html.erb) 2024-05-01 00:00:45 -03:00
6bec11a547 Add static JSON to .js files rather than .html files 2024-04-30 22:46:48 -03:00
e8347fa5a5 Add packages/typescript/Quran/ 2024-04-30 09:43:30 -03:00
9e6297f316 s/selected-option/selected/g 2024-04-30 01:46:22 -03:00