Ilya Kreymer
564f548afa
wombat improvements:
...
- xhr responseURL override, extract original url
- Worker override: if using 'blob:', extract blob and remove any postMessage() rewriting (workers won't have the __WB_pmw function)
- eval() override: conv to string before rewriting
2017-02-05 02:26:02 -05:00
Ilya Kreymer
0e414acfda
setup: remove pyamf as default dep for now
2016-12-21 17:15:41 -08:00
Ilya Kreymer
5690604556
client-side rewrite: add eval() override, add WB_wombat_ prefixes for location
2016-12-02 12:11:54 -08:00
Ilya Kreymer
a8c0ff3c06
client rewrite: fix window.fetch override, create new Request object if url is rewritten
2016-11-23 11:46:01 -08:00
Ilya Kreymer
42a31bbebf
wombat improvements:
...
- history change check: don't reject urls without a slash, check if new url == origin
- new api: override window.fetch() if it exists
- srcset elem rewriting, <source> element srcset override
- ajax: don't add X-Pywb-Requested-With header if url is a data: url
2016-10-19 21:11:16 -07:00
Ilya Kreymer
8b77f66a10
wb_frame.js: make more safe, check that frame actually exists before accessing
2016-10-19 20:57:56 -07:00
Ilya Kreymer
06b9e957e6
vidrw: when in proxy mode, use current protocol for vi_ query
2016-10-03 08:17:13 -07:00
Ilya Kreymer
28dd799516
wombat: auto-disable notifications and geolocation queries
2016-10-01 21:08:53 -07:00
Ilya Kreymer
e97d2fb517
wombat unrewrite: if given a host-relative url (starting with '/') to extract_orig(), extract as host-relative as well if the host matches the current origin -- maintain host-relative urls when possible
2016-10-01 13:53:59 -07:00
Ilya Kreymer
950c31737c
wombat typo: check that __WB_top_frame is not null before using!
2016-09-30 13:49:57 -07:00
Ilya Kreymer
718cd43ae2
client rewrite: improvements for proxy mode
...
- disable most overrides when in proxy mode
- if using rewrite_url(), keep current scheme, instead of defaulting to http
- use 'window._wb_js' to check init
2016-09-29 15:26:12 -07:00
Ilya Kreymer
98e8a75920
vidrw: more permissive flash video rewriting: consider any <object> with flashvars, attempt any youtube-dl playlist
...
bump version to 0.32.2
2016-09-21 11:37:31 -07:00
Ilya Kreymer
0a76a56b91
wombat: edge case: correctly handle <iframe src="javascript:WB_wombat_location=...> assignment created via JS.. custom rewrite_frame_src() added for use with rewrite_elem(), ensures wombat init is inserted first thing after 'javascript:'
2016-09-14 15:44:20 -07:00
Ilya Kreymer
cc65ce914d
wombat improvements (2.16):
...
- rewrite_elem() also rewrite 'poster'
- extract_orig() don't add http:// if nothing extracted
- new override: navigator.sendBeacon() if available
2016-09-14 14:13:59 -07:00
Ilya Kreymer
5fede0fea3
wombat: turn off debugging (accidentally committed)
2016-09-14 13:39:10 -07:00
Ilya Kreymer
1fb6e9b5fa
rewrite: url rewriter: don't rewrite relative urls, only those that start with scheme, / or contain ../ #195
...
update tests to reflect this new behavior
2016-09-14 13:04:46 -07:00
Ilya Kreymer
6452c72b4f
bump versions
2016-09-08 10:31:07 -07:00
Ilya Kreymer
1fe201c528
rewrite: html: rewrite svg <image> tag
...
client: update textContent after rewrite_style() in rewrite_elem()
2016-09-08 10:06:47 -07:00
Ilya Kreymer
895a01933c
wb: allow multiple readystateevent changes, in case data changes (eg. title is available later)
2016-09-02 12:04:30 -07:00
Ilya Kreymer
70a25b6d0f
client rewrite: ensure window.open() windows have wombat inited. if they are set to about:blank, use parser from opener to ensure proper relative url resolving
2016-08-20 13:03:17 -04:00
Ilya Kreymer
099a81b786
wb_frame: add support for optional 'wbinfo.outer_prefix' which if set, is used for making the top frame url ( #191 )
2016-08-20 00:03:21 -04:00
Ilya Kreymer
892ebacead
cross-frame improvements: #191
...
- make hashchange functions use postMessage(), support setting top->replay and replay->top
- special postMessage() option for sending message from top frame -> replay frame
- fix history navigation, mimic top frame history same as replay frame as much as possible
- remove iframe_loaded() callback, using postMessage() notifications only
- include document title in 'load' message
2016-08-19 23:44:15 -04:00
Ilya Kreymer
6af1a7856e
top-frame handling: don't access contents of top frame directly to support cross-domain frames
...
set __WB_top_Frame in wombat if is_framed property is true, don't check wbinfo (#191 )
2016-08-19 13:59:42 -04:00
Ilya Kreymer
b22a29df5f
vidrw: also check for 'src' param as well as movie
2016-08-08 19:50:16 -04:00
Ilya Kreymer
d5adc05cbb
history rewrite check: don't check empty urls ( #188 )
2016-08-01 10:27:38 -04:00
Ilya Kreymer
c3389987cd
frame timestamp extract: fix timestamp extracting timestamp for non-html resources for use with frame display ( #189 )
2016-07-28 10:06:10 -04:00
Ilya Kreymer
42a2fa02fe
wombat: history check fix: ensure check applies to absolute url #188
2016-07-16 13:32:46 -04:00
Ilya Kreymer
64a49b3e4d
wombat: history change improvements ( #188 ):
...
- ensure back, go, forward also propagated to top frame
- ensure pushState propagated as pushState and replaceState as replaceState to top frame
- security: prevent pushState or replaceState from changing to different domain
2016-07-16 13:18:08 -04:00
Ilya Kreymer
0b57f4a352
cookie notification: use postMessage() instead of callback to notify top frame of cookie setting with custom domain, #186
2016-07-01 09:58:25 -04:00
Ilya Kreymer
827ba9b50f
cookies: add optional callback when setting cookie with domain (to experiment with server side handling of custom domain)
2016-06-30 12:26:18 -04:00
Ilya Kreymer
e28f294302
wombat: ensure window.open() rewrite happens even in if open not in prototype
...
rewrite mod: allow empty "" as set mod, check for undefined
2016-05-24 17:55:17 -07:00
Ilya Kreymer
84c829467b
framed replay: use postMessage() instead of custom function to notify of replay frame changing url, include different type of change, eg. load, replaceState, pushState, #181
2016-05-23 12:10:10 -07:00
Ilya Kreymer
94afab0bb2
wombat rewrite: don't add duplicate slash in rel-url resolve
2016-05-17 18:53:00 -07:00
Ilya Kreymer
e5e7c5a7df
wombat: ensure Math.random() overrides use the current window
2016-05-06 09:48:38 -07:00
Ilya Kreymer
033909efe0
wombat: set version to 1.12
...
return 'null' for frameElement ovevrride instead of undefined
2016-05-01 11:46:36 -07:00
Ilya Kreymer
1c97a67763
rewrite client-side improvements:
...
add WB_wombat_frameElement Object prototype property to support frameElement rewriting
document.domain: allow changing to higher-level domain
rewrite_elem: also rewrite <form> action and <input> value, if they are absolute urls
2016-04-30 01:43:40 -07:00
Ilya Kreymer
61381fcac6
wombat rewrite: remove cookie domain if hostname is an IP address
2016-04-07 15:53:26 -07:00
Ilya Kreymer
95a212ed79
wombat rewrite: add custom X-Pywb-Requested-With header with turns off rewriting and is never sent upstream
2016-04-06 12:05:53 -07:00
Ilya Kreymer
63f44cbc26
wombat: bump version to 2.11
2016-03-20 22:54:27 -07:00
Ilya Kreymer
4b8bbb7b40
wombat: fix typo in window.Crypto check!
2016-03-20 22:51:39 -07:00
Ilya Kreymer
d2390ee809
wombat: add check for window.crypto, generate 32-bit values
2016-03-20 22:43:05 -07:00
Ilya Kreymer
08cb02c644
wombat: override window.crypto.getRandomValues() with seeded random
2016-03-20 18:50:45 -07:00
Ilya Kreymer
c76aa17b78
wb.js: pad timestamp to 14 digits
2016-02-25 18:25:28 -08:00
Ilya Kreymer
98843a2551
wombat: call reload() on actual location, possible fix related to #164
2015-12-29 16:17:39 -08:00
Ilya Kreymer
0cf6b40af9
wombat: add option to def_prop() to make overriden property enumerable, make WombatLocation and other loc overrides enumerable, fixes #163
2015-12-18 21:46:50 -08:00
Ilya Kreymer
79b35a64b3
bump wombat version to 2.10
2015-12-13 00:31:01 -08:00
Ilya Kreymer
64fe49d703
wombat: add CSSStyleSheet.prototype href override
...
karma tests: change name to just 'pywb'
2015-12-11 17:33:22 -08:00
Robert Knight
34721a6742
Override HTMLAnchorElement.prototype.toString()
...
The values returned by getting the 'href' and 'toString'
properties of an anchor element should be the same.
This inconsistency broke the URL polyfill in
https://github.com/inexorabletash/polyfill under Microsoft Edge
2015-12-02 20:09:09 +00:00
Robert Knight
977647cea9
Override the baseURI property on the correct object
...
baseURI is a property of Node.prototype
in current browsers and should be overridden there,
except for Safari where it cannot be overridden at all.
2015-11-26 17:09:26 +00:00
Robert Knight
1484b06da6
Avoid changing the writability of the 'href' attr of <base>
...
Wombat overrides document.baseURI and <base>.href in order
to return the original URL rather than the proxied URL.
The <base>.href override however ended up making a writable
attribute read-only, which could trigger script errors
in strict-mode JS.
Fix this by avoiding replacing the setter for a DOM property
if no replacement setter is provided.
Fixes an error loading Hypothesis under Microsoft Edge.
2015-11-26 13:54:47 +00:00