feat: dynamically generated images for rich link previews (#6902)
* feat: add token and nft injection
* feat: basic tests
* fix: get jest configured properly
* fix: change timeout
* fix: uninstall port ready
* fix: readd port ready
* fix: local tests work
* Update yarn.lock
* add lint disable for setup files
* fix: update dependencies
* fix: basic test suite for nfts/tokens
* feat: collection data
* fix: make tests more comprehensive
* fix: change matches to contains
* fix: tests for twitter alt image tag
* fix: image gen
* fix: add patch-package
* fix: update yarn install
* feat: basic image gen for nfts and collections
* fix: remove vibrant attempt
* use watermark asset
* dynamically grab color
* modularize code and prototype for token preview
* refactor code
* finalize css
* fix color grabber
* update tests
* fix up css
* refactor code a bit more
* remove console logs
* tests
* update tests
* update images based on design feedback
* network logos
* update lint
* slight refactoring
* more refactoring
* fix packages
* Update yarn.lock
* remove dynamically generated image stuff
* Revert "remove dynamically generated image stuff"
This reverts commit a80241edb3a970a724b9a07ce36e492ff8a1c2af.
* change image reference and revamp tests
* cleanup return values
* Create README.md
* Revert "Create README.md"
This reverts commit 7a91c98d384995fba914c9bf9a2fb3072793621f.
* First round of feedback
* comments
* feat: cache
* Update test.yml
* Update test.yml
* Update test.yml
* feedback round 2
* final feedback
* final final feedback
* add coverage and other options
* Update test.yml
* start typecheck
* update cache
* update snapshots?
* Update jest.config.json
* Update jest.config.json
* give timeout some buffer
* update import
* upgrade ts
* fix typing for apollo deps
* finalize typechecks
* downgrade typescript to original version
* add cache directory to jest
* remove coverage
* remove google analytics from tests
* merge main
* remove timeout
* update tests
* update graphql queries
* review changes
* try cache setup
* Update cache.test.ts
* make cache helper function
* cache test
* remove unneeded test causing issues
* feat: parallelize cache (#6930)
* feat: parallelize cache?
* remove graph query from concurrency await
* most of feedback
* move tests
* update token tests
* singleton cache
* restructuring res and cache promise
* abstract away repeated graph logic
* update tests and functions
* refactor
* update typing, parallelize, and start tests
* fix one tsc issue
* final feedback
* Update yarn.lock
* final final feedback
* add svgs
* try and setup svg
* stashing changes
* cleanup!
* prepare for start of feedback?
* LESS GOO
* modify versioning
* fix: update wrangler version
* Update yarn.lock
* downgrade wrangler
* Update yarn.lock
* Update yarn.lock
* fix type error
* update github test
* cleanup tests
* Delete custom.d.ts
* fix: cloudfunctions
* update tests
* final touchups
* lint
* change github action
* Update yarn.lock
* styling updates
* nate's feedback
* feedback p1
* typing feedback
* update yarn
* Create wrangler.toml
* move wrangler.toml location
* last try
* Delete wrangler.toml
* use 2.20?
* remove comment
* Update yarn.lock
* change compatibility date
* update wrangler and fix bugs
* Update colorthief+2.4.0.patch
* build: cleanup flags
* cleaner patches
* update compatibility date
* quick tweeks
* cleanup rendering and lint
* final color update
---------
Co-authored-by:
Zach Pomerantz <zzmp@uniswap.org>
Showing
functions/constants.ts
0 → 100644
functions/types.d.ts
0 → 100644
functions/utils/getColor.ts
0 → 100644
functions/utils/getFont.ts
0 → 100644
... | @@ -18,7 +18,7 @@ | ... | @@ -18,7 +18,7 @@ |
"i18n": "yarn i18n:extract --clean && yarn i18n:compile", | "i18n": "yarn i18n:extract --clean && yarn i18n:compile", | ||
"prepare": "concurrently \"npm:ajv\" \"npm:contracts\" \"npm:graphql\" \"npm:i18n\"", | "prepare": "concurrently \"npm:ajv\" \"npm:contracts\" \"npm:graphql\" \"npm:i18n\"", | ||
"start": "craco start", | "start": "craco start", | ||
"start:cloud": "NODE_OPTIONS=--dns-result-order=ipv4first PORT=3001 npx wrangler pages dev --node-compat --compatibility-date=2023-08-04 --proxy=3001 --port=3000 -- yarn start", | "start:cloud": "NODE_OPTIONS=--dns-result-order=ipv4first PORT=3001 npx wrangler pages dev --compatibility-flags=nodejs_compat --compatibility-date=2023-08-01 --proxy=3001 --port=3000 -- yarn start", | ||
"build": "craco build", | "build": "craco build", | ||
"analyze": "source-map-explorer 'build/static/js/*.js' --only-mapped", | "analyze": "source-map-explorer 'build/static/js/*.js' --only-mapped", | ||
"serve": "serve build -l 3000", | "serve": "serve build -l 3000", | ||
... | @@ -30,7 +30,8 @@ | ... | @@ -30,7 +30,8 @@ |
"test:cloud": "NODE_OPTIONS=--experimental-vm-modules yarn jest functions --config=functions/jest.config.json", | "test:cloud": "NODE_OPTIONS=--experimental-vm-modules yarn jest functions --config=functions/jest.config.json", | ||
"cypress:open": "cypress open --browser chrome --e2e", | "cypress:open": "cypress open --browser chrome --e2e", | ||
"cypress:run": "cypress run --browser chrome --e2e", | "cypress:run": "cypress run --browser chrome --e2e", | ||
"deduplicate": "yarn-deduplicate --strategy=highest" | "deduplicate": "yarn-deduplicate --strategy=highest", | ||
"postinstall": "yarn patch-package" | |||
}, | }, | ||
"jest": { | "jest": { | ||
"collectCoverageFrom": [ | "collectCoverageFrom": [ | ||
... | @@ -108,10 +109,12 @@ | ... | @@ -108,10 +109,12 @@ |
"@uniswap/eslint-config": "^1.2.0", | "@uniswap/eslint-config": "^1.2.0", | ||
"@vanilla-extract/jest-transform": "^1.1.1", | "@vanilla-extract/jest-transform": "^1.1.1", | ||
"@vanilla-extract/webpack-plugin": "^2.2.0", | "@vanilla-extract/webpack-plugin": "^2.2.0", | ||
"@vercel/og": "0.5.8", | |||
"@walletconnect/types": "^2.8.6", | "@walletconnect/types": "^2.8.6", | ||
"babel-jest": "^29.6.1", | "babel-jest": "^29.6.1", | ||
"browser-cache-mock": "^0.1.7", | "browser-cache-mock": "^0.1.7", | ||
"buffer": "^6.0.3", | "buffer": "^6.0.3", | ||
"colorthief": "^2.4.0", | |||
"concurrently": "^8.0.1", | "concurrently": "^8.0.1", | ||
"cypress": "12.12.0", | "cypress": "12.12.0", | ||
"cypress-hardhat": "^2.5.0", | "cypress-hardhat": "^2.5.0", | ||
... | @@ -127,7 +130,9 @@ | ... | @@ -127,7 +130,9 @@ |
"jest-fetch-mock": "^3.0.3", | "jest-fetch-mock": "^3.0.3", | ||
"jest-styled-components": "^7.0.8", | "jest-styled-components": "^7.0.8", | ||
"mini-css-extract-plugin": "^2.7.6", | "mini-css-extract-plugin": "^2.7.6", | ||
"patch-package": "^7.0.0", | |||
"path-browserify": "^1.0.1", | "path-browserify": "^1.0.1", | ||
"postinstall-postinstall": "^2.1.0", | |||
"prettier": "^2.8.8", | "prettier": "^2.8.8", | ||
"process": "^0.11.10", | "process": "^0.11.10", | ||
"react-scripts": "^5.0.1", | "react-scripts": "^5.0.1", | ||
... | @@ -142,8 +147,7 @@ | ... | @@ -142,8 +147,7 @@ |
"typescript": "^4.9.4", | "typescript": "^4.9.4", | ||
"webpack": "^5.88.2", | "webpack": "^5.88.2", | ||
"webpack-retry-chunk-load-plugin": "^3.1.1", | "webpack-retry-chunk-load-plugin": "^3.1.1", | ||
"//": "downgraded-because-vercel-og-incompatible", | "wrangler": "^3.5.0", | ||
"wrangler": "0.0.0-6ccc4fa6", | |||
"yarn-deduplicate": "^6.0.0" | "yarn-deduplicate": "^6.0.0" | ||
}, | }, | ||
"dependencies": { | "dependencies": { | ||
... | @@ -222,6 +226,7 @@ | ... | @@ -222,6 +226,7 @@ |
"copy-to-clipboard": "^3.2.0", | "copy-to-clipboard": "^3.2.0", | ||
"d3": "^7.6.1", | "d3": "^7.6.1", | ||
"ethers": "^5.7.2", | "ethers": "^5.7.2", | ||
"ext-name": "^5.0.0", | |||
"focus-visible": "^5.2.0", | "focus-visible": "^5.2.0", | ||
"get-graphql-schema": "^2.1.2", | "get-graphql-schema": "^2.1.2", | ||
"graphql": "^16.5.0", | "graphql": "^16.5.0", | ||
... | ... |
This diff is collapsed.
Please register or sign in to comment