Commit graph

214 commits

Author SHA1 Message Date
Nolan Lawson da42c8b4c1
fix: fix circle in svg (#1621)
fixes #1616
2019-10-31 23:01:44 -07:00
Cătălin Mariș f17386c8cb perf: Further optimize used SVGs (#1603) 2019-10-27 10:08:03 -07:00
Nolan Lawson 9f12d1ca07
fix: use small modules for userAgent.js instead of terser magic (#1602) 2019-10-24 20:37:23 -07:00
Nolan Lawson 7c04b86405
fix: use smooth scroll polyfill in Chrome for scroll-to-top (#1601)
* fix: use smooth scroll polyfill in Chrome for scroll-to-top

* rename thunk to __thunk__ for safety
2019-10-24 19:03:10 -07:00
Nolan Lawson ac4d512363
fix: do not cache license files in service worker (#1575) 2019-10-15 06:52:27 -07:00
Nolan Lawson 8b3842f15a
feat: add hashtag autocomplete (#1567)
* feat: add hashtag autocomplete

fixes #1209

* add test and tweak aria label and styles

* do not prefer lowercase

* Change text
2019-10-12 18:06:04 -07:00
Nolan Lawson b32be27cf7
feat: add debug build (#1506) 2019-09-21 13:44:32 -07:00
Nolan Lawson 6358af5d04
feat: add legacy build (#1502)
* feat: add legacy build

* service worker should also be in ES5

* fixup
2019-09-20 23:17:52 -07:00
Nolan Lawson ca9a32d303
feat: add OCR for image descriptions using tesseract.js (#1433)
* feat: add OCR for image descriptions using tesseract.js

* tweak style of alt editor

* remove unnecessary files
2019-08-25 18:33:44 -07:00
Nolan Lawson b7c97118e2
chore: update travis to ubuntu bionic (#1426)
* chore: update travis to ubuntu xenial/bionic

* fix apt packages

* try again

* fixup

* fixup

* fixup

* fixup

* fixup

* simplify to test

* fixup

* fixup

* add stuff back

* add chrome

* fix config

* fixup

* fix build script
2019-08-23 20:46:21 -07:00
Nolan Lawson 4232da5e33 fix: fix lint 2019-08-19 20:23:58 -07:00
Nolan Lawson 00945a3608
chore: update standard to v13 (#1370) 2019-08-03 13:49:37 -07:00
Nolan Lawson 9f3c05b121
chore: fix mastodon fuubar dependency in travis (#1321)
* chore: fix mastodon fuubar dependency in travis

* fixup
2019-07-07 22:54:11 -07:00
Nolan Lawson cfc182a836
fix: fix ffmpeg install in travis (#1318) 2019-07-07 17:39:20 -07:00
Nolan Lawson 85b75900c1
feat: add ability to set focal points for media (#1303)
* feat: add ability to set focal points for media

fixes #739

* fix tests

* actually fix tests

* really really fix tests

* really really really fix tests pinkie swear
2019-07-07 00:14:19 -07:00
Nolan Lawson b2d4279137
chore: update tested mastodon to v2.9.2 (#1289) 2019-06-22 13:21:06 -07:00
Nolan Lawson a35f5ee2d9
feat: implement wellness settings (#1256)
* implement wellness settings

fixes #1192

Adds
- grayscale mode (as well as separate grayscale/dark grayscale
themes)
- disable follower/boost/fav counts (follower counts capped at 10)
- disable unread notification count (red dot)

* fix lint

* fix crawler
2019-06-01 13:07:31 -07:00
Nolan Lawson 0878275ab9
feat: ability to create polls (#1235)
* feat: ability to create polls

fixes #1130

* fix adds and deletes

* fix tests

* fix tests again
2019-05-27 00:24:47 -07:00
Nolan Lawson 45441d3a9e
fix: show poll results, time remaining, allow refresh (#1233)
more work towards #1130
2019-05-26 18:48:04 -07:00
Nolan Lawson 8f477eeccb
feat: add poll notifications (#1229)
more work on #1130
2019-05-26 09:54:35 -07:00
Nolan Lawson 70da9a92a6
fix: close/open websocket on freeze/resume events (#1195)
* fix: close/open websocket on freeze/resume events

attempt to address #14

* fix unit tests
2019-05-08 19:58:32 -07:00
Nolan Lawson 3fa285447d
chore: update to mastodon v2.8.2 (#1181)
* chore: update to mastodon v2.8.2

* fix test
2019-05-05 15:02:14 -07:00
sgenoud 1dec3b55f9 fix: Remove placeholder for cards without images (#1135)
* Remove placeholder for cards without images

* remove no longer needed svg
2019-04-08 19:14:18 -07:00
Nolan Lawson 8549c3a79a
fix: add placeholder icon for opengraph cards without images (#1131) 2019-04-01 20:48:41 -07:00
Nolan Lawson 9553c74799
chore: remove now.json from source control (#1126)
* chore: remove now.json from source control

* fixup
2019-03-31 10:55:54 -07:00
Nolan Lawson 39b6be332a
chore: switch zeit from --team to --score (#1112) 2019-03-22 15:55:22 -07:00
Nolan Lawson 880bc7a38a
perf: use a separate icons.svg file (#1067)
* perf: use a separate icons.svg file

This splits icons into inline and non-inline. The inline ones are high
priority; the rest go in an icons.svg file.

* create SvgIcon.html

* determine inlined svgs at build time
2019-03-02 19:02:06 -08:00
Nolan Lawson eeba66567c
feat: add "accout has moved" banner (#1032)
fixes #472
2019-02-22 20:35:19 -08:00
Nolan Lawson a63e85bf30
feat: report an account or toots (#1016)
fixes #736
2019-02-18 19:55:44 -08:00
Nolan Lawson c6ebe6ab44
chore: use a script to generate the now.json (#1007) 2019-02-16 14:30:34 -08:00
Nolan Lawson 1b9d3b1cd0
feat: implement Web Share API (#991)
fixes #990
2019-02-14 21:26:28 -08:00
Nolan Lawson 30048a7f12
perf: remove duplicate custom props from theme CSS (#969) 2019-02-11 21:04:19 -08:00
Isabelle Knott 503378a400 feat: Add 'switch to instance' buttons next to instances in instance list. (#945) 2019-02-06 20:56:30 -08:00
Nolan Lawson 6d2b3ec072
feat: add pinch-zoom to media dialog (#933)
* feat: add pinch-zoom to media dialog

* fix zoom buttons
2019-02-03 12:33:15 -08:00
Nolan Lawson 9d594f0bac
feat: add carousel for media modal (#928) 2019-02-02 23:03:40 -08:00
Nolan Lawson d198250eab
chore: switch to yarn (#927)
* chore: switch to yarn

BREAKING CHANGE: Pinafore is now using yarn rather than npm, so those
who self-host will need to stop running e.g. `npm install` and run `yarn
install` instead.

* install latest yarn
2019-01-27 17:44:30 -08:00
Nolan Lawson d976b621b8
chore: move inline-script to src (#917) 2019-01-26 10:14:15 -08:00
Nolan Lawson 95336e0657
chore: fix watchers in dev mode (#913) 2019-01-26 09:34:05 -08:00
Nolan Lawson c5394524df
chore: test in mastodon v2.7.0 (#909)
* chore: test in mastodon v2.7.0

* update ruby version

* fix backup script and update fixtures
2019-01-20 13:44:06 -08:00
Nolan Lawson 6b3d53a795
chore: remove pify dependency, use util.promisify (#901) 2019-01-19 15:06:25 -08:00
Nolan Lawson 4a8f65b7fc
chore: refactor src files to src/ directory (#900) 2019-01-19 13:32:36 -08:00
greenkeeper[bot] 26d0b827bc Update rollup to the latest version 🚀 (#860)
* fix(package): update rollup to version 1.0.0

* chore(package): update lockfile package-lock.json

* fix inline script script
2019-01-01 10:42:50 -08:00
Nolan Lawson e6ca246527
fix: use emoji-mart all.json, split out json (#839) 2018-12-18 12:45:49 -08:00
Nolan Lawson 098a20db49
feat: add full emoji picker using emoji-mart (#836)
* feat: add full emoji picker using emoji-mart

Fixes #4

* use a sailboat as the default emoji in the emoji picker

* fix tests

* fix lint
2018-12-18 00:43:51 -08:00
Nolan Lawson 943a1ed5e6
chore: fix build process in dev mode (#835) 2018-12-17 22:42:39 -08:00
Nolan Lawson bb7fe6e30a
chore: make build process faster/simpler (#833)
This gets rid of the awkward checking-in of `template.html` to git (when
it's a built file) and also makes the rebuilds faster and more
consistent by running everything through the same pipeline. So inline
CSS, SVG, and JS are all partially built on-the-fly.

I've basically reinvented gulp, but it's pretty lightweight and
zero-dep, so I'm happy with it.
2018-12-17 17:21:29 -08:00
Nolan Lawson b4164653db
fix: remove font-awesome-svg-png (#810)
* fix: remove font-awesome-svg-png

* update readme
2018-12-15 17:13:27 -08:00
Nolan Lawson 319a158deb
fix: remove non-functional globalize/deglobalize scripts (#800)
fixes #787
2018-12-13 21:32:25 -08:00
Nolan Lawson 3462113c2f
fix: drop CSP support from the exported version (#795)
[skip ci]
2018-12-13 07:58:45 -08:00
Nolan Lawson 5d3ceb9eb5
perf(svgs): remove unused svg <title>s (#778)
* perf(svgs): remove unused svg <title>s

* remove double svg wrapper
2018-12-11 08:12:57 -08:00
Nolan Lawson 4bd181d3cc
fix: update Sapper to latest (#775)
* fix: update to latest sapper

fixes #416

* fix error and debug pages

* requestIdleCallback makes column switching feel way nicer than double rAF

* add export feature

* add better csp info

* workaround for sapper sub-page issue

* clarify in readme about exporting

* fix now config

* switch from rIC to triple raf

* style-loader is no longer used

* update theming guide
2018-12-11 07:31:48 -08:00
Nolan Lawson b2f5f36207
fix(svg): re-inline svg into html (#772)
* Revert "fix(icons): fix icons.svg url (#769)"

This reverts commit 1d34d45da7.

* Revert "perf: use prefetch instead of preload for svgs (#765)"

This reverts commit b73dd548ae.

* Revert "perf: build separate icons.svg file (#762)"

This reverts commit ee45c07314.

* move svg to end of 2xx.html
2018-12-10 00:13:54 -08:00
Nolan Lawson 6a69b193d5
chore: fix wrong order in now alias command (#770) 2018-12-09 10:39:20 -08:00
Nolan Lawson 481a567807
chore: fix travis deploy script (#768) 2018-12-08 18:07:50 -08:00
Nolan Lawson 8eb30d02e9
chore: cleanup travis scripts (#766)
* chore: cleanup travis scripts

* remove unused script
2018-12-08 17:15:01 -08:00
Nolan Lawson ee45c07314
perf: build separate icons.svg file (#762) 2018-12-08 12:46:16 -08:00
Nolan Lawson dd349e2ae3
chore(tests): update mastodon to v2.6.5 (#764)
* chore(tests): update mastodon to v2.6.5

* fix for travis cache of mastodon git repo
2018-12-08 12:46:00 -08:00
Nolan Lawson 7876f82871
fix: build inline script using Rollup (#761)
* fix: build inline script using Rollup

This reduces code duplication and allows the theme engine to work the
same without modifying the code in two places. It does extra extra deps,
but I tried to keep them to a minimum.

* change code comment

* remove unnecessary constant
2018-12-08 11:21:54 -08:00
Nolan Lawson 0515133ece
fix(a11y): fix NVDA crash on long aria-label (#702)
* fix(a11y): fix NVDA crash on long aria-label

fixes #694

* use the word truncated instead of ellipsis

* fix test

* really fix tests
2018-12-01 00:10:30 -08:00
Nolan Lawson e44cafb5fb
feat(scrollbars): add option to disable scrollbars, fix macOS style (#701)
fixes #698 and fixes #700
2018-11-27 19:17:18 -08:00
Nolan Lawson 48a1bd47b3
refactor(themes): use CSS specificity order for themes (#684)
The point of this PR is to make it easier to implement scrollbars (#683).

With this PR, the themes move from a body tag-based system (e.g. `body.theme-scarlet`) to a system where they simply declare global CSS and we use CSS specificity order to give us the right theme.
2018-11-24 00:41:36 -08:00
Nolan Lawson 4124da2439
fix(emojos): fix emojos on Ubuntu and Chrome on Windows (#661)
* fix(emojos): fix emojos on Ubuntu and Chrome on Windows

* fixup

* start working on unit tests

* fixup

* add more tests and fix emoji
2018-11-20 00:01:23 -08:00
Nolan Lawson 0964442815
chore(travis): update to mastodon v2.6.1 (#630)
* chore(travis): update to mastodon v2.6.1

* check if mastodon v2.6.1 has a race condition

* apparently in 2.6.1 direct messages no longer appear in home timeline

* Revert "check if mastodon v2.6.1 has a race condition"

This reverts commit dde8ef8be58eda0563170e6b73165fdcbea54f6b.

* try to fix tests

* fix more tests
2018-11-12 12:59:47 -08:00
Nolan Lawson 1fa37df59a
chore(tests): fix minor bug in restore mastodon data script (#638) 2018-11-12 08:42:08 -08:00
Nolan Lawson 8ff174b42d
chore(travis): download ffmpeg static file (#636) 2018-11-11 21:34:59 -08:00
Nolan Lawson 31c6f152c1
chore(travis): try to speed up ffmpeg install (#635) 2018-11-11 16:37:19 -08:00
Nolan Lawson 5b5c6937d0 chore(travis): fix travis deploy script logic
fixes a mistake introduced in #631
2018-11-11 14:21:10 -08:00
Nolan Lawson 00cafece8c
make mastodon installation faster in dev mode (#624) 2018-11-11 11:12:47 -08:00
Nolan Lawson 6bb4c80450
chore(tests): avoid delaying when inserting every post in tests (#625) 2018-11-11 11:12:41 -08:00
Nolan Lawson 924885e532
fix redis issue in travis without building redis from source (#619) 2018-11-05 08:58:26 -08:00
Nolan Lawson ee942df1e3 build redis from source in travis (#602) 2018-11-04 13:59:14 -08:00
Nolan Lawson 9b2b90b46e
simplify theme definitions (#574)
* simplify theme definitions

* remove rollup dep which is overkill

* fix syntax error

* fix lint

* fix test
2018-09-23 12:26:01 -07:00
Nolan Lawson fbd57d67a7
remove yargs as dependency (#570) 2018-09-23 07:57:07 -07:00
Nolan Lawson 40336dbf41
use Mastodon v2.5.0 for testing (#566)
* use Mastodon v2.5.0 for testing

* update fixtures too
2018-09-22 22:19:02 -07:00
greenkeeper[bot] 8dbc1b0503 Update standard to the latest version 🚀 (#519)
* chore(package): update standard to version 12.0.0

* package lock update

* fix eslint
2018-08-29 21:42:57 -07:00
Nolan Lawson c660c7d3a3
update Mastodon used in tests to v2.4.3 (#447)
* update Mastodon used in tests to v2.4.3

* fix count of total number of statuses
2018-08-19 14:46:48 -07:00
Nolan Lawson fb6df029f3
add "reply all" icon (#392)
fixes #388
2018-06-14 08:42:55 -07:00
Nolan Lawson 5139ae3a84
tests: only check out mastodon master branch (#377) 2018-06-08 21:53:59 -07:00
Nolan Lawson e8d2cd9ffc
tests: quicker login, tweak test setup (#372)
* make tests faster by logging in directly

* downgrade testcafe

* Revert "downgrade testcafe"

This reverts commit 0f78f5ef63f25b6428de2faba476a353a338c695.

* try a delay

* the delay does not do anything

* disable concurrency in testcafe

* make setup script less noisy

* try transparency of 2?

* Revert "the delay does not do anything"

This reverts commit 438b3519a4e0c325e89f0c2a0eff6a7a4ae11ebd.

* try a delay of 400ms

* okay fine delay of 1s

* try concurrency of 4 again
2018-06-08 09:00:20 -07:00
Nolan Lawson 992c3a890d
update to mastodon 2.4.0 in travis (#371)
* update to mastodon 2.4.0 in travis

* lint fix
2018-06-07 15:26:47 -07:00
Nolan Lawson 88c4195e4a
explicitly install ruby 2.5.0 in travis (#345) 2018-05-28 08:26:17 -07:00
Nolan Lawson 6bcab90ac1
try removing explicit rvm install in travis (#344) 2018-05-27 09:27:22 -07:00
Nolan Lawson df6323fba3
switch from copy icon to link icon (#343)
fixes #325
2018-05-26 17:23:27 -07:00
Nolan Lawson 9235726a59
remove sleep while restoring mastodon test data (#338) 2018-05-26 16:18:23 -07:00
Nolan Lawson ed5542781a
add dedicated script for setting up mastodon deps (#336) 2018-05-26 16:18:11 -07:00
Nolan Lawson c0d0b4dd36
add option to copy link to clipboard (#289)
Fixes #288
2018-05-12 15:00:11 -07:00
Nolan Lawson 8089202977
add ability to pin and unpin statuses (#235)
* add ability to pin and unpin statuses

* add another test
2018-04-29 12:28:44 -07:00
Nolan Lawson 7ff45dfb3f
mute and unmute accounts (#127) 2018-04-14 22:18:48 -07:00
Nolan Lawson 283bc78b4f
Add CSP (#119)
Fixes #25
2018-04-14 15:50:16 -07:00
Nolan Lawson 01fe4e5729 travis: attempt to make tests less flaky 2018-04-11 09:19:29 -07:00
Nolan Lawson dac4d120f3 travis: try to fix flaky tests 2018-04-10 20:56:42 -07:00
Nolan Lawson 7488eaebd6 travis: don't print 'waiting for mastodon' so frequently 2018-04-10 20:15:04 -07:00
Nolan Lawson 9643cfc9db emit theme scss as compressed 2018-04-10 20:12:41 -07:00
Nolan Lawson 0f9d797ea8 travis: make tests less noisy 2018-04-10 19:43:36 -07:00
Nolan Lawson 12b903c59d travis: force rails into dev mode 2018-04-10 19:32:47 -07:00
Nolan Lawson e63b856a24 travis: run webpacker:install 2018-04-10 19:22:07 -07:00
Nolan Lawson 5da160ce83 travis: debug foreman start 2018-04-10 19:12:59 -07:00
Nolan Lawson 1360f9fd9d travis: use a postgres password 2018-04-10 18:53:22 -07:00
Nolan Lawson c8b352d131 travis: use special pinafore user for postgres 2018-04-10 18:39:56 -07:00
Nolan Lawson 30ee13146e travis: fix postgres credentials 2018-04-10 17:04:08 -07:00