Commit Graph

453 Commits

Author SHA1 Message Date
Penar Musaraj
b28d68efbf DEV: Use yarn to manage Highlight.js dependency
Moves Highlight.js files to vendor/assets/javascripts

Adds Highlight.js in yarn package management

Removes old rake task and reliance on NPM to build Highlight.js

Highlight.js is now integrated in the "javascript:update" rake task
2019-01-14 12:46:35 -05:00
Joffrey JAFFEUX
f9648de897
DEV: upgrades from Ember 2.13 to Ember 3.5.1 (#6808)
Co-Authored-By: Bianca Nenciu <nbianca@users.noreply.github.com>
Co-Authored-By: David Taylor <david@taylorhq.com>
2019-01-10 11:06:01 +01:00
Sam
0ca61242b8 FEATURE: polyfill intersection observer for IE11 / iOS Safari
This feature is used for defer loading of images and in future for post cloaking

This gives us a polyfill so we can safely use the feature in problem browsers

The polyfill supports "polling" but it does not appear we need it yet.

If we discover anything odd here, consider setting poll interval per:

https://github.com/w3c/IntersectionObserver/tree/master/polyfill

```
var io = new IntersectionObserver(callback);
io.POLL_INTERVAL = 100; // Time in milliseconds.
```

Keeping the mutation observer cause we often mutate the DOM
2018-12-12 15:36:08 +11:00
Penar Musaraj
56948896ff UX: replace FA5 compress/expand icons
Adds a new SVG sprite file that contains non-FontAwesome 5 icons to our subset.

Adds the FontAwesome 4.7.0 icons for expand / collapse.
2018-12-03 22:29:20 -05:00
David Taylor
404acef6e3 DEV: Move run-qunit.js out of the vendor directory 2018-12-03 16:16:37 +00:00
Sam
74b300110f DEV: lint run-qunit
also handles situation where startsWith is missing, when this happens
simply log

This corrects an issue where console.log explodes autospec
2018-11-27 17:41:29 +11:00
Penar Musaraj
03deda2147
Upgrade to FontAwesome 5 (take two) (#6673)
* Add missing icons to set

* Revert FA5 revert

 This reverts commit 42572ff

* use new SVG syntax in locales

* Noscript page changes (remove login button, center "powered by" footer text)

* Cast wider net for SVG icons in settings

- include any _icon setting for SVG registry (offers better support for plugin settings)

- let themes store multiple pipe-delimited icons in a setting

- also replaces broken onebox image icon with SVG reference in cooked post processor

* interpolate icons in locales

* Fix composer whisper icon alignment

* Add support for stacked icons

* SECURITY: enforce hostname to match discourse hostname

This ensures that the hostname rails uses for various helpers always matches
the Discourse hostname

* load SVG sprite with pre-initializers

* FIX: enable caching on SVG sprites

* PERF: use JSONP for SVG sprites so they are served from CDN

This avoids needing to deal with CORS for loading of the SVG

Note, added the svg- prefix to the filename so we can quickly tell in
dev tools what the file is

* Add missing SVG sprite JSONP script to CSP

* Upgrade to FA 5.5.0

* Add support for all FA4.7 icons

- adds complete frontend and backend for renamed FA4.7 icons

- improves performance of SvgSprite.bundle and SvgSprite.all_icons

* Fix group avatar flair preview

- adds an endpoint at /svg-sprites/search/:keyword

- adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset

* Remove FA 4.7 font files
2018-11-26 16:49:57 -05:00
Sam
42572ff138 Revert font awesome 5 changes
We are still pushing ahead on this 100% just need a bit longer to prepare
all plugins
2018-11-08 16:12:18 +11:00
Penar Musaraj
005e1ecb9b
FEATURE: Update Font Awesome to v5.4.1 and SVGs (#6557)
* First take on subsetting svg icons

* FontAwesome 5 svg subset WIP

* Include icons from plugins/badges into svg sprite subset

* add svg icon support to themes

* Add spec for SvgSprite

* Misc. SVG icon fixes

* Use FA5 svgs in local-dates plugin

* CSS adjustments, fix SVG icons in group flair

* Use SVG icons in poll plugin

* Add SVG icons to /wizard
2018-11-07 13:05:43 -05:00
Kris
c219a5fb1e
Add btn-default class to all default buttons (#6521) 2018-10-24 16:09:36 -04:00
Penar Musaraj
4ae9cb28e4 remove probes.js, highlight.pack.js 2018-10-04 13:50:54 -04:00
Penar Musaraj
cd82107976 use yarn to manage test vendor dependencies, upgrade sinon to v6.3.5 2018-10-04 11:06:14 -04:00
Penar Musaraj
dc8a16b43b
Use Yarn to manage dependencies, cleanup unused bootstrap libs (#6436) 2018-10-03 10:15:43 -04:00
Sam
49f1f10f75 file is a .js file so don't use let 2018-09-13 14:58:45 +10:00
Sam
daa02431df FIX: remove div used to measure textarea position
Also corrects the positioning of autocomplete (when typing @ or emoji)

Previously there were edge conditions where autocomplete would be hundreds
of pixels away due to a bug measuring.


This correct an issue where Firefox ends up having an enormous blank space
at the bottom of topics after editing.
2018-09-13 14:53:32 +10:00
Guo Xiang Tan
a033327b93 Manage qunit via yarn. 2018-09-11 15:07:28 +08:00
Guo Xiang Tan
fb96ab4464
Delete pretender.js 2018-09-07 21:26:36 +08:00
Vinoth Kannan
f896d6b021 FIX: Skip keypress event if alt key is down 2018-09-04 10:45:35 +05:30
Sam
4194886b62 correct failing test 2018-05-24 13:02:20 +10:00
Sam
54d153068a DEV: remove qunit rails fork and add a couple of async tests 2018-04-23 16:42:40 +10:00
Sam
6a0aeae91b DEV: clean up JavaScript testing
- Unify runner for autospec and qunit:test
- Report on slowest 30 tests
- Use async await instead of promise tower
2018-04-23 14:43:04 +10:00
Guo Xiang Tan
71b2f8ae1d Use an ENV to trigger --remote-debugging-port instead. 2018-04-12 10:12:02 +08:00
Guo Xiang Tan
560bb02f7c --remote-debugging-port is our best friend in headless mode. 2018-04-12 08:56:58 +08:00
Sam
420739e12c FEATURE: upgrade jQuery to version 3.3.1 2018-03-08 14:31:13 +11:00
Sam
b57d4c87a4 FEATURE: update CommonMark to version 0.28 2018-03-08 12:19:53 +11:00
Joffrey JAFFEUX
ac701696b3
FEATURE: replaces tag-chooser/tag-group-chooser with select-kit component
These component were also the last using select2. As a consequence select2 is removed from Discourse in this commit.
2018-02-26 11:42:57 +01:00
scossar
d0c467babc Set caret-clone position based on rtl class 2018-01-19 09:53:39 -08:00
scossar
b652791a20 Add id to clone div; override inline styles for rtl locales 2018-01-19 09:53:39 -08:00
Guo Xiang Tan
6a4f391e38 Switch to chrome headless mode instead of phantomjs. 2017-12-19 16:00:43 +08:00
Guo Xiang Tan
77fbb2306d Fix chrome-qunit-test.js wasn't exiting with the right error code. 2017-12-15 14:12:01 +08:00
David Taylor
d65570a8a1 Preparation for using chrome for qunit in docker images (#5062)
Move use_chrome option to ENV variable
Rewrite script to work with node 6 (current LTS version used in discourse_docker)
Add node stuff to gitignore
2017-08-18 14:08:58 -04:00
David Taylor
c981edfa20 Add option to run qunit tests in headless chrome (#5054) 2017-08-16 07:42:42 -04:00
Sam
902be91a5a FEATURE: CTRL+/ to trigger search even from composer 2017-08-02 16:26:03 -04:00
Régis Hanol
28a397398f change the *correct* timeout value 2017-07-24 11:44:33 +02:00
Régis Hanol
2779fde565 increase js tests suite timeout to allow more time to travis-ci 2017-07-24 11:28:32 +02:00
Joffrey JAFFEUX
bd0607b15b makes emoji-picker position more dynamic 2017-07-19 22:54:55 +02:00
Sam Saffron
d0c5205a52 Feature: Change markdown engine to markdown it
This commit removes the old evilstreak markdownjs engine.

- Adds specs to WhiteLister and changes it to stop using globals
    (Fixes large memory leak)
- Fixes edge cases around bbcode handling
- Removes mdtest which is no longer valid (to be replaced with
    CommonMark)
- Updates MiniRacer to correct minor unmanaged memory leak
- Fixes plugin specs
2017-07-17 11:41:34 -04:00
Sam
79a084dd58 Revert "remove old markdown engine work-in-progress"
This reverts commit ee470b5317.
2017-07-12 18:10:51 -04:00
Sam Saffron
ee470b5317 remove old markdown engine work-in-progress 2017-07-12 17:44:40 -04:00
Guo Xiang Tan
6af40a6ade Remove unused discourse_imgur plugin. 2017-07-10 11:15:22 +09:00
Guo Xiang Tan
13f3de4bf6 Nuke all SiteSetting.stubs from our codebase. 2017-07-07 15:09:14 +09:00
Robin Ward
754c1e5438 Upgrade to Babel 6 2017-07-05 15:25:23 -04:00
Robin Ward
2f480e21a0 Stop using Babel source gem, which is no longer updated 2017-07-05 14:19:16 -04:00
Sam
234694b50f Feature: CommonMark support
This adds the markdown.it engine to Discourse.
https://github.com/markdown-it/markdown-it

As the migration is going to take a while the new engine is default
disabled. To enable it you must change the hidden site setting:
enable_experimental_markdown_it.

This commit is a squash of many other commits, it also includes some
improvements to autospec (ability to run plugins), and a dev dependency
on the og gem for html normalization.
2017-06-23 12:01:33 -04:00
Guo Xiang Tan
d82dbd565b FIX: Remove dependency on rest-client. 2017-06-16 09:42:41 +09:00
Robin Ward
cc525b1a8d Upgrade QUnit to latest version 2017-06-15 10:12:07 -04:00
Arpit Jalan
266acbcc6c Update Translations 2017-05-29 12:23:49 +05:30
Robin Ward
1ef43c33d8 Don't pre-minifiy autoellipsis 2017-05-18 15:16:15 -04:00
Neil Lalonde
8651fc57a5 Update translations 2017-05-15 11:11:18 -04:00
Neil Lalonde
c19bf7e1bd Update translations 2017-03-28 10:50:09 -04:00
Robin Ward
0c46f51412 Use unminified resize to make debugging easier 2017-03-22 16:39:18 -04:00
Robin Ward
f97a6598aa Use the same jQuery in prod and dev, avoid minimizing twice 2017-03-22 15:48:37 -04:00
Neil Lalonde
4271aa0b48 Update translations 2017-03-08 11:54:01 -05:00
Neil Lalonde
d848916357 FEATURE: Greek language support, thanks to Vasilis Vlachokyriakos 2017-03-01 15:52:55 -05:00
Robin Ward
ba8202d199 FIX: Silence DOMException errors when running phantomjs 2017-02-17 16:21:35 -05:00
Neil Lalonde
56233e9ec6 Update translations 2017-02-13 16:42:15 -05:00
Neil Lalonde
8ab327665f Update translations 2017-01-26 12:22:14 -05:00
Robin Ward
e03d5e2140 Reapply Ember 2.10 for good this time!
This reverts commit ddd299f4aa.
2016-12-19 11:19:10 -05:00
Robin Ward
ddd299f4aa Revert "Revert "Revert Ember 2.10+ for a short while""
This reverts commit 76bbc481cb.
2016-12-16 10:29:30 -05:00
Robin Ward
76bbc481cb Revert "Revert Ember 2.10+ for a short while"
This reverts commit 21682fd60b.
2016-12-16 09:52:29 -05:00
Robin Ward
21682fd60b Revert Ember 2.10+ for a short while 2016-12-15 16:43:38 -05:00
Robin Ward
28699e66d8 Revert "REVERT: Ember 2.10 -- it's not building properly"
This reverts commit 600541c623.
2016-12-15 10:28:15 -05:00
Neil Lalonde
bad98a4987 Update translations 2016-12-14 13:55:24 -05:00
Robin Ward
600541c623 REVERT: Ember 2.10 -- it's not building properly 2016-12-12 16:19:05 -05:00
Robin Ward
765e5e9186 Upgrade to Ember 2.9 2016-12-12 14:44:29 -05:00
Sawood Alam
49fc54aac6 Add initial Urdu support with RTL direction 2016-12-03 23:17:51 -05:00
Guo Xiang Tan
2ffb42a055 Fix qunit tests on Travis. 2016-11-30 16:30:58 +08:00
Robin Ward
3765ee84e5 FIX: Syntax error in phantomjs 2016-11-25 14:59:16 -05:00
Robin Ward
3bd5ac8015 Fix Wizard unit tests 2016-11-25 14:29:45 -05:00
Robin Ward
2d3518f475 Enable newer version of Ember 2016-11-25 10:09:58 -05:00
Guo Xiang Tan
ed78b47745 Increase timeout for all qunit tests.
* Timeout any test that takes more than 10 seconds.
2016-11-16 18:07:30 +08:00
Robin Ward
0f9e45f283 Allow the loader to understand when files are moved 2016-11-15 11:41:16 -05:00
Robin Ward
7d560ea3d5 More ember-qunit fixes 2016-11-08 14:42:10 -05:00
Robin Ward
6a1c05a268 Upgrade ember-qunit 2016-11-08 14:29:50 -05:00
Sam
1bf0b2a5f4 FEATURE: show timeline component when expanding post progress
- Show fullscreen timeline with title of topic in mobile
- Go to post # kb shortcut now unconditionally uses a modal
- Always show wrench on topics (was missing if progress bar was showing)
- Be smarter about rendering timeline even if composer is open (provided there is room)
2016-10-19 14:29:58 +11:00
Arpit Jalan
3002cc4cc7 Update Translations 2016-10-06 21:21:00 +05:30
Robin Ward
3fac43249c Javascript file was missing 2016-09-22 09:52:19 -04:00
Arpit Jalan
c1c3237d58 Update Translations 2016-09-21 21:16:03 +05:30
Arpit Jalan
e06be6561d Update Translations 2016-08-23 18:48:00 +05:30
Neil Lalonde
f1bfc74e79 Update translations 2016-08-05 14:39:55 -04:00
Neil Lalonde
a3f39866ab Update translations using temporary workaround for Transifex bugs 2016-07-27 13:29:13 -04:00
Robin Ward
bba0fd0654 REFACTOR: PreloadStore to ES6 2016-07-11 12:57:05 -04:00
Robin Ward
a546395397 REFACTOR: Migrate markdown functionality in ES6 2016-07-11 12:57:05 -04:00
Arpit Jalan
4f4c1b54ba Update Translations 2016-06-04 00:15:03 +05:30
Arpit Jalan
e489af0b50 add Estonian language files 2016-06-01 15:25:21 +05:30
Robin Ward
f854eebc5f
FIX: Entering a topic at the bottom would cause scroll jumps 2016-05-31 10:51:59 -04:00
Robin Ward
9ea32bf7d8
Deprecation: Change {{#each x in y}} to {{#each y as |x|}} 2016-05-04 16:18:09 -04:00
Neil Lalonde
b1f798f119 Update translations 2016-05-04 14:22:15 -04:00
Guo Xiang Tan
256d7a00e9 Update sprockets. (#4167)
* Update sass-rails.

* FIX: Tilt dependency has been removed from Ember::Handlebars::Template.

* Update `DiscourseIIFE` to new Sprockets API.

* `Rails.application.assets` returns `nil` in production.

* Move sprockets-rails out of the assets group.

* Pin ember-rails to 0.18.5 which works with Sprockets 3.x.

* Update sprockets to 3.6.0.

* Make `DiscourseSassCompiler` work with Sprockets 3.

* Use `Sass::Rails::SassImporterGlobbing` instead of haxxing our own.

* Moneky patch so that we don't add dependencies for our custom css.

* FIX: Missing class.

* Upgrade ember-handlebars-template.

* FIX: require path needs to share the same root as the folder's path.

* Bump discourse-qunit-rails.

* Update ember-template-compiler.js to 1.12.2.

* `prepend` is private in Ruby 2.0.0.
2016-04-18 10:47:52 +08:00
Arpit Jalan
ddebd76c44 Update Translations 2016-03-23 22:25:29 +05:30
Manel Villar
6a2fe44e51 Support for Galician language added 2016-03-22 16:42:54 +01:00
Marcus Rückert
320d5d64e8 Use sRGB Color Profile when converting images
With the conversion done when uploading or fetching an image we also
lose any embedded color profiles. [This leads to images possibly not rendered
properly in the browsers.][1] To fix the issue we tell imagemagick to render
the image from the embedded color profile to sRGB, which is the color
space used by most browsers.

RT_sRGB.icm is taken from the [RawTherapee repository][2] and is licensed as Public Domain.

[1]: https://meta.discourse.org/t/image-embedded-color-profile/40519
[2]: https://github.com/Beep6581/RawTherapee/blob/master/rtdata/iccprofiles/output/RT_sRGB.icm
2016-03-07 23:42:33 +01:00
Robin Ward
026bba1876 Merge branch 'master' into vdom 2016-02-22 15:28:07 -05:00
Neil Lalonde
7e39619bc9 Update translations 2016-02-22 11:10:12 -05:00
Sam
c404da248a Merge branch 'master' into vdom 2016-02-22 12:20:59 +11:00
Robin Ward
46e4768971 FIX: highlight.js is used, but for highlighting text, not code. 2016-02-18 12:19:00 -05:00
Robin Ward
9b60551d4e Upgrade jQuery 2016-02-11 11:00:41 -05:00
Robin Ward
d1e85bdd8b FEATURE: Use virtual dom framework for faster post rendering 2016-02-11 11:00:40 -05:00
Khoa, Le Ngoc
06e637fc4a Merge remote-tracking branch 'upstream/master' into update-locale-vietnamese
* upstream/master: (185 commits)
  SECURITY: Upgrade rails.
  FIX: new user summary page was broken
  Version bump to v1.5.0.beta9
  Remove addressable from Discourse.
  UX: change glyph when inviting existing user to a topic
  FIX: Allow for large free disk space
  Revert "FIX: disk_space should be a BigDecimal to handle large disk (closes #3923)"
  UX: improve styling of messages and mobile view of messages
  FIX: correct counts on user summary
  FIX: link to filtered down list of badges from summary FEATURE: pick featured badges in summary page
  FIX: do not allow new email to be duplicate FIX: return proper error message when email already exists
  retain unactivated accounts a bit longer default
  FEATURE: blocked users can send and reply to private messages from staff
  Remove Arel patch that has been merged upstream.
  correct path
  little typo
  FIX: Missing tag in CSS.
  PERF: remove 10-20ms of work from every page view
  FIX: remove green background for wiki (this can be re-added via a customization if needed)
  Hotfix for unsubscribe via email
  ...

# Conflicts:
#	.tx/config
2016-01-26 12:44:29 +07:00
Khoa, Le Ngoc
003399bf96 Update translation code 2016-01-22 14:54:48 +07:00