Elisha Nuchi
31befe1d68
V3: Migrate to Vite ( #221 )
...
This is version 3 of the boilerplate, which makes significant changes to the build script and local development tooling. It replaces Webpack with Vite, which required some significant changes to how the local development setup works with Google Apps Script.
A new dev-server-wrapper.html file is used as the wrapper app in development, which is a standalone html + js file instead of a React app. This reduces the need for a complex build step for the wrapper app. Instead the file is just copied over for each entrypoing and the file location is changed with a "replace" step.
Due to the way Vite works, the html templates are changed a bit to support local development.
Vite doesn't easily allow completely separate multiple builds, so some Vite plugins and custom plugins are written to support multiple entrypoints (sidebars/dialogs). The externalization for large packages is now handled in the Vite config instead of a plugin, and by manually adding in the script tags into the index.html templates.
Additional changes here:
- yarn is now used instead of npm as package manager
- eslint configs are updated to support vite
- GitHub workflows for tests are updated to use yarn and other minor changes such as node versions and OS.
- A VS Code launch.json configuration is provided
- Dev wrapper setup has been updated (see above description)
- ES Modules (import/export) updated throughout
- Unneeded packages supporting webpack configurations are removed. Many packages have been upgraded. NPM scripts have been updated to use yarn.
- Removed `import React` due to Vite config.
- Added script tags to each template since webpack externalization plugin is no longer used
- Added <script type="module" src="./index.jsx"></script> to index.html templates to support Vite local development
- Changed src/server/sheets.js to .ts typescript as exemplar
- Updated tests to support yarn commands, Vite changes, and listening for Vite stdout triggers.
- Add Vite-style tsconfig.json
- README is updated
2024-05-20 00:25:31 -04:00
Elisha Nuchi
5f2012ce56
Update integration tests and package versions ( #211 )
...
* Update gas-types-detailed package
* Update LICENSE
* update node versions and macos versions in workflows
* add NODE_OPTIONS env: max_old_space_size=4096
* support new log-in flow
2024-03-22 01:40:15 -04:00
Elisha Nuchi
7a26c690e1
Update ReactDOM render to use createRoot ( #148 )
...
react 18 new API
2023-03-12 01:04:49 -05:00
Elisha Nuchi
8265933d4b
Update README.md ( #180 )
...
Clean up outdated descriptions and add more info in some areas.
2023-03-10 23:54:05 -05:00
h-contributeur
f9a1d02588
Add Material UI demo ( #173 )
...
Adds working example with Material UI
2023-03-10 15:01:46 -05:00
Elisha Nuchi
7fd979aed8
Performance improvement: stop serving wrapper code ( #179 )
...
* Only serve react app in development
- Don't serve server code from "webpack serve"
- Don't serve iframe wrapper from "webpack serve"
- Update "basic" local test to load -impl file, not wrapper
2023-03-10 14:43:48 -05:00
Elisha Nuchi
50fc0de433
remove babel-eslint ( #165 )
2022-12-30 14:40:36 -05:00
Elisha Nuchi
957367366b
Upgrade gas-client ( #164 )
...
Uses latest UMD build for gas-client and externalizes the package to further reduce client bundle size
2022-12-25 01:15:21 -05:00
Pencho BELNEYSKI
4718f4b870
add initial support for tailwindcss ( #134 )
...
Add support for and demo using tailwindcss
2022-11-17 23:37:00 -05:00
Elisha Nuchi
f4371469fc
Change input query to "Passwd" ( #149 )
2022-10-25 22:59:53 -04:00
Elisha Nuchi
a323926739
Update setup script ( #137 )
...
Handles changes in @google/clasp@2.4.1 affecting rooDir flag
2022-08-12 23:19:12 -04:00
Elisha Nuchi
f16d7d3a66
Update gas-types-detailed ( #133 )
...
Update to latest version of gas-types-detailed
2022-07-04 23:57:34 -04:00
Elisha Nuchi
fd73dc051c
Webpack 5 support with updated packages ( #131 )
...
- Update to Webpack 5
- Use @effortlessmotion dynamic html and inline source plugins
- Remove .clasp.json and use SAMPLE file
- Consistent prettier formatting throughout
- Update packages to latest versions
Co-authored-by: Kevin Malakoff <kmalakoff@gmail.com >
2022-06-20 01:59:26 -04:00
Elisha Nuchi
0adf784ba1
Update basic integration test trigger to use main instead of master ( #127 )
2022-06-11 13:07:26 -04:00
Yaroslav Serhieiev
96ad8afe1d
build: fix eslint issues ( #124 )
...
* build: fix eslint issues
* build: migrate to Node 16
2022-04-12 00:36:59 -04:00
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
b14c0f9219
Update package-lock.json ( #108 )
...
run npm audit fix
2021-07-19 14:23:18 -04: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
405cf206f5
Merge pull request #105 from enuchi/update/lock-file
...
Update package-lock.json
Switch to "lockfileVersion": 2 for npm 7 (backward compatible)
See https://docs.npmjs.com/cli/v7/configuring-npm/package-lock-json#lockfileversion
2021-07-15 00:18:13 -04:00
Elisha Nuchi
058fec3a4e
Update package-lock.json
2021-07-15 00:16:39 -04:00
Elisha Nuchi
b662d5a432
Fix: adds support for development mode in Safari
...
Updates gas-client to latest version
2021-05-29 14:08:25 -04:00
Elisha Nuchi
47fba531ce
add comment to webpack config
2021-05-29 14:06:47 -04:00
Elisha Nuchi
3499a8ffcc
chore: update gas-client
2021-05-29 14:02:11 -04:00
Elisha Nuchi
7e3d346468
Merge pull request #88 from enuchi/dependabot/npm_and_yarn/url-parse-1.5.1
...
Bump url-parse from 1.4.7 to 1.5.1
2021-05-24 01:24:27 -04:00
Elisha Nuchi
ba42a24f61
Merge pull request #87 from enuchi/dependabot/npm_and_yarn/hosted-git-info-2.8.9
...
Bump hosted-git-info from 2.8.8 to 2.8.9
2021-05-24 01:24:01 -04:00
Elisha Nuchi
aa74744e13
Merge pull request #86 from enuchi/dependabot/npm_and_yarn/lodash-4.17.21
...
Bump lodash from 4.17.19 to 4.17.21
2021-05-24 01:23:48 -04:00
Elisha Nuchi
b59b2b6288
Merge pull request #92 from RealSlimMahdi/dev-react17-npmv6
...
update to react17
2021-05-24 01:20:13 -04:00
RealSlimMahdi
7ec357003f
update tp react17 using npm v6
2021-05-22 11:07:32 +02:00
dependabot[bot]
5db02748c0
Bump url-parse from 1.4.7 to 1.5.1
...
Bumps [url-parse](https://github.com/unshiftio/url-parse ) from 1.4.7 to 1.5.1.
- [Release notes](https://github.com/unshiftio/url-parse/releases )
- [Commits](https://github.com/unshiftio/url-parse/compare/1.4.7...1.5.1 )
Signed-off-by: dependabot[bot] <support@github.com >
2021-05-10 06:55:45 +00:00
dependabot[bot]
e1dade5b59
Bump hosted-git-info from 2.8.8 to 2.8.9
...
Bumps [hosted-git-info](https://github.com/npm/hosted-git-info ) from 2.8.8 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases )
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md )
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9 )
Signed-off-by: dependabot[bot] <support@github.com >
2021-05-09 17:04:48 +00:00
dependabot[bot]
68b672f6fd
Bump lodash from 4.17.19 to 4.17.21
...
Bumps [lodash](https://github.com/lodash/lodash ) from 4.17.19 to 4.17.21.
- [Release notes](https://github.com/lodash/lodash/releases )
- [Commits](https://github.com/lodash/lodash/compare/4.17.19...4.17.21 )
Signed-off-by: dependabot[bot] <support@github.com >
2021-05-07 18:16:09 +00:00
Elisha Nuchi
54f9483a24
Merge pull request #85 from enuchi/update/babel-optional-chaining
...
Update/babel optional chaining
2021-05-01 13:17:58 -04:00
Elisha Nuchi
472bdd2e19
Update .babelrc
...
fix formatting
2021-05-01 13:05:00 -04:00
Elisha Nuchi
3910ebed5b
Update package-lock.json
2021-05-01 13:04:09 -04:00
Mahdi About
98558685c7
add Babel optional chaining plugin
2021-04-24 12:10:57 +02:00
Elisha Nuchi
2b8f0dc9d4
Docs/React DevTools documentation ( #80 )
...
Add documentation on using React DevTools
2021-04-24 00:55:27 -04:00
dependabot[bot]
e6fbab0f5b
Bump ssri from 6.0.1 to 6.0.2 ( #79 )
...
Bumps [ssri](https://github.com/npm/ssri ) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/npm/ssri/releases )
- [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md )
- [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2 )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-24 00:17:19 -04:00
dependabot[bot]
4b7b79267d
Bump y18n from 4.0.0 to 4.0.1 ( #78 )
...
Bumps [y18n](https://github.com/yargs/y18n ) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/yargs/y18n/releases )
- [Changelog](https://github.com/yargs/y18n/blob/master/CHANGELOG.md )
- [Commits](https://github.com/yargs/y18n/commits )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-04-23 23:51:31 -04:00
Juan Ignacio Telechea
18fb03d42c
docs: webpack config line updated ( #77 )
2021-03-18 22:48:23 -04:00
dependabot[bot]
f9292c0ddc
Bump elliptic from 6.5.3 to 6.5.4 ( #75 )
...
Bumps [elliptic](https://github.com/indutny/elliptic ) from 6.5.3 to 6.5.4.
- [Release notes](https://github.com/indutny/elliptic/releases )
- [Commits](https://github.com/indutny/elliptic/compare/v6.5.3...v6.5.4 )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-18 22:47:49 -04:00
dependabot[bot]
b5928f9316
Bump ini from 1.3.5 to 1.3.7 ( #70 )
...
Bumps [ini](https://github.com/isaacs/ini ) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases )
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7 )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-18 22:47:14 -04:00
Elisha Nuchi
e73e51e56e
fix: allow jsDoc comments for custom functions ( #66 )
...
Allows jsDoc comments for custom sheets functions to remain in builds so that autocomplete works correctly
2020-10-28 15:10:55 -04: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
dependabot[bot]
2721e34053
Bump node-fetch from 2.6.0 to 2.6.1 ( #59 )
...
Bumps [node-fetch](https://github.com/bitinn/node-fetch ) from 2.6.0 to 2.6.1.
- [Release notes](https://github.com/bitinn/node-fetch/releases )
- [Changelog](https://github.com/node-fetch/node-fetch/blob/master/docs/CHANGELOG.md )
- [Commits](https://github.com/bitinn/node-fetch/compare/v2.6.0...v2.6.1 )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-09-14 20:58:13 -04:00
Nikola Miljković
471cdc843d
Exclude "impl" files from being pushed during development ( #58 )
2020-09-09 17:19:11 -04:00
Ganapati V S
ad59879440
Fix server eslintrc ( #54 )
2020-08-20 09:02:04 -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
886ec2e72a
Update README.md
...
Update acknowledgements
2020-08-16 22:35:16 -04:00
Elisha Nuchi
688d771192
Update LICENSE
...
Sections adapted from github.com/labnol/apps-script-starter MIT License Copyright (c) 2018 Amit Agarwal
-- Moving to main README for github license detection
2020-08-16 22:33:16 -04:00