Commit Graph
208 Commits
Author SHA1 Message Date
Ilya Kreymer f72428c089 Merge branch 'main' into dev-2.0.0 2024-03-06 17:09:40 -08:00
Ilya Kreymer 01a8c12f28 CI Fixes (#286)
- Update to latest electron-builder
- Fix passing env var for builder
2024-03-02 11:33:43 -08:00
Ilya Kreymer 3baf04e4d9 ci build: update electron-builder, electron-notarize, use latest notarytool 2024-02-26 14:33:19 -08:00
Ilya Kreymer 8153041839 1.8.15 release (#285)
dependency update: wabac.js 2.17.1, wombat 3.7.2, electron 29.0.1
2024-02-24 15:46:03 -08:00
Emma Segal-Grossman a63390f10c Update NPM packaging, linting, and a bunch of types (#275)
Preparation for
https://github.com/webrecorder/archiveweb.page/issues/198 /
https://github.com/webrecorder/archiveweb.page/pull/199.

## Changes

- Organizes published files more cleanly, using `dist/types` folder as
the target for type declarations and sourcemaps
- Configures type field in `package.json`
- Updates ESLint & its config
  - Sets up type-informed linting rules mirroring browsertrix
- Adds a bunch of other useful eslint and eslint-typescript rules, and
applies auto-fixes to the codebase
- Cleans up a bunch of types throughout the codebase, particularly parts
of the code used by ArchiveWebPage
- Changes `ItemIndex#_deleting` from `private` to `protected` so that a
part of AWP that extends it can do so properly
- Makes a bunch of previously-implied [non-null
assertions](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#non-null-assertion-operator-postfix-)
explicit
- Updates `URLResource` and `ItemType` types (and renames `Item` →
`ItemType` to disambiguate from the `Item` class)
- Removes `node-sass` and replaces it with `sass-embedded` for much
quicker installs and compilation
2024-02-06 18:50:12 -08:00
Ilya Kreymer 3bee02bd89 Merge branch 1.8.14 release into dev-2.0.0 2023-12-07 20:26:02 -08:00
Ilya Kreymer 0a78761d56 fix loading revisit records that may have incorrect content-length … (#271)
…(via wabac.js), possible fix for #260
- deps: update to wabac.js 2.16.13
- bump to 1.8.14
2023-12-05 17:46:10 -08:00
Ilya Kreymer 7d013f194d Add initial set of Playwright integration tests, for testing embeds (#254)
* add first pass on playwright integration tests!
- test embed loading via localhost:9990/embed.html as well as cross-domain with embed on localhost:8020/
while RWP + data on localhost:9990/
- add --ignore-optional to most ci runs
- add playwright ci test
- add playwright and playwright-test to dev dependencies
- add 'test-start-embed' to start test harness for localhost:8020/ embed
- add 'test-start-sandbox' to start test harndess for localhost:8030/ sandbox
- add additional tests for loading with sandbox + requiresubdomainiframe, ensure 'requiresubdomainiframe' works, doesn't allow loading directly
2023-11-29 15:54:42 -05:00
sua yooandemma 03fefc85a5 Migrate electron files to typescript (#267)
- Switches electron src files to typescript with minimum typing required
for build
- Adds webpack-merge for shared typescript build config and jsdoc types
- Minor README changes

---------

Co-authored-by: emma <hi@emma.cafe>
2023-11-29 15:53:48 -05:00
emma e9438eb724 improve typescript and linting usage across codebase
add ts-lit-plugin and eslint-typescript

disable no-invalid-css rule

fix a bunch of errors raised by eslint and typescript

run prettier & eslint on the remaining files

remove unused imports

split coll-index into index and info components...
and rename "coll" -> "item" for these.
also includes some fixes for previously-undocumented properties used on
non-ts elements.

extract labeled fields into separate component...
and make a few type improvements too

swap custom copy button for shoelace one

rename a few more missed things
2023-11-29 15:53:46 -05:00
Ilya Kreymer adeefc64dd Add initial set of Playwright integration tests, for testing embeds (#254)
* add first pass on playwright integration tests!
- test embed loading via localhost:9990/embed.html as well as cross-domain with embed on localhost:8020/
while RWP + data on localhost:9990/
- add --ignore-optional to most ci runs
- add playwright ci test
- add playwright and playwright-test to dev dependencies
- add 'test-start-embed' to start test harness for localhost:8020/ embed
- add 'test-start-sandbox' to start test harndess for localhost:8030/ sandbox
- add additional tests for loading with sandbox + requiresubdomainiframe, ensure 'requiresubdomainiframe' works, doesn't allow loading directly
2023-10-06 20:06:04 -07:00
sua yoo 79d2f1585c Show snapshot timestamp in location bar (#228)
- Shows how many snapshots are available per page in URL bar
- Allows users to navigate through snapshots through timestamp dropdown
- Refactors coll.js and pageutils to typescript
2023-09-07 10:42:21 -07:00
sua yoo 73e7da4c7c Show page thumbnails in pages list (#221)
* convert pages / pageentry to ts
* render page icon
* adjust for smaller screen
* show favicon even if thumbnail exists
2023-09-05 17:26:16 -07:00
sua yoo 2d0b163148 Upgrade Lit to 2.8 and add Shoelace styles (#206) 2023-09-05 17:25:42 -07:00
sua yoo b7406189bb Add Typescript to build (#207) 2023-09-05 17:24:08 -07:00
Ilya Kreymer 8e715cdf54 deps: update to wabac.js 2.16.12, use default index html loading (#232)
wabac.js now serves the correct index for RWP, don't need to inject custom html
bump to 1.8.11, update CHANGELIST
2023-09-05 18:43:02 -04:00
Ilya Kreymer 16284ee198 Fix embed loading regression (#227)
* pass in the embed index.html (a page just containing <replay-app-main></replay-app-main>) to wabac.js via indexHtml query arg
to be served back at replay root
fixes regression in 1.8.9, fixes #226
* update CHANGES.md
* bump to wabac.js 2.16.11
2023-08-29 14:28:04 -07:00
Ilya Kreymer 47fb16590c CHANGES: update changelist for 1.8.9 (#225)
deps: bump to wabac.js 2.16.10
2023-08-28 20:18:14 -07:00
Ilya Kreymer 0cc1824b3a deps: update to wabac.js 2.16.9 (#217)
* update CHANGES for 1.8.8, bump to 1.8.8
2023-08-17 16:39:40 -07:00
sua yoo dd70bc722f Lint and fix Lit html (#216)
- Adds eslint lit plugin to catch linting errors in lit html
- Fixes linting errors
2023-08-16 18:57:11 -07:00
sua yoo 13d6f011ca Format changed files in src on pre-commit (#211)
Formats staged files on pre-commit with prettier. Requires running `yarn prepare` once or is enabled after first `yarn install`.
2023-08-16 18:46:38 -07:00
sua yoo 1893550274 Format src files with Prettier (#215)
Formats files in `src` with [prettier for consistent code style](https://prettier.io/docs/en/why-prettier) and adds npm script

Related to https://github.com/webrecorder/replayweb.page/issues/201
2023-08-16 18:21:18 -07:00
Ilya Kreymer 79e4c2a77e deps: bump to wabac.js 2.16.8 for relative url rewriting fix (#204) 2023-08-11 00:27:54 -07:00
Ilya Kreymer 38548a25aa bump to 1.8.7, update CHANGES (#203)
deps: bump to wabac.js 2.16.7
2023-08-09 20:30:18 -07:00
dependabot[bot] 8090970f75 build(deps): bump word-wrap from 1.2.3 to 1.2.4 (#195)
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-09 20:16:42 -07:00
dependabot[bot]andIlya Kreymer d2895045b3 build(deps): bump semver from 5.7.1 to 5.7.2 (#191)
* loading: improved multi-wacz loading, support for patching
deps: update to 2.16.5
bump to 1.8.5

* build(deps): bump semver from 5.7.1 to 5.7.2

Bumps [semver](https://github.com/npm/node-semver) from 5.7.1 to 5.7.2.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Ilya Kreymer <ikreymer@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-09 20:16:23 -07:00
Ilya Kreymer 873615079d fixes for 1.8.6 release: (#196)
- Loading: Fix improved handling of multi-wacz collections (via wabac.js 2.16.6)
- Loading: Allow embedded video/audio to play inline instead of being downloaded (via wabac.js 2.16.6)
- Fidelity: Add missing ruffle.js files to fix ruffle
- bump wabac.js to 2.16.6
2023-07-26 19:35:53 -07:00
Ilya Kreymer a138ce0d50 patch: testing wabac.js fix 2023-07-11 15:23:57 +02:00
Ilya Kreymer fb41ea818c loading: improved multi-wacz loading, support for patching
deps: update to 2.16.5
bump to 1.8.5
2023-07-11 11:06:25 +02:00
Ilya Kreymer 03a049496f fidelity: improved replay of pages with top-level let / const globals, addresses webrecorder/wombat#82 (#190)
deps: bump to wabac.js 2.16.4
bump to 1.8.4
2023-07-05 20:38:34 -07:00
Ilya Kreymer dbafc19522 ui: fix 'show non-seed pages' for multi wacz and for after first load (#187)
deps: bump to wabac.js 2.16.3
bump to 1.8.3
2023-06-27 22:51:12 -07:00
Ilya Kreymer 646f3f8d76 fix redirect loop (fixes #184): (#185)
- loading: fix redirect loop on 404s (via wabac.js 2.16.2)
- misc: additional check before autoupdate, update build deps to support Node 20
bump to 1.8.2
2023-06-20 18:21:55 -07:00
Ilya Kreymer 3fb9e82c1c Deps Update for 1.8.0 (#178)
* update to wabac.js 2.16.1, electron 25.1.1, ruffle 2023-06-14
2023-06-14 17:28:48 -07:00
Ilya Kreymer 21ddc5b713 Show All Pages Option (#177)
* show all pages:
- add option to 'show all pages' if additional non-seed pages are present in the wacz file
- only show checkbox if there are additional pages
- tweak page results to just show 'Pages' or 'Pages Shown' to avoid confusion over 'Pages Found'
- bump to 1.8.0

fixes #176

CHANGES: add changes for 1.8.0
2023-06-14 17:17:20 -07:00
Ilya Kreymer a1c0a9bb57 deps: bump wabac.js to 2.16.0
update README
2023-05-30 19:50:21 -07:00
Ilya Kreymer e9d5ca7f21 CHANGES: update changelist
deps: bump to wabac.js 2.15.5
2023-04-06 10:43:56 -07:00
dependabot[bot] d505dc88ff build(deps-dev): bump webpack from 5.75.0 to 5.76.0 (#161)
Bumps [webpack](https://github.com/webpack/webpack) from 5.75.0 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.75.0...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 10:10:58 -07:00
Ilya Kreymer 913a28b594 wabac.js + wombat version bump (#166)
- Fidelity: Support dynamic 'import()' in non-module JS (via wabac.js 2.15.4)
- Fidelity: Fix dynamic iframes that fall through via document.write / srcdoc by rewriting to blob:<content> (via wombat 3.5.0, wabac.js 2.15.4)
- Dependencies: Update to wabac.js 2.15.4, wombat 3.5.0
2023-03-31 18:15:42 -07:00
Ilya Kreymer 05287749ca fidelity / loading fixes: (#159)
- Fidelity: Improved replay via unrewriting fixes of style urls, request/response urls (via wabac.js 2.15.3)
- Embeds: Support updating auth headers if custom headers provided in embed 'config'
- Dependencies: Update to wabac.js 2.15.3, wombat 3.4.6, Electron 23.1.1
- bump to 1.7.13
2023-02-25 16:38:10 -08:00
dependabot[bot] 775285485d build(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 (#152)
Bumps [http-cache-semantics](https://github.com/kornelski/http-cache-semantics) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/kornelski/http-cache-semantics/releases)
- [Commits](https://github.com/kornelski/http-cache-semantics/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: http-cache-semantics
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-02 19:38:13 -08:00
dependabot[bot] 4f4056b890 build(deps): bump json5 from 1.0.1 to 1.0.2 (#145)
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-02 19:38:03 -08:00
dependabot[bot] f75820918c build(deps): bump qs from 6.10.1 to 6.11.0 (#140)
Bumps [qs](https://github.com/ljharb/qs) from 6.10.1 to 6.11.0.
- [Release notes](https://github.com/ljharb/qs/releases)
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.10.1...v6.11.0)

---
updated-dependencies:
- dependency-name: qs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-02 19:37:51 -08:00
Ilya Kreymer 8b2a5c6076 fidelity: improved fb/instagram replay (via wabac.js 2.15.1)
loading: fix incorrect loading of some WACZ files (incorrect SURT detection, fixed in wabac 2.15.2)
deps: update to wabac.js 2.15.2
bump to 1.7.12
2023-02-02 17:55:30 -08:00
Ilya Kreymer 0c737101c2 loading + fidelity fix:
- loading: Support loading URLs without extension (including blob: urls), automated type detection of WACZ, WARC, compressed and uncompressed (via wabac.js)
 - fidelity: Improved handling of ESM modules, cookies, Vimeo videos (via wabac.js)
 - dependencies: Update to wabac.js 2.15.0, wombat 3.4.3
bump to 1.7.11
2023-01-15 11:17:06 -08:00
Ilya Kreymer 7d0866aa23 deps: update to wabac.js 2.14.0 (#143)
deps: also includes update to wombat 3.4.2, warcio 2.0.1
ci: fix yarn flags, add --ignore-engines to electron build
build: update banner copyright text to use current year
fidelity fixes:  including better location and ESM module rewriting (via wabac.js and wombat)
reduce size of sw.js by ~40k
bump to 1.7.9
2022-12-17 10:39:19 -08:00
Ilya Kreymer e6f837df13 Cleanup Electron App + Dependency Update (#139)
* electron: clean-up / remove unused code in main process, including:
- remove native plugin init (no longer supported)
- remove auto-js-ipfs (used in render process)
- remove ipfs handling logic (handled in render process)
- use custom file2:// scheme for loading files, instead of custom prefix
- proxyLive supports POST requests, using original UA (if set, for archiveweb.page)
- webpack: remove unused __IPFS_CORE_URL__
- ci: add lint check

* dependency update:
- update to wabac.js 2.13.15 for latest auto-js-ipfs (2.1.0) and wombat (3.3.13)
- update to electron 22.0
- update webpack + electron updater to latest

* bump to 1.7.8
2022-12-07 13:33:36 -08:00
Ilya Kreymer 591753d6d8 loading: remove cacehing ruffle.js to avoid old versions being cached
deps: wabac.js 2.13.14
2022-12-02 14:14:03 -08:00
Ilya Kreymer e4e6f07618 loading fixes:
- fix for ignoring partial videos (partial 206s)
- fix for error on first load (waiting to load check injected scripts)
update to wabac.js 2.13.13
bump to 1.7.7
2022-12-02 13:41:26 -08:00
Ilya Kreymer 9dc7d8d8c1 deps: update to wabac.js 2.13.12 to update wombat, fixing occasional window.open regression (fixed in wombat 3.3.12) 2022-11-25 10:57:35 -08:00
Ilya Kreymer 6b14849d60 regression fix for flash: fix ruffle.js not loading (reported via webrecorder/archiveweb.page#121) via wabac.js
opt: check if ruffle.js exists before injecting into page (via wabac.js)
deps: update wabac.js 2.13.11, update ruffle to 2022-11-25 version
bump to 1.7.6
2022-11-25 10:03:03 -08:00