Commit Graph
100 Commits
Author SHA1 Message Date
Ilya Kreymer 33cc6b2082 update wabac.js/wombat.js (apply override, window.chrome fixes) 2020-08-18 10:47:23 -07:00
Ilya Kreymer 429f06453e ui text tweak: update location placeholder to mention text search 2020-08-12 15:49:34 -07:00
Ilya Kreymer 531f16a433 pages tweaks:
- display no results message in main view
- better view of score column in mobile view
- rename: rwp:// -> search://, Score -> Match
- only cache textIndex if non-zero result
2020-08-10 23:49:00 -07:00
Ilya Kreymer 4efce70a39 text search and ui fixes:
- text support via <coll>/textIndex api, fallback to existing pageList text data
- page sorting: add score column for page search results with query
- safari: add min-height: fit-content for safari
- refresh: ensure replay refresh triggers refresh icon
- embeds: ensure deep linking working for search view pages (map view and query params)
2020-08-07 16:48:02 -07:00
Ilya Kreymer 69e7982d31 ui tweaks:
- show pages found in sidebar if in desktop mode
- allow refresh on search views, just do reload
2020-08-05 23:05:53 -07:00
Ilya Kreymer 849f8ff4eb ui refactoring on search views:
- fix flexbox sizing
- update icons
- url-resources view: make responsive, use wr-sorter
- pages: various tweaks, hide sidebar for better responsive view!
- app: hide nav buttons when in archive view to avoid redundant
- add page view button to context menu
2020-08-05 20:05:12 -07:00
Ilya Kreymer 6b343e7e65 move tabs below location bar
pages: move sidebar below search bar, hide if no lists
use 'min-height: 0' to finally fix flexbox layout on all tabs!
2020-08-04 23:12:44 -07:00
Ilya Kreymer bb20379336 add location bar to be part of collection,
use rwp:// scheme to indicate search pages
2020-08-01 08:47:08 -07:00
Ilya Kreymer 3f51f35b9f embeds: add automatic reload if serivceWorker is available but controller is not to catch any race condition where serviceWorker has not yet been activated 2020-07-27 17:29:58 -07:00
Ilya Kreymer 8737319b5b embeds: tweak no service-worker error message, update to latest wabac/sw 2020-07-23 08:35:39 -07:00
Ilya Kreymer 05b2e96ca5 sw update: update to latest wabac.js (improved fuzzy matching for yt embeds) 2020-07-19 20:28:04 -07:00
Ilya Kreymer f4b320dde5 service-worker check:
- on-load, display error if service worker support is not available
- for embeds, display service worker unavailable error right away, don't attempt to load iframe
trailing slash check: redirect http://example.com -> http://example.com/
resources/page query: if no query= param is set, use url as query (when switching from replay, url is used as query)
2020-07-14 21:57:54 -07:00
Ilya Kreymer 46288c2b5b ui: add back support for HAR, WBN loading, remove 'try again' for non-embed (won't work with local files) 2020-07-09 21:16:06 -07:00
Ilya Kreymer 3c06dcddbc improved reading of wacz, wabac.js update 2020-07-08 23:04:15 -07:00
Ilya Kreymer c4ade08157 app: update to electron 9.0.5 2020-07-03 18:44:57 -07:00
Ilya Kreymer 34585550b6 load canceled: fix 'loading canceled' message not displaying, add 'try again' button to non-embed mode as well 2020-07-03 17:55:26 -07:00
Ilya Kreymer 3e99ec2378 update to latest wabac.js, includes progress update for wacz, minor fixes
ui: don't show 'capture date' in menu if no date yet
2020-07-03 17:03:03 -07:00
Ilya Kreymer 75ccdd5f00 replay bar tweaks:
- menu: add capture date, and about replayweb.page, logo + version
- ensure loader anim is shown even on mobile
- location bar: esc resets to current url
- bump verstion to 1.0.1
2020-06-30 09:19:45 -07:00
Ilya Kreymer 7066b32e95 embed loading: for loading errors, show 'Try Again' instead of 'Back', addreses issues in (esmero/format_strawberry#81) 2020-06-29 19:49:57 -07:00
Ilya Kreymer 98409a7efb update to latest wabac sw.js to address srcset issue (#5) 2020-06-26 13:08:03 -07:00
Ilya Kreymer 71b0fd3d19 embed improvements:
- show back, forward options in default embed mode
- add extra options menu in embed mode, including 'purge cache + full reload'
- responsive replay bar buttons: show in menu when tablet or mobile, in non-embed mode, only show on mobile
- 'full' embed mode, show only logo and info menu, no user guide/terms
2020-06-25 20:30:52 -07:00
Ilya Kreymer 7f13910bc0 update to latest sw (addresses #5)
replay bar tweaks: hide date display when location bar is focused, remove outline on buttons when focused
2020-06-25 12:37:40 -07:00
Ilya Kreymer eb9c5eaceb update to latest wabac.js 2020-06-24 18:05:30 -07:00
Ilya Kreymer ee7c1404ac update to latest wabac sw.js (2.0.1) 2020-06-23 22:51:41 -07:00
Ilya Kreymer d1d5fbd0e4 misc fixes:
- import from '@webrecorder/wabac' package for sw.js, though using github overrides for now
- replay: show loading spinner on beforeunload event in iframe
- embed: support passing basePageUrl param as part of extraConfig for custom top-level page
2020-06-21 20:49:16 -07:00
Ilya Kreymer e9bfcb28e9 ui: fix replay url switch resulting in refresh, move <form> tag
sw: update to latest sw, includes fix for skipping metadata records with no url, not reading from stream if already buffered
2020-06-18 17:46:43 -07:00
Ilya Kreymer 8b6c06d46e docs tweak: add examples page, link to examples from home page
update to latest sw, ensure OPTIONS is not indexed as mentioned in webrecorder/pywb#569
ensure plugins-* directories are excluded from git and from jekyll
bump version to 1.0.1-alpha.0
2020-06-16 16:29:52 -07:00
Ilya Kreymer ae872cd219 docs and README: add wacz format doc, tweak links, tweak README 2020-06-11 15:08:24 -07:00
Ilya Kreymer 53bb291406 update sw.js 2020-06-11 08:30:35 -07:00
Ilya Kreymer 98ea27498d rename 'how it works' -> 'user docs'
remove download for now
2020-06-11 02:15:55 -07:00
Ilya Kreymer b9a4089c6b license / docs pass:
- add new docs for loading, exploring, sharing, embedding, and offline usage
- add license file / license banner

electron app:
- for now, don't bundle docs, open in native browser

embeds:
- support 'embed' option, 'replayonly' or 'full' (default if no url)

ui:
- display package.json version in info menu

package.json:
- update scripts to match README
- move electron entrypoint into extraMetadata
- add scripts for packaging as module

README: minor edits
2020-06-11 00:42:10 -07:00
Ilya Kreymer d71a9e77bc electron build:
- build both 32 and 64-bit for windows
- download both 32 and 64-bit flash plugins for windows, use correct one based on platform.arch
- sign and publish only on master
2020-06-10 12:20:23 -07:00
Ilya Kreymer 479b62abe1 travis: switch to 'yarn run release' to ensure draft updated 2020-06-10 11:07:31 -07:00
Ilya Kreymer cceb1ea457 ui: rename collapse/expand list to just show/hide
electron app: use single-instance lock to avoid multiple instances (will not work with indexeddb)
2020-06-10 10:25:09 -07:00
Ilya Kreymer 935bb2a828 ci: pass signing vars for win/linux build, use 'dist' and try default publish semantics 2020-06-10 10:24:01 -07:00
Ilya Kreymer b6f70975be misc fixes:
- don't attempt to resolve sourceUrl (breaks file urls)
- pass blob to loader
- add exact size progress update, if available
- google drive loader: switch to manual auth for any error
2020-06-10 08:35:02 -07:00
Ilya Kreymer 6ed0e510e2 test fix on windows 2020-06-09 20:53:16 -07:00
Ilya Kreymer 335c2bfd35 electron app: send filename in query filename= param, instead of as part of url path, more robust and should work on windows 2020-06-09 18:58:17 -07:00
Ilya Kreymer 1f226fe91a ci: set up travis build
- use seperate plugin dirs, plugins-mac, plugins-win, plugins-linux for the flash plugin to support
simultaneous win and linux build
- enable notariziation, use env vars to run on travis
- ci runs 'yarn run dist', skip docs build from ci
- pass GH_TOKEN to docker containers
- update to latest electron packages
2020-06-09 18:31:37 -07:00
Ilya Kreymer 101c4b3319 misc ui tweaks, mostly pages:
- add download menu
- add selection hilite
- tweak colors on chooser
disable notarize for now
2020-06-08 21:53:04 -07:00
Ilya Kreymer 149558f647 various tweaks for pages:
- support page column size, page deletion
- page deletion only enabled if has size, for now
- sorter can default to desc, tweak color for pages panel, default sort by time, descending
2020-06-01 13:45:59 -07:00
Ilya Kreymer fb3d137d24 rename curated-lists -> story, split pages into own top-level tab again
pages also has sidebar for filtering by list
pages, lists, curatedPages loaded on collection init
curated list only store page id and optional desc, resolved to pages at runtime
2020-05-29 23:32:22 -07:00
Ilya Kreymer eebe66cbf5 ui tweaks:
- add filtering to collection index
- tweak styles for chooser, sorter
2020-05-29 12:58:30 -07:00
Ilya Kreymer afd9d8bca9 update electron builder, use set name to 'replaywebpage', productName to 'ReplayWeb.page' 2020-05-28 20:16:30 -07:00
Ilya Kreymer 890139595e minor tweaks:
- add favicon
- fix replay intro alignment
2020-05-28 18:29:31 -07:00
Ilya Kreymer 6fbefb2f74 minor fix: remove 'flex: 1' to fix ff 2020-05-26 16:05:28 -07:00
Ilya Kreymer dd746e1d55 misc fixes:
- sw: ensure db is inited before api listAll() call
- ui: init dbworker earlier, on app load
- typo: fix date created -> date loader
2020-05-26 15:42:19 -07:00
Ilya Kreymer 03023523b7 big ui update, page search + full text
- split file chooser from coll index, insert as header, make file chooser collapsible
- revamp collection index to be responsive
- add separate sorter component, used for collection index and pages
- combine 'curated lists' + pages, with page search + narrative
- ensure page + narrative lists are collapsible
- page search: support title, url and full text search if available, using flexsearch
- page search: keyword highlighting, load all pages, showing in increments of 100
- page and resource search: delay search to 1/4 sec of inactivity to avoid too many queries
- electron app: ensure noCache is set to true for local files
- embedding: remove separate embed.js, just use ui.js for embed as well
- embedding: support embedding iframe in a local origin with just sw.js and ui.js: sw.js serves index.html,
<replay-web-page> embed injects ui.js into iframe
- sw.js, new service worker entry point
- sw and ww inited only from <replay-app-main>, ui.js loaded from <replay-web-page> embed component
2020-05-26 14:43:28 -07:00
Ilya Kreymer ff6de51132 update index.html also 2020-05-24 13:10:46 -07:00
Ilya Kreymer 1e3c2386f9 add missing ui.js 2020-05-24 13:07:05 -07:00
Ilya Kreymer e3d5abdbeb refactor: split frontend into file per component! 2020-05-22 23:43:56 -07:00
Ilya Kreymer 99b5fe4479 add viewport, more responsiveness tweaks, add initial page list tab! 2020-05-22 21:42:33 -07:00
Ilya Kreymer 5ba85b1f9a add webmanifest, update sw 2020-05-22 20:53:06 -07:00
Ilya Kreymer 114abe662b make archive index a sortable table,
make brand heading responsive, hidden on small screens, allow for more space for nav tabs
support copying source url
add date added property for new archives
use css for anim
2020-05-22 08:47:55 -07:00
Ilya Kreymer 9fb4c24b9e don't use baseUrl '/', breaks gh pages! 2020-05-21 19:00:24 -07:00
Ilya Kreymer 220d14aea3 jekyll: move jekyll back to root, but simpler setup, exclude via _config.yml
app: bundle jekyll docs into app, add 'yarn run docs' to build
ui: add back/forward arrows for app only, adjust responsiveness for app, add IS_APP flag injected via preload
ui: add animated logo, friendly message on empty replay frame
app: improve serve logic:
- serve static files from static root
- serve replay from http localhost instead to avoid proxying https for remote requests
- serve local lookup from http prefix also
- catch any fallthrough from replay as 404
- add timestamp to response channels to ensure uniqness
2020-05-21 18:49:26 -07:00
Ilya Kreymer da1e5c03df reorg dir structure:
- keep shared and electron build at root
- move static files for replayweb.page and Jekyll config to docs/
- move Jekyll markdown to docs/docs/
2020-05-20 17:28:03 -07:00
Ilya Kreymer 0b21581836 electron osx build improvements: add notarize support, move build assets to build, add osx security entitlements 2020-05-20 16:27:17 -07:00
Ilya Kreymer 1a2f2c00a2 add electron build!
- use webpack to build electron-main and electron-preload
- intercept 'https' protocol to run on 'https://replayweb.page' in app
- serve local files from 'https://files.replayweb.page'
- support flash in with service worker replay: catch any fallthrough urls and load via intercept with render process callback
- add icons for electron build
2020-05-19 22:49:08 -07:00
Ilya Kreymer abd5060d20 embed: update embed deeplink to use replaceState instead of hash assign 2020-05-19 12:50:48 -07:00
Ilya Kreymer ab8e051ff0 misc ui fixes:
- update logo, fix logo styling in docs
- fix terms modal
- embeds: add option to support 'deep-linking' into embed via hash
2020-05-19 10:25:33 -07:00
Ilya Kreymer 5014cff233 url resources: fix load more not working for multiple mime types, styling fix for header and loading logo, update sw 2020-05-18 19:47:53 -07:00
Ilya Kreymer 6a85bd801e update sw: improved fuzzy matching rules, support for per-collection rules for ziparchive 2020-05-16 20:41:03 -07:00
Ilya Kreymer e995acfdbd misc fixes for embeds:
- update helper proxy url
- don't parse embed args if empty
2020-05-16 12:35:56 -07:00
Ilya Kreymer 077c8cae19 bundle into single js file!
- remove external css - ensure bulma styles don't rely on html, body
- move logo.svg to be loaded inline
- rename scss -> assets
- remove wombat/wombatWorkers, bundled via raw-loader and sw.js
2020-05-16 09:34:49 -07:00
Ilya Kreymer 4df2f78654 index: make entire index scrollable
sorting: add sorting to url resources
2020-05-15 11:37:55 -07:00
Ilya Kreymer ad2ee1ed79 update sw for rewriting fixes 2020-05-15 11:16:13 -07:00
Ilya Kreymer e119a19386 add embed.js 2020-05-14 19:11:56 -07:00
Ilya Kreymer 84f4aa3717 embeds work:
- ability to specify an explicit collection and pass extra config
- reauth: don't show message if reauth pending
- add fullscreen toggle
2020-05-14 19:08:16 -07:00
Ilya Kreymer 822d459859 minor ui tweaks, switch to info icon 2020-05-12 14:07:02 -07:00
Ilya Kreymer 7294c05d2c misc fixes for FF and safari
navbar info item: add dropdown to show info about current archive, source, size and loading mode
2020-05-12 12:59:09 -07:00
Ilya Kreymer f54078627f ui responsiveness: make tabs appear in top bar if enough space, hide text and move to second row for smaller widths 2020-05-12 09:05:18 -07:00
Ilya Kreymer 780d5b74a9 add embed.js for embedding <replay-web-page>!
css tweaks for replay iframe, initial support embed param to hide nav bar
various css tweaks for scrolling!
2020-05-11 19:10:09 -07:00
Ilya Kreymer f6bcc95cdc fix for safari: use type='text', move input out of label 2020-05-10 13:26:33 -07:00
Ilya Kreymer 4132058282 colors: tweak curated page link color to green
sw: support offline loading!
2020-05-10 11:47:02 -07:00
Ilya Kreymer daaa0e8c0d curated pages: raise limit to 1000 for now 2020-05-09 16:25:31 -07:00
Ilya Kreymer ca83c80dc7 url mime search: switch radio buttons to drop down, add more mime type filters 2020-05-09 13:06:36 -07:00
Ilya Kreymer c00da11d10 backwards compat: fallback to sourceUrl if loadUrl not found 2020-05-09 11:05:07 -07:00
Ilya Kreymer eca03efbd9 cleanup info display:
- show sourceUrl for all, also show filename for googledrive:// urls
- remove displayName
- add loadUrl to specify actual loading url
- add support for canceling loading with cleanup
2020-05-09 10:58:02 -07:00
Ilya Kreymer 3cfc9acf17 auth: when using googledrive source, attempt getting new token automatically w/o prompt on replay load
ui: add input validation for file/url chooser, improved error messaging
detect if list is out of range for currList
style tweaks to info for buttons
2020-05-09 08:40:33 -07:00
Ilya Kreymer f37ba87107 gdrive auth work: experimental support to public files w/o auth, fallback to auth 2020-05-08 16:53:58 -07:00
Ilya Kreymer f9191f22d8 style/color tweaks, fix missing redirect after load! 2020-05-07 19:59:20 -07:00
Ilya Kreymer 0796e01068 color/typo tweaks 2020-05-07 15:39:15 -07:00
Ilya Kreymer b548e2fc15 reauth and terms:
- use modal display from sw message to request auth, as redirect may be on a non-html page
- also use modal for terms to avoid leaving page
2020-05-07 15:13:04 -07:00
Ilya Kreymer 4af7983355 fix reauth redirect 2020-05-07 11:19:46 -07:00
Ilya Kreymer 5f148a8325 fixes for firefox and safari:
- ensure progress bar % works on ff, and safari
- don't use URL for parsing custom schemes due to browser differences
- add error messaging for interrupted download
2020-05-07 11:11:14 -07:00
Ilya Kreymer 1cf32c7de4 auth improvements:
- add google drive reauth support, if auth expires (for on-demand downloaded content)
- fix curated page width
2020-05-06 18:09:42 -07:00
Ilya Kreymer c74d0ffaa1 gdrive integration: show authorize button if automatic authorization fails, eg. need to choose account 2020-05-06 09:50:35 -07:00
Ilya Kreymer 62f08f6dd9 more ui tweaks:
- make index scrollable
- don't show 'current archive' until successfully loaded
- begin embed view for wr-replay
- cleanup pageutils
2020-05-05 23:17:43 -07:00
Ilya Kreymer 9241294191 fixes for tab switching and naviation, ensure hash updated and history works
remove replay panel when on other tabs
add delete loader when deleting
adjust size of tabs
2020-05-05 21:16:10 -07:00
Ilya Kreymer 11dc6220a2 various fixes:
- more update related fixes, remove redundant firstUpdated handling, avoid double load()
- add refresh button, loading indicator for replay
- update wombat, add wombatWorkers
- use full bulma again
2020-05-05 00:24:00 -07:00
Ilya Kreymer 19de694d73 update gdrive client id 2020-05-04 12:51:05 -07:00
Ilya Kreymer 3b31490479 add terms page at /?terms 2020-05-04 12:32:21 -07:00
Ilya Kreymer 3a17e12e6c ui nav hashtag fixes: fix messaging to ensure hash tag updates correctly, replay always available, use url= and ts= for shorter hashtag location
jekyll: use remote_theme always to work with gh pages
2020-05-04 11:16:34 -07:00
Ilya Kreymer 0bb0a2e618 remove local theme config 2020-05-03 22:53:55 -07:00
Ilya Kreymer ed456fbb5f docs: add jekyll just-the-docs docs, initial pass 2020-05-03 22:21:07 -07:00
Ilya Kreymer 204d874471 replay ui: add location + datetime display, respond to user changes and wombat messages
location update: use replaceState instead of hash update to avoid duplicate history entries
rename currTab -> view
2020-05-03 22:20:59 -07:00
Ilya Kreymer 1a4793eefa css optimization: bundle bulma, main.scss as inline css injected directly into lit-element css
import a subset of bulma to decrease size in main.scss
import only base bulma for outer html page in base.scss
2020-05-03 14:57:51 -07:00
Ilya Kreymer 6f04588dfd add CNAME, add examples from wabac.js, build directly from wabac.js 2020-05-02 13:27:17 -07:00
Ilya Kreymer e023726fd2 split off from wabac.js:
- add pageembeds.js for now
- new webpack build, use /sw.js in prod, /dist/sw.js in dev to work with webpack-dev-server single directory
- add wombat dependency and webpack build
2020-05-02 11:27:48 -07:00