Commit Graph

23 Commits

Author SHA1 Message Date
Elisha Nuchi 531a952df3 Support react-refresh and shared client/server types (#98)
- Adds support for react-refresh through `@pmmwh/react-refresh-webpack-plugin`. Updated webpack config to support this. Means entire app is no longer refreshed on changes, only individual components, and state is maintained.
- React refresh removes need for `google-apps-script-webpack-dev-server` package
- In client code, support for server function autocomplete through use of gas-client 1.0.0. Requires certain files to be typescript .ts files
- Remove need for "global" exports in main server file through updated gas-webpack-plugin
2022-03-14 12:31:52 -04:00
Elisha Nuchi 89c12fa161 Set up end to end tests (#121)
* initial e2e test setup with jest and puppeteer

* Update package-lock.json

* WIP e2e setup

* finish setting up end to end tests

* extend open addon time

* build local version and change background color

* update pink image snapshot

* hide no "done" callback jest lint error

* first draft of integration test CI automation

* add .env file during CI

* add puppeteer and update .env

* try mac-os

* try separate build step

* add local deploy step

* extend time

* print body text

* set user agent

* rearrange console logs

* remove console logs

* console page

* try loading in own window

* install mkcert in CI

* fix indentation

* test local body text

* bump time

* revert to loading in add on

* bump time

* print page body

* add stealth plugin and update puppeteer

* update jest and jest-puppeteer versions to latest

* use custom jest-puppeteer environment

allows connecting to Google account using stealth plugin

* update threshold

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* test console

* switch to clasp 2.3.1

* increase timeout

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update package.json

* try mac os 10.15

* Update integration-tests.yaml

* run node 12,14

* Update global-teardown.js

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* sudo mkcert

* Update integration-tests.yaml

* try running not in bash

* try windows 2016

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update open-addon.js

* Update open-addon.js

* Update open-addon.js

* Update open-addon.js

* Update open-addon.js

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* add timeout

* test recovery email

* bypass account recovery page

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* test New-SelfSignedCertificate

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* add powershell script

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* Update integration-tests.yaml

* test script

* Update integration-tests.yaml

* add generate-cert.ps1

* restructure test files

* Update generate-cert.ps1

* bump failure threshold

* fix install mkcert

* remove consoles

* Update package.json

* Update integration-tests.yaml

* try forceExit flag

* test exec in global setup

* restructure

* Update integration-tests.yaml

* remove ?. null check

* add 4 OSs: macos-10.15, macos-latest, windows-2019, windows-latest

* test mac 10.15

* Update integration-tests.yaml

* use all OSs

* -Keyexportpolicy Exportable

* Update generate-cert.ps1

* Update integration-tests.yaml

* update os

* -KeyExportPolicy 'Exportable'

* Update integration-tests.yaml

* update test readme

* Update integration-tests.yaml

* add non-extended integration test

* add non-extended snapshots

* update snapshot names

* change name

* add basic integration tests pipeline file

* Update local-development.test.js

* update os's

* test s3 image reporter

* allowSizeMismatch: true

* update test local url to localhost:3000/dialog-demo-bootstrap.html

* try medium font render hinting

* Update jest-puppeteer.config.js

* update screenshots

* check resolution

* open page when wds is ready

* change screen resolution

* change to 2560 1440 resolution

* test 790 width

* change back to 800

* test all mac versions

* rename container

* skip s3 image reporting if missing env variables

* try windows

* add OS specific tests

* fix image names

* Update image-reporter.js

* Update package.json

* upload windows

* Update image-reporter.js

* test new font

* try all OSs

* remove OS-specific test setup

* update extended snapshots

* rename tests

* Update integration-tests-extended.yaml

* Update integration-tests-basic.yaml

* extend timeout

* Update jest.config.js

* Update README.md

* Update local-development.test.js

* revert to 0.04 threshold

* add comment

* remove push trigger for basic test

* extend timeout
2022-03-12 22:51:30 -05:00
Elisha Nuchi f8a471c93d Feature/update clasp (#106)
* update to @google/clasp@2.4.0

- Add npm run open command
- Update readme to explain how to add existing script and document which works with npm run open
- Remove npm run setup:use-id command
2021-07-19 14:14:30 -04:00
Elisha Nuchi 3499a8ffcc chore: update gas-client 2021-05-29 14:02:11 -04:00
RealSlimMahdi 7ec357003f update tp react17 using npm v6 2021-05-22 11:07:32 +02:00
Mahdi About 98558685c7 add Babel optional chaining plugin 2021-04-24 12:10:57 +02:00
Roy dc3613395c cross-env, mkdirp, and rimraf dev dependencies + escaped quotes in setup script (#63)
* Added cross-env, mkdirp, and rimraf dev dependencies. Escaped quotes causing issues with setting root dir in setup script
2020-10-11 12:10:33 -04:00
Elisha Nuchi 08baee043d Upgrade copy-webpack-plugin (#53)
Also remove unused .tern-project file
2020-08-18 02:12:32 -04:00
Elisha Nuchi 35a641d0f7 v2 Enable local development (#52)
- Create local dev environment
- Add gas-client and google-apps-script-webpack-dev-server packages for development
- Add dev/ wrapper app
- Update webpack config to support development environment
- Redesigned READMEs
- Support typescript
- Update npm scripts
- Organize and update .gitignore file
- Add .vscode settings for clasp files
- Remove tracking for files in dist/
2020-08-15 13:09:04 -04:00
Elisha Nuchi f2a259ce66 add Bootstrap working example
• re-organize file structure with one directory per dialog
• add index.html file per dialog
• add bootstrap styling and dynamic cdn loading
• clean up react code and stylesheet

npm setup script update

adds force flag
"setup": "rm -f .clasp.json ..."

Update README.md

Move clasp to devDependencies

update dynamic cdn urls

Add repository field
2020-07-12 20:18:40 -04:00
Elisha Nuchi d66c0c8e94 remove npm start and set minimize: true 2020-05-06 00:13:08 -04:00
Elisha Nuchi 0ea874e8b4 update webpack, update packages, dev experience
update webpack, clasp, client code, eslint, prettier, readme, packages to latest
2020-05-03 05:12:50 -04:00
Elisha Nuchi ad490675c1 optimize webpack and other minor changes 2020-02-11 00:17:02 -05:00
Elisha Nuchi a2e2a13a63 update readme and add about page 2019-07-16 23:34:49 -04:00
Elisha Nuchi bf078de592 sample about page 2019-07-15 00:35:15 -04:00
Elisha Nuchi fff8dc3524 update google server, react hooks, packages 2019-07-14 01:19:15 -04:00
Hoang Trinh 64d6bbef6a Upgrade To Babel v7 2019-06-20 15:14:31 +07:00
Elisha Nuchi f6402ed6f0 update packages 2019-06-07 22:59:20 -04:00
Elisha Nuchi e675f6dc8f update tern-googleappsscript and tern dependencies 2018-10-05 13:50:05 -04:00
Yoni Slotwinere 118af27cc0 updated readme; upgraded @google/clasp to v1.5.3 2018-09-18 16:50:36 -04:00
Elisha Nuchi 7783b36193 more options 2018-09-17 15:46:54 -04:00
Elisha Nuchi ff3f14a4f1 more settings enabled 2018-09-17 03:18:15 -04:00
Elisha Nuchi a18779850f first commit 2018-09-12 21:13:28 -04:00