Commit Graph

406 Commits (master)
 

Author SHA1 Message Date
David A Roberts 9f2c5cb42e Put phrasing content into paragraphs
This removes the need for `p.readability-styled` elements.
6 years ago
David A Roberts c823a6efb2 Fix generate-testcase.js 6 years ago
Gijs Kruitbosch f4ab856992 Check for a document being passed
This provides a descriptive error message if no document is passed, and
ignores the first argument if the second argument looks like
a reasonable DOM document instance.
6 years ago
David A Roberts 7a24801958 Don't include root html node in candidates
Fixes #435
6 years ago
David A Roberts acfd3759a1 Generate XHTML-compatible input for test cases
Fixes the bug noted in the README
6 years ago
David A Roberts d60184966c Remove unused URI parameter from constructor 6 years ago
David A Roberts 5ee03bc960 Stop Readability depending on Node.* constants 6 years ago
Andres Rey 3c76104adb Fix engadget test case 6 years ago
Andres Rey 4b99f41ec9 Add engadget test case 6 years ago
Andres Rey 6c5bc62959 Remove aside tags on test cases 6 years ago
Andres Rey 6fd816496c Clean <aside> tags on _prepArticle 6 years ago
David A Roberts f8d9b1c224 Update test expectations 6 years ago
David A Roberts 8414158fa9 Fix _replaceBrs
Previously, `nextElem` was not actually proceeding to the next element, and therefore aborting the paragraph at the first `<br>` (rather than the first `<br><br>` as the comment indicates).
6 years ago
Joan Espasa Arxer 3ff9a166fb Changed wordThreshold to charThreshold to better reflect the semantics. 6 years ago
Brad Philips 8525c6af36 Fix relative URIs given <base> tags (#422) 6 years ago
Gijs Kruitbosch d598baf02b Improve URL handling in JSDOMParser and Readability.js
This change ups the required node version to 7.0 because it relies on the builtin url module.

We now pass a url when constructing a jsdom document or JSDOMParser document.
Because this is an API change, I'm increasing the package version.

Ultimately, I would like to remove the  argument from the readability constructor. It should
use the documentURI from the document it is passed.
6 years ago
Andres Rey 834672ef86 Return longest text after failing to detect text longer than the configured value (#423)
Save extracted text across attempts and return the longest one when all attempts fail, and add a test case from hukumusume
6 years ago
Tom Z?hner 264b8e8968 Remove link elements when preparing article for display 6 years ago
Thomas Jaggi fd1557560a [Docs] Fixed JSDOM usage note 6 years ago
Andres Rey fa9d8bda48 Add la-nacion test case 7 years ago
Andres Rey 01ffd0c617 Remove "modal" from strings to remove 7 years ago
Gijs 8da91b9eed
Fix omitted semicolon 7 years ago
Gijs 0a30527c85
Explicitly mention lack of `Node` in `node.js` environments 7 years ago
Gijs Kruitbosch 807bf05aa3 Fix className usage so it deals correctly with SVG nodes (fixes #412). 7 years ago
Gijs Kruitbosch c586aeb404 Fix generate-testcase.js script so it keeps `caption` classes 7 years ago
Gijs Kruitbosch ad4dd26448 Update test expectations 7 years ago
Gijs Kruitbosch 092a8aeaff Revert removing ids from elements 7 years ago
Andres Rey eb895b97a2 Add test case for title and h1 discrepancy 7 years ago
Andres Rey 9ce4d87232 Fall back to the original title if after trimming the text we have too many words before the colon. 7 years ago
Andres Rey c2e370c2c7 Add telegraph test case 7 years ago
Andres Rey 5a5c8ba1a2 Add node to elementsToScore when _hasSinglePInsideElement is true 7 years ago
Cameron McCormack 5ad448f831 Update test expectations. 7 years ago
Cameron McCormack d88c9afc63 Use a hard coded classesToPreserve in tests. 7 years ago
Cameron McCormack 6729538c77 Clean IDs and classes from output. 7 years ago
Tomas Dvorak 19b9f9de14 added npmignore for test and benchmarks resources 7 years ago
Björgvin Ragnarsson c3ff1a2d2c remove dead code 7 years ago
Iqbal Ahmed b3fde168cb Allow the word threshold parameter to be configurable 7 years ago
Taylor Hunt b7c32feb25 Remove presentational HTML attributes (#385)
* Remove presentational HTML attributes

Fixes #383

This patch loops through a list of known-presentational attributes in HTML, attempting to remove each from each cleaned element. (Checking for the attribute's existence first seems to just add needless overhead.)

The extra check for the HTML namespace is to avoid removing attributes that inline SVG needs.

* Only remove `width`/`height` for certain elements

Embedded media elements are allowed to have them, but not others.

* Address PR feedback

* Fix loop index formatting
* Only remove `width`/`height` from certain elements
* Combine logic into a single check/remove

* Attempt fixing my recursion

* One weird trick to get your loops to run

* Add inline SVG bailout

Try not to touch any styles for `<svg>`, because it's inherently presentational.

* Update tests to match newly-removed attributes

* Oh those wacky SVGs

The `position:absolute` is a trick to import clipping paths into the document without putting a big 300×150 empty space in it. (`display:none` and such disable the clipPath in some browsers.)

* Whoops, missed some `width`s

* Normalize SVG tagName

JSDOMParser differs from the official DOM here
7 years ago
Gijs Kruitbosch 6f0bd81dfa Provide more useful output when attributes mismatch, r=me,test-only 7 years ago
Gijs Kruitbosch c387d12bc4 Fix eslint issue by unpacking ternary into a proper if statement 7 years ago
Gijs bfd14522c4 Update eslint to try to fix issues on infra 7 years ago
Gijs f6443ed18b Match node version from package.json in travis.yml 7 years ago
Gijs 264946aa15 Require Node >=6.5 to have `.includes` available
Per #382 and http://node.green/, 6.5 should be necessary/sufficient.
7 years ago
SahilAgarwal321 f0edc77cb5 Fixed bugzilla bug list link 7 years ago
Gijs ab09b706ed Mention you need a DOM document object
Per #376 it doesn't seem to be clear that you need a DOM to use Readability. This is an attempt to include this information in the README.
7 years ago
Evan Tseng 924017c686 Merge pull request #370 from evanxd/bug-1347472
Bug 1347472 - Tests for WordPress blogs, r=Gijs
7 years ago
Evan Tseng f6d0840b82 Bug 1347472 - Tests for WordPress blogs, r=Gijs 7 years ago
Evan Tseng 9561aff883 Merge pull request #368 from evanxd/bug-1346717
Bug 1346717 - Tests for youth.cn, r=Gijs
7 years ago
Evan Tseng 0e147aa722 Bug 1346717 - Tests for youth.cn, r=Gijs 7 years ago
Evan Tseng 630a0b7367 Bug 1346155 - Tests for gmw.cn, r=Gijs 7 years ago