├── .gitignore
├── LICENSE
├── README.md
├── attack-manuals
└── module-1
│ ├── 01-Server Side Request Forgery.md
│ ├── 02-Misconfigured Storage Bucket Policies.md
│ └── 03-Lateral Movement Compute Instances.md
├── defence-manuals
├── 01-Defending Against Web Application.md
├── 02-Defending Storage Buckets.md
├── 03-Defending Privilege Escalations 1.md
├── 04-Defending Privilege Escalations 2.md
└── images
│ ├── defending-against-web-application
│ ├── 1.png
│ ├── 10.png
│ ├── 11.png
│ ├── 12.png
│ ├── 13.png
│ ├── 14.png
│ ├── 15.png
│ ├── 16.png
│ ├── 17.png
│ ├── 18.png
│ ├── 19.png
│ ├── 2.png
│ ├── 20.png
│ ├── 21.png
│ ├── 22.png
│ ├── 23.png
│ ├── 24.png
│ ├── 25.png
│ ├── 26.png
│ ├── 27.png
│ ├── 28.png
│ ├── 29.png
│ ├── 3.png
│ ├── 30.png
│ ├── 31.png
│ ├── 32.png
│ ├── 33.png
│ ├── 34.png
│ ├── 35.png
│ ├── 36.png
│ ├── 37.png
│ ├── 38.png
│ ├── 39.png
│ ├── 4.png
│ ├── 40.png
│ ├── 41.png
│ ├── 42.png
│ ├── 43.png
│ ├── 44.png
│ ├── 45.png
│ ├── 46.png
│ ├── 47.png
│ ├── 48.png
│ ├── 49.png
│ ├── 5.png
│ ├── 50.png
│ ├── 51.png
│ ├── 52.png
│ ├── 53.png
│ ├── 54.png
│ ├── 54_1.png
│ ├── 55.png
│ ├── 55_1.png
│ ├── 56.png
│ ├── 57.png
│ ├── 58.png
│ ├── 59.png
│ ├── 6.png
│ ├── 60.png
│ ├── 61.png
│ ├── 62.png
│ ├── 63.png
│ ├── 64.png
│ ├── 65.png
│ ├── 66.png
│ ├── 67.png
│ ├── 68.png
│ ├── 69.png
│ ├── 7.png
│ ├── 70.png
│ ├── 71.png
│ ├── 72.png
│ ├── 73.png
│ ├── 74.png
│ ├── 8.png
│ ├── 9.png
│ └── useable_in_between_01.png
│ ├── defending-privilege-escalations-1
│ ├── 1.png
│ ├── 10.png
│ ├── 11.png
│ ├── 12.png
│ ├── 13.png
│ ├── 14.png
│ ├── 15.png
│ ├── 16.png
│ ├── 17.png
│ ├── 18.png
│ ├── 19.png
│ ├── 2.png
│ ├── 20.png
│ ├── 21.png
│ ├── 22.png
│ ├── 23.png
│ ├── 24.png
│ ├── 25.png
│ ├── 26.png
│ ├── 27.png
│ ├── 28.png
│ ├── 29.png
│ ├── 3.png
│ ├── 30.png
│ ├── 31.png
│ ├── 32.png
│ ├── 33.png
│ ├── 34.png
│ ├── 35.png
│ ├── 36.png
│ ├── 37.png
│ ├── 38.png
│ ├── 39.png
│ ├── 4.png
│ ├── 40.png
│ ├── 41.png
│ ├── 42.png
│ ├── 43.png
│ ├── 44.png
│ ├── 45.png
│ ├── 46.png
│ ├── 47.png
│ ├── 48.png
│ ├── 49.png
│ ├── 5.png
│ ├── 50.png
│ ├── 51.png
│ ├── 52.png
│ ├── 53.png
│ ├── 54.png
│ ├── 55.png
│ ├── 6.png
│ ├── 7.png
│ ├── 8.png
│ └── 9.png
│ ├── defending-privilege-escalations-2
│ ├── 1.png
│ ├── 10.png
│ ├── 11.png
│ ├── 12.png
│ ├── 13.png
│ ├── 14.png
│ ├── 15.png
│ ├── 16.png
│ ├── 17.png
│ ├── 18.png
│ ├── 19.png
│ ├── 2.png
│ ├── 20.png
│ ├── 21.png
│ ├── 22.png
│ ├── 23.png
│ ├── 24.png
│ ├── 25.png
│ ├── 26.png
│ ├── 3.png
│ ├── 4.png
│ ├── 5.png
│ ├── 6.png
│ ├── 7.png
│ ├── 8.png
│ └── 9.png
│ └── defending-storage-buckets
│ ├── 1.png
│ ├── 10.png
│ ├── 11.png
│ ├── 12.png
│ ├── 13.png
│ ├── 14.png
│ ├── 15.png
│ ├── 16.png
│ ├── 17.png
│ ├── 18.png
│ ├── 19.png
│ ├── 2.png
│ ├── 20.png
│ ├── 21.png
│ ├── 22.png
│ ├── 23.png
│ ├── 24.png
│ ├── 25.png
│ ├── 26.png
│ ├── 27.png
│ ├── 28.png
│ ├── 29.png
│ ├── 3.png
│ ├── 30.png
│ ├── 31.png
│ ├── 32.png
│ ├── 33.png
│ ├── 34.png
│ ├── 35.png
│ ├── 36.png
│ ├── 37.png
│ ├── 4.png
│ ├── 5.png
│ ├── 6.png
│ ├── 7.png
│ ├── 8.png
│ └── 9.png
├── main.tf
└── modules
└── module-1
├── resources
├── cloud_function
│ ├── data
│ │ ├── crud.py
│ │ ├── main.py
│ │ └── requirements.txt
│ └── react
│ │ ├── index.html
│ │ └── index.js
├── firestore
│ └── users.json
└── storage_bucket
│ ├── images
│ ├── 20220525172652548627.png
│ ├── 20220525172652568597.png
│ ├── 20220525173052304808.png
│ ├── 20220525173155599484.png
│ ├── 20220525173359279634.png
│ ├── 20220525173435646544.png
│ ├── 20220525174934318996.png
│ ├── 20220525175114306915.png
│ ├── 20220525175420931108.png
│ └── 20220525175644356721.png
│ ├── shared
│ ├── files
│ │ └── .ssh
│ │ │ ├── config.txt
│ │ │ └── keys
│ │ │ ├── alice.pem
│ │ │ ├── alice.pub
│ │ │ ├── bob.pem
│ │ │ ├── bob.pub
│ │ │ ├── charles.pem
│ │ │ ├── charles.pub
│ │ │ ├── john.pem
│ │ │ ├── john.pub
│ │ │ ├── justin.pem
│ │ │ ├── justin.pub
│ │ │ ├── mary.pem
│ │ │ ├── mary.pub
│ │ │ ├── mike.pem
│ │ │ ├── mike.pub
│ │ │ ├── sophia.pem
│ │ │ └── sophia.pub
│ └── scripts
│ │ ├── deploy_node.sh
│ │ ├── php-deploy.sh
│ │ └── wordpress_deploy.sh
│ └── webfiles
│ └── build
│ ├── asset-manifest.json
│ ├── favicon
│ ├── ine.png
│ └── logo.png
│ ├── index.html
│ ├── manifest.json
│ └── static
│ ├── css
│ ├── main.e8c9e839.css
│ └── main.e8c9e839.css.map
│ ├── icons
│ ├── ic_flag_de.svg
│ ├── ic_flag_en.svg
│ ├── ic_flag_fr.svg
│ ├── ic_notification_chat.svg
│ ├── ic_notification_mail.svg
│ ├── ic_notification_package.svg
│ ├── ic_notification_shipping.svg
│ └── shape-avatar.svg
│ ├── illustrations
│ ├── illustration_404.svg
│ ├── illustration_avatar.png
│ ├── illustration_login.png
│ ├── illustration_register.png
│ └── register.png
│ ├── js
│ ├── 787.8c65ad62.chunk.js
│ ├── 787.8c65ad62.chunk.js.map
│ ├── main.adc6b28e.js
│ ├── main.adc6b28e.js.LICENSE.txt
│ └── main.adc6b28e.js.map
│ ├── logo.png
│ ├── media
│ ├── full-logo.d541d93800287b5e76bc.png
│ ├── gcp-logo.a6f0fa0f711f4db88a15.png
│ ├── login.e21739546d37920dcfe5.jpg
│ ├── logo-title.75c7c407bd28884bbbf7.png
│ ├── no-posts-found.a48ad7ab109b12f96751.jpg
│ ├── register.4206b16c0ce018f0307d.jpg
│ └── reset-password.534bb9d0d1f845e91b10.jpg
│ ├── mock-images
│ ├── avatars
│ │ ├── avatar_1.jpg
│ │ ├── avatar_10.jpg
│ │ ├── avatar_11.jpg
│ │ ├── avatar_12.jpg
│ │ ├── avatar_13.jpg
│ │ ├── avatar_14.jpg
│ │ ├── avatar_15.jpg
│ │ ├── avatar_16.jpg
│ │ ├── avatar_17.jpg
│ │ ├── avatar_18.jpg
│ │ ├── avatar_19.jpg
│ │ ├── avatar_2.jpg
│ │ ├── avatar_20.jpg
│ │ ├── avatar_21.jpg
│ │ ├── avatar_22.jpg
│ │ ├── avatar_23.jpg
│ │ ├── avatar_24.jpg
│ │ ├── avatar_3.jpg
│ │ ├── avatar_4.jpg
│ │ ├── avatar_5.jpg
│ │ ├── avatar_6.jpg
│ │ ├── avatar_7.jpg
│ │ ├── avatar_8.jpg
│ │ ├── avatar_9.jpg
│ │ └── avatar_default.jpg
│ ├── covers
│ │ ├── cover_1.jpg
│ │ ├── cover_10.jpg
│ │ ├── cover_11.jpg
│ │ ├── cover_12.jpg
│ │ ├── cover_13.jpg
│ │ ├── cover_14.jpg
│ │ ├── cover_15.jpg
│ │ ├── cover_16.jpg
│ │ ├── cover_17.jpg
│ │ ├── cover_18.jpg
│ │ ├── cover_19.jpg
│ │ ├── cover_2.jpg
│ │ ├── cover_20.jpg
│ │ ├── cover_21.jpg
│ │ ├── cover_22.jpg
│ │ ├── cover_23.jpg
│ │ ├── cover_24.jpg
│ │ ├── cover_3.jpg
│ │ ├── cover_4.jpg
│ │ ├── cover_5.jpg
│ │ ├── cover_6.jpg
│ │ ├── cover_7.jpg
│ │ ├── cover_8.jpg
│ │ └── cover_9.jpg
│ └── products
│ │ ├── product_1.jpg
│ │ ├── product_10.jpg
│ │ ├── product_11.jpg
│ │ ├── product_12.jpg
│ │ ├── product_13.jpg
│ │ ├── product_14.jpg
│ │ ├── product_15.jpg
│ │ ├── product_16.jpg
│ │ ├── product_17.jpg
│ │ ├── product_18.jpg
│ │ ├── product_19.jpg
│ │ ├── product_2.jpg
│ │ ├── product_20.jpg
│ │ ├── product_21.jpg
│ │ ├── product_22.jpg
│ │ ├── product_23.jpg
│ │ ├── product_24.jpg
│ │ ├── product_3.jpg
│ │ ├── product_4.jpg
│ │ ├── product_5.jpg
│ │ ├── product_6.jpg
│ │ ├── product_7.jpg
│ │ ├── product_8.jpg
│ │ └── product_9.jpg
│ └── preview.jpg
└── src
├── CHANGELOG.md
├── LICENSE.md
├── README.md
├── jsconfig.json
├── package-lock.json
├── package.json
├── public
├── .DS_Store
├── _redirects
├── favicon
│ ├── .DS_Store
│ ├── ine.png
│ └── logo.png
├── index.html
├── manifest.json
└── static
│ ├── .DS_Store
│ ├── icons
│ ├── ic_flag_de.svg
│ ├── ic_flag_en.svg
│ ├── ic_flag_fr.svg
│ ├── ic_notification_chat.svg
│ ├── ic_notification_mail.svg
│ ├── ic_notification_package.svg
│ ├── ic_notification_shipping.svg
│ └── shape-avatar.svg
│ ├── illustrations
│ ├── .DS_Store
│ ├── illustration_404.svg
│ ├── illustration_avatar.png
│ ├── illustration_login.png
│ ├── illustration_register.png
│ └── register.png
│ ├── logo.png
│ ├── mock-images
│ ├── .DS_Store
│ ├── avatars
│ │ ├── avatar_1.jpg
│ │ ├── avatar_10.jpg
│ │ ├── avatar_11.jpg
│ │ ├── avatar_12.jpg
│ │ ├── avatar_13.jpg
│ │ ├── avatar_14.jpg
│ │ ├── avatar_15.jpg
│ │ ├── avatar_16.jpg
│ │ ├── avatar_17.jpg
│ │ ├── avatar_18.jpg
│ │ ├── avatar_19.jpg
│ │ ├── avatar_2.jpg
│ │ ├── avatar_20.jpg
│ │ ├── avatar_21.jpg
│ │ ├── avatar_22.jpg
│ │ ├── avatar_23.jpg
│ │ ├── avatar_24.jpg
│ │ ├── avatar_3.jpg
│ │ ├── avatar_4.jpg
│ │ ├── avatar_5.jpg
│ │ ├── avatar_6.jpg
│ │ ├── avatar_7.jpg
│ │ ├── avatar_8.jpg
│ │ ├── avatar_9.jpg
│ │ └── avatar_default.jpg
│ ├── covers
│ │ ├── cover_1.jpg
│ │ ├── cover_10.jpg
│ │ ├── cover_11.jpg
│ │ ├── cover_12.jpg
│ │ ├── cover_13.jpg
│ │ ├── cover_14.jpg
│ │ ├── cover_15.jpg
│ │ ├── cover_16.jpg
│ │ ├── cover_17.jpg
│ │ ├── cover_18.jpg
│ │ ├── cover_19.jpg
│ │ ├── cover_2.jpg
│ │ ├── cover_20.jpg
│ │ ├── cover_21.jpg
│ │ ├── cover_22.jpg
│ │ ├── cover_23.jpg
│ │ ├── cover_24.jpg
│ │ ├── cover_3.jpg
│ │ ├── cover_4.jpg
│ │ ├── cover_5.jpg
│ │ ├── cover_6.jpg
│ │ ├── cover_7.jpg
│ │ ├── cover_8.jpg
│ │ └── cover_9.jpg
│ └── products
│ │ ├── product_1.jpg
│ │ ├── product_10.jpg
│ │ ├── product_11.jpg
│ │ ├── product_12.jpg
│ │ ├── product_13.jpg
│ │ ├── product_14.jpg
│ │ ├── product_15.jpg
│ │ ├── product_16.jpg
│ │ ├── product_17.jpg
│ │ ├── product_18.jpg
│ │ ├── product_19.jpg
│ │ ├── product_2.jpg
│ │ ├── product_20.jpg
│ │ ├── product_21.jpg
│ │ ├── product_22.jpg
│ │ ├── product_23.jpg
│ │ ├── product_24.jpg
│ │ ├── product_3.jpg
│ │ ├── product_4.jpg
│ │ ├── product_5.jpg
│ │ ├── product_6.jpg
│ │ ├── product_7.jpg
│ │ ├── product_8.jpg
│ │ └── product_9.jpg
│ └── preview.jpg
├── src
├── .DS_Store
├── App.js
├── _mock
│ ├── account.js
│ ├── blog.js
│ ├── products.js
│ └── user.js
├── common
│ └── httpService.js
├── components
│ ├── Iconify.js
│ ├── Label.js
│ ├── Logo.js
│ ├── MenuPopover.js
│ ├── NavSection.js
│ ├── Page.js
│ ├── ScrollToTop.js
│ ├── Scrollbar.js
│ ├── SearchNotFound.js
│ ├── SvgIconStyle.js
│ ├── UserDetailsPopOver.js
│ ├── chart
│ │ ├── BaseOptionChart.js
│ │ └── index.js
│ └── color-utils
│ │ ├── ColorManyPicker.js
│ │ ├── ColorPreview.js
│ │ └── index.js
├── hooks
│ └── useResponsive.js
├── images
│ ├── avatar-1.jpg
│ ├── avatar-2.jpg
│ ├── avatar-3.jpg
│ ├── avatar-4.jpg
│ ├── avatar.jpg
│ ├── full-logo.png
│ ├── gcp-logo.png
│ ├── login.jpg
│ ├── logo-title.png
│ ├── logo.png
│ ├── no-posts-found.jpg
│ ├── register.jpg
│ └── reset-password.jpg
├── index.js
├── layouts
│ ├── .DS_Store
│ ├── LogoOnlyLayout.js
│ ├── dashboard
│ │ ├── AccountPopover.js
│ │ ├── DashboardNavbar.js
│ │ ├── DashboardSidebar.js
│ │ ├── HomepageAccountPopover.js
│ │ ├── LanguagePopover.js
│ │ ├── NavConfig.js
│ │ ├── NotificationsPopover.js
│ │ ├── Searchbar.js
│ │ └── index.js
│ ├── footer
│ │ └── index.js
│ └── navbar
│ │ └── index.js
├── logo.png
├── pages
│ ├── .DS_Store
│ ├── App.css
│ ├── Blog.js
│ ├── DashboardApp.js
│ ├── HomePage.js
│ ├── Login.js
│ ├── NewPost.js
│ ├── Page404.js
│ ├── Products.js
│ ├── Profile.js
│ ├── Register.js
│ ├── ResetPassword.js
│ ├── User.js
│ └── blogpost.js
├── placeholder.png
├── reportWebVitals.js
├── routes.js
├── sections
│ ├── .DS_Store
│ ├── @dashboard
│ │ ├── .DS_Store
│ │ ├── app
│ │ │ ├── AppConversionRates.js
│ │ │ ├── AppCurrentSubject.js
│ │ │ ├── AppCurrentVisits.js
│ │ │ ├── AppNewsUpdate.js
│ │ │ ├── AppOrderTimeline.js
│ │ │ ├── AppTasks.js
│ │ │ ├── AppTrafficBySite.js
│ │ │ ├── AppWebsiteVisits.js
│ │ │ ├── AppWidgetSummary.js
│ │ │ └── index.js
│ │ ├── blog
│ │ │ ├── BlogPostCard.js
│ │ │ ├── BlogPostsSearch.js
│ │ │ ├── BlogPostsSort.js
│ │ │ └── index.js
│ │ ├── newpost
│ │ │ ├── .DS_Store
│ │ │ ├── NewPostCard.js
│ │ │ ├── NewPostCardSearch.js
│ │ │ ├── NewPostCardSort.js
│ │ │ └── index.js
│ │ ├── products
│ │ │ ├── ProductCard.js
│ │ │ ├── ProductCartWidget.js
│ │ │ ├── ProductFilterSidebar.js
│ │ │ ├── ProductList.js
│ │ │ ├── ProductSort.js
│ │ │ └── index.js
│ │ └── user
│ │ │ ├── UserListHead.js
│ │ │ ├── UserListToolbar.js
│ │ │ ├── UserMoreMenu.js
│ │ │ └── index.js
│ └── auth
│ │ ├── .DS_Store
│ │ ├── AuthService.js
│ │ ├── AuthSocial.js
│ │ ├── login
│ │ ├── LoginForm.js
│ │ └── index.js
│ │ ├── register
│ │ ├── RegisterForm.js
│ │ └── index.js
│ │ └── resetpassword
│ │ ├── ResetPasswordForm.js
│ │ └── index.js
├── serviceWorker.js
├── setupTests.js
├── theme
│ ├── index.js
│ ├── overrides
│ │ ├── Autocomplete.js
│ │ ├── Backdrop.js
│ │ ├── Button.js
│ │ ├── Card.js
│ │ ├── CssBaseline.js
│ │ ├── IconButton.js
│ │ ├── Input.js
│ │ ├── Lists.js
│ │ ├── Paper.js
│ │ ├── Tooltip.js
│ │ ├── Typography.js
│ │ └── index.js
│ ├── palette.js
│ ├── shadows.js
│ └── typography.js
└── utils
│ ├── formatNumber.js
│ └── formatTime.js
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | .terraform.lock.hcl
2 | .terraform/
3 | frontend-source.zip
4 | function.zip
5 | terraform.tfstate
6 | terraform.tfstate.backup
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 INE
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/1.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/10.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/11.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/12.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/13.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/14.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/15.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/16.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/17.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/18.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/19.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/2.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/20.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/21.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/22.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/22.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/23.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/24.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/25.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/25.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/26.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/26.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/27.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/28.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/28.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/29.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/3.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/30.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/30.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/31.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/32.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/33.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/33.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/34.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/34.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/35.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/35.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/36.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/37.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/37.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/38.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/38.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/39.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/39.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/4.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/40.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/41.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/41.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/42.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/42.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/43.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/43.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/44.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/44.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/45.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/45.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/46.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/46.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/47.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/47.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/48.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/49.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/49.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/5.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/50.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/51.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/51.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/52.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/52.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/53.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/53.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/54.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/54.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/54_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/54_1.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/55.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/55.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/55_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/55_1.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/56.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/56.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/57.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/58.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/58.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/59.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/59.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/6.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/60.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/61.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/61.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/62.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/62.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/63.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/63.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/64.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/65.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/65.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/66.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/66.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/67.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/67.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/68.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/68.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/69.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/69.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/7.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/70.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/70.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/71.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/71.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/72.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/73.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/73.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/74.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/74.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/8.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/9.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-against-web-application/useable_in_between_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-against-web-application/useable_in_between_01.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/1.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/10.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/11.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/12.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/13.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/14.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/15.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/16.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/17.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/18.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/19.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/2.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/20.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/21.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/22.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/22.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/23.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/24.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/25.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/25.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/26.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/26.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/27.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/28.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/28.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/29.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/3.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/30.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/30.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/31.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/32.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/33.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/33.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/34.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/34.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/35.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/35.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/36.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/37.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/37.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/38.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/38.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/39.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/39.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/4.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/40.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/41.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/41.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/42.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/42.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/43.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/43.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/44.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/44.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/45.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/45.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/46.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/46.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/47.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/47.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/48.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/49.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/49.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/5.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/50.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/51.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/51.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/52.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/52.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/53.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/53.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/54.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/54.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/55.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/55.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/6.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/7.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/8.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-1/9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-1/9.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/1.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/10.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/11.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/12.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/13.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/14.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/15.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/16.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/17.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/18.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/19.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/2.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/20.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/21.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/22.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/22.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/23.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/24.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/25.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/25.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/26.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/26.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/3.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/4.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/5.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/6.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/7.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/8.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-privilege-escalations-2/9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-privilege-escalations-2/9.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/1.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/10.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/11.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/12.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/13.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/14.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/15.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/16.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/17.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/17.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/18.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/19.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/19.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/2.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/20.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/21.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/22.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/22.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/23.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/24.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/25.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/25.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/26.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/26.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/27.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/28.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/28.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/29.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/3.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/30.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/30.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/31.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/32.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/33.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/33.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/34.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/34.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/35.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/35.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/36.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/36.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/37.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/37.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/4.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/5.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/6.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/7.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/8.png
--------------------------------------------------------------------------------
/defence-manuals/images/defending-storage-buckets/9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/defence-manuals/images/defending-storage-buckets/9.png
--------------------------------------------------------------------------------
/modules/module-1/resources/cloud_function/data/requirements.txt:
--------------------------------------------------------------------------------
1 | google-cloud-storage==2.6.0
2 | google-cloud-firestore==2.7.2
3 | flask==2.2.2
4 | bcrypt==4.0.1
5 | pyjwt==1.7.1
--------------------------------------------------------------------------------
/modules/module-1/resources/cloud_function/react/index.html:
--------------------------------------------------------------------------------
1 |
INE
--------------------------------------------------------------------------------
/modules/module-1/resources/cloud_function/react/index.js:
--------------------------------------------------------------------------------
1 | var fs = require('fs');
2 | const util = require('util');
3 | const readFileAsync = util.promisify(fs.readFile);
4 | let path = require("path");
5 |
6 | exports.httpServer = function httpServer(req, res) {
7 | console.log(req);
8 | // res.status(200).send('Server is working');
9 | let bucket = process.env.BUCKET_NAME
10 | var html = fs.readFileSync(__dirname +'/index.html', 'utf8');
11 | html = html.replace(/GCP_BUCKET/g, `https://storage.googleapis.com/${bucket}/build`);
12 | res.status(200).send(html);
13 | }
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525172652548627.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525172652548627.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525172652568597.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525172652568597.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525173052304808.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525173052304808.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525173155599484.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525173155599484.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525173359279634.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525173359279634.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525173435646544.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525173435646544.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525174934318996.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525174934318996.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525175114306915.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525175114306915.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525175420931108.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525175420931108.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/images/20220525175644356721.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/images/20220525175644356721.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/config.txt:
--------------------------------------------------------------------------------
1 | Host VM_IP_ADDR
2 | HostName justin
3 | Port 22
4 | IdentityFile /shared/files/.ssh/keys/justin.pem
5 | User justin
6 |
7 | Host 10.25.14.6
8 | HostName alice
9 | Port 22
10 | IdentityFile /shared/files/.ssh/keys/alice.pem
11 | User alice
12 |
13 | Host 34.207.133.229
14 | HostName bob
15 | Port 22
16 | IdentityFile /shared/files/.ssh/keys/bob.pem
17 | User bob
18 |
19 | Host 10.25.14.106
20 | HostName charles
21 | Port 22
22 | IdentityFile /shared/files/.ssh/keys/charles.pem
23 | User charles
24 |
25 | Host 172.16.84.59
26 | HostName john
27 | Port 22
28 | IdentityFile /shared/files/.ssh/keys/john.pem
29 | User john
30 |
31 | Host 172.16.87.25
32 | HostName mary
33 | Port 22
34 | IdentityFile /shared/files/.ssh/keys/mary.pem
35 | User mary
36 |
37 | Host 172.22.26.8
38 | HostName mike
39 | Port 22
40 | IdentityFile /shared/files/.ssh/keys/mike.pem
41 | User mike
42 |
43 | Host 10.0.48.71
44 | HostName sophia
45 | Port 22
46 | IdentityFile /shared/files/.ssh/keys/sophia.pem
47 | User sophia
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/alice.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDFEK8LB3UbUDjfv85CiCAd+lMyf14lVjSLPUaSLhbNZimu9M80aKzt4h6BouAk4bLLgG5j38nVX6t8OAw+aLLnfG3gIJSdW66n1qZ2w7qhcQrLIy4haBbNoIZVCavktBrZ9r/WBMxKqW2JA6ni74B/drKH6ms5L4hyBfUdWuMUMWwtpuCe2ZGLFR71tFHf0ZbOwqSLVsQS5SDZGD9ZesEYTCLcxbgyV9ne/Ba+7bFkm/LHhUVXLU24KEre4t+LE9kSg/T1HdNPk7+UClCBP2kudmVF4pY7ak7hvA/KcoGoGGo2fFGvUr6pI9V8w0JRPIlHI5bExjw+5/DB24H1k+C6N3dFbJfTeeLg51cAq8asSwiFrLoNBknSAzUvbAFjK1UWAjYwSEi0Zm1ZLZi2DdeHAf0ScSY9vH/Ca9S+Met6CZmK5iWDfykuyYxTY1WnjvbAX+D9aScJpMIWP26wytlIcqcLzDoQsdeBJgZ6mtaHCmhg9FvczX2i0eRULgoFk2k= alice
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/bob.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCidX5buIyIFnzVZhTVLtCVIniKnam9LqZrgjhXxAj+dUiQzsGlZg15Z0SAFf8siGH1+HbyH4bC8XFCmKb9CMRwK2qZma7yXkKLIvPVYEfuwQJFful1durwQTHVdRqEoiT00ADIMlr0EgbQvsW13WUHDMhBzFFNtMSzTChSdr9lc7yriMc78mc5KSZXuS1N7Dr9wci7gFz/NkbZCftOx/cc9m/eq+RqsjbjwdLgB31pFQaN41yfm6v8TcvDqQXZv12STl6A4sfRxfC0BCEc8OdII576sBRfbRAxo4zCtIrsswj+5I7pENsx1j/T0je07o5MLdVJBspJlR95SxHONoZetXx5OrU9VC20jUGnbpHN7x9DBsMTW2lBZaFWDzW/6Hc1fhblupelOov2sNK5yGZh8cZfKMLKUB4E7k27CtZFfZLV2GwG5E3GAKTa5/vgTI+U0mX32zXF2hMC1eNfQafE8B9qYVyKH7cgPP/BskINyRO+BYnqUaHVz8t/AyeRlYE= bob
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/charles.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDQWFk42UyXvedm2dnEpUo8C5kACYK34ATgYhy3/gIjblLDpLvoVR4aWB47pSls8vCmsIr87k6wvkIOE0mk4AjHft0Po1quN14MGVD1EUJ/WHi00zx6rN7nLu8QjHbf7YpVuFR1RFwbyNoTCRdAFuoJIoMNJwML7K0Ie0IdW/7uu8GD03ntoQbcILbBAQEed3wb+9gT4Pr7eIpvVktg3pXhpO1L5RQsAGd6n5JWfkrsH2BHbUyAbpMnKPVJrJUEek/eCDxVM2t1268JITDq/ioSnNWcjC6m/CkVrj63Tq2e3HbLoM4cZu+j91hilH2QmwQHbxCl2PMqRv2/PQ1IQa3e33IE+bZbUqpiIfBJGamU9Qfb9oeKYjUdcvvlB6bnEMTT1aOkU2f32s8wBTkPkRPK18NB9AOtICuGr2ooLbk5WHGAwghtrwLRh3XAJxq2tiiWY1Ief4SCaDvHg4r0ua8sIpMoNjp/hh9Jw3x7FxEWkhGyxIL5uKzl8t2ZAC9uchs= charles
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/john.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDSkZpFYT2K2ExN/KGEs0QWQWF6c0kteoFNEUjvby7mg1ZAUniyovn1MOKSXls2Hev75Ep9TAtjPBra7x28wiQWyUYjhQAHolfjdCc+OorkP3UeD/nMQtLDx4NvzqQwVXF5Bxt8CfMp6oqhoWDpnYZJyWTr6AFxwHYsyQ4Tf1x5XqoWJDxXDzNTLQmfdSxGFZzrg5gAhM/GI2//jKEEj8OEMukMTsYyupl0npsxJVnPTD/5mkAokmlE7gdYxmnXDx1i7TNogMO0vSWoyT5BTolr/jEGNtMYxcUUgWnmDBhDBLhvF+2scgW9TQZX9NWoQ40Gu4KEw9V5VYQBUD6nrXxU1CDXmFMhAcfPmBsq22Jbt5Fvvji0c8tvqTurKPQ5ZGMdzFK7zieSiTYKthGAQ9HT031xOhU1ZLODCJhytbLNh6cImAa/v9e8MIAITuzytNMbFclqYrRFqzQxbfQq3FOS+H4komcgc3mXfcJrE23V59kewBcvy/UwNs7P9aEYmy0= john
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/justin.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDjtdhLMR07Y+LMHfMoljmNKhoPd6hrBh5cyFTGOcMgxGXsuL7wMTAEe3BW9jeYbhWxf7Gscgx92O9b1vSgR3cuevhVxN84cA/AVer6t7LYxkggsEW7d4ttVsu52yv6u/zP5in+7IsJAp37SeCkkPdsP08vLoSodQnvRTdAx8Fze7hGU7o1haXllJjq/xQDtpKqCc4ZaglXYpvP4iDHkcsjbun/VbxQXUBXxbxHyC3wa1udEvnhp1/5jflorBGnoS2P3tD+KQiECqXca1+bvOcxmbHG/cmhYdOagZJKl+3g/WO//EhablliQsuAklcxqILvNpwdmrspiHbEmU/5o4/bZ5Lu+fI+YUt1ofNJXIoLpVgVrt5ntorFbQv5njthlzSYFm+k1Ts607aymqHtKJwHdBSkYzsDLQD3iMG4iHTO+5julLo31oyzFKjiH5dvQ/EX0LvTwDmCZYiKDHlsKPIdFdZm1CcZtjQUCehP9QuXHBLBDK6XBpY87Hwo5737nrF2uj4x8JwP0AlO5S6Urbkc6P4AtD2s9DYCBEqmZ5I4+woL9K+V4CnjfNESe0j6jQvDKklhFOk1g3oMyy8iXJweCwE9uQxD+zIApX4lJyf84sxo3uR8pigUriwHuWoWSHv2QbtPGS8t/hNZbPv1mR2B4b2fjode0Gy1912lqfDF6Q== kali@kali
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/mary.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCqk8WvfglNe230wXkencpbYmCo1z/tpY/AOSZPOTg4ZZMQcBfYPWeceSOSD4JlRQ6vPUCIPsBKv4Gfj1XlEiptens5g3TRskvjP4JasJ5seIFg3tAMorGB9fLG3JOOFYVUVUDKRCWoy3X4FZokUVAB3PCUhfUcwSbhfh+t8+4QUqxn478ffA5ZE4oFM+x2ZEfSLDvJ0WvgDmBxhiZ1mGWF2nvTNHr9fCN1XjA61RJnxjj61LxbzZgPWvx9nS+0IISa0Y7KunKCSuYLFvxyAP6U2xeqXx2TpzX1nxsy4RhLGQwgrfZgGs7qtLHE8HUVGL5uUJfQN0fY8drU7n/vZDb7ZTLDZgiNlv2GuTH0dX8cO4TOJJtgBIJ1yG0yK1DW5v/ZIU+sgFcajvCzPC6s3mapW+VmQ/kSr6Xj/hrBTHZ6ZdgLE7gvgfxQSO6D4aNp8bxxFWWgQqTkDFtPxGHKjywjCCfel2fYoRWaqMBgJRkUCFIrOcObQg6TOb56ZzoeVWk= mary
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/mike.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC5e9y59/Dnq+8XdKrB/4UkeqDnbkNfRkHOSR7unz5+mvL0Pcq/JqNA1edro9F6WwKNl3l15bcnBrrjjSjOvc+I7OPlX1diAyfwmKetf4fMO/e7fuNNaIzeHHl72U4Kn5ZJGKpEhsOO6IfubobWj0bRHvcAbA6/Zv1LYzJeVae8qJattiC1Oe/6+qjzazeZaGU7t4wVOb/sq8s6+k568dVVz0ZG9EUsv24SMh7WdxpE6JwOJ8LySnhzJK06vZp+H1xj8RnugcqrePk/945JB4dS2dwzbzRxE+Wl4M/ez6/bAW7geLuUPTq08oRmY6iG15H/WpJNbhgf84X/v93tsRsNFbhxv4cQCPRhjgjBqRlkN9F2rFpoRxTtLxe+cZVmy8X7cMOELqn5yUtNvuNiLcEr3OshUhiAT1b8GsPTFNkNhHnlpgIx0ax/8MRrhcszIPmv7nrDhqu+kGdSkfQjmwnbqdZzr2z6lRlaWi4SNrlQaSSw0o+lAtKONoYrzZkXAz8= mike
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/files/.ssh/keys/sophia.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC8TbU83Zikoq2dWwKsbbKUqlvSj13zk3l7/pEgEhAMwhbSPvYIq+tLEA7req6LbOGT1rwEkBKuWA3K7iv/juAw33S6IbMKlyuycYvbAuTe3+xSFXpXcCvfxQhJ7qpqMESEXdfvf0/ateUn09K8YwPd4qpFJ/JA+ubBf1hxUDSwXa6j7UBAR83hXbO0tsB9VSDOzaj8kJvdMAt9li78NtTaw1GAtaKOrno1Zx9mgwgK1PXYji1vMQHxpTDcGdUI5hdkNAW7yzdflYQU4+4k25d+HTOVrAxskSN3SKPo0sam/u6z8cbaNucu/WGLzcYXbko/+s7bWfUxQ80jiWLPepBfJiBR7FMtRficwizxv6394ftdZFqnsx4F0QWrvAD3Q+pmBBDFU2Pf22uGurFc4GTe+IohWJQDpVD+WQvQ/PgWQTxoalMBiISxa/QTk/n8/YtFBt4I0n9ICZVU8POJVUz+hgJefjzzeKHTdz1O7LhXglCCss92LEONLYmnTn6+nQU= sophia
2 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/scripts/deploy_node.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | sudo adduser bob
4 | sudo su - bob
5 | mkdir .ssh
6 | chmod 700 .ssh
7 | touch .ssh/authorized_keys
8 | chmod 600 .ssh/authorized_keys
9 | aws s3 cp s3://BUCKET/keys/bob.pem ./
10 | cat bob.pem > .ssh/authorized_keys
11 |
12 | sudo yum install -y gcc-c++ make
13 | curl -sL https://rpm.nodesource.com/setup_14.x | sudo -E bash -
14 | sudo yum install -y nodejs
15 |
16 | sudo yum update -y
17 | sudo yum install git -y
18 |
19 | git clone https://github.com/GermaVinsmoke/bmi-calculator.git
20 | cd bmi-calculator
21 | npm install
22 |
23 | npm run build
24 |
25 | sudo su
26 | yum update -y
27 | yum install -y httpd php
28 | systemctl start httpd
29 | systemctl enable httpd
30 | usermod -a -G apache ec2-user
31 | chown -R ec2-user:apache /var/www
32 | chmod 2775 /var/www
33 | find /var/www -type d -exec chmod 2775 {} \;
34 | find /var/www -type f -exec chmod 0664 {} \;
35 |
36 | cp -r build/* /var/www/html/
37 | mkdir /var/www/html/bmi-calculator
38 | mv /var/www/html/static /var/www/html/bmi-calculator
39 | systemctl restart httpd.service
40 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/shared/scripts/php-deploy.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | yum update -y
3 | yum install -y httpd php
4 | systemctl start httpd
5 | systemctl enable httpd
6 | usermod -a -G apache ec2-user
7 | chown -R ec2-user:apache /var/www
8 | chmod 2775 /var/www
9 | find /var/www -type d -exec chmod 2775 {} \;
10 | find /var/www -type f -exec chmod 0664 {} \;
11 | # PHP script to display Instance ID and Availability Zone
12 | cat << 'EOF' > /var/www/html/index.php
13 |
14 |
15 |
16 |
17 |
25 | EC2 Instance ID:
26 | Availability Zone:
27 |
28 |
29 |
30 | EOF
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/asset-manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "files": {
3 | "main.css": "/static/css/main.e8c9e839.css",
4 | "main.js": "/static/js/main.adc6b28e.js",
5 | "static/js/787.8c65ad62.chunk.js": "/static/js/787.8c65ad62.chunk.js",
6 | "static/media/aws.jpg": "/static/media/aws.7f8d469729dd2de6cfb3.jpg",
7 | "static/media/aws-wname.jpg": "/static/media/aws-wname.ca2376115332eb5057e8.jpg",
8 | "static/media/full-logo.png": "/static/media/full-logo.d541d93800287b5e76bc.png",
9 | "static/media/azure-logo.png": "/static/media/azure-logo.a6f0fa0f711f4db88a15.png",
10 | "static/media/login.jpg": "/static/media/login.e21739546d37920dcfe5.jpg",
11 | "static/media/AWScloudtitle.jpg": "/static/media/AWScloudtitle.98cddcd1f55ecb7dbf64.jpg",
12 | "static/media/reset-password.jpg": "/static/media/reset-password.534bb9d0d1f845e91b10.jpg",
13 | "static/media/no-posts-found.jpg": "/static/media/no-posts-found.a48ad7ab109b12f96751.jpg",
14 | "static/media/register.jpg": "/static/media/register.4206b16c0ce018f0307d.jpg",
15 | "static/media/logo-title.png": "/static/media/logo-title.75c7c407bd28884bbbf7.png",
16 | "index.html": "/index.html",
17 | "main.e8c9e839.css.map": "/static/css/main.e8c9e839.css.map",
18 | "main.adc6b28e.js.map": "/static/js/main.adc6b28e.js.map",
19 | "787.8c65ad62.chunk.js.map": "/static/js/787.8c65ad62.chunk.js.map"
20 | },
21 | "entrypoints": [
22 | "static/css/main.e8c9e839.css",
23 | "static/js/main.adc6b28e.js"
24 | ]
25 | }
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/favicon/ine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/favicon/ine.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/favicon/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/favicon/logo.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/index.html:
--------------------------------------------------------------------------------
1 | INE
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "Minimal App",
3 | "name": "React Material Minimal UI Kit",
4 | "icons": [
5 | {
6 | "src": "favicon/ine.png",
7 | "sizes": "192x192",
8 | "type": "image/png"
9 | },
10 | {
11 | "src": "favicon/ine.png",
12 | "sizes": "512x512",
13 | "type": "image/png"
14 | }
15 | ],
16 | "start_url": ".",
17 | "display": "standalone",
18 | "theme_color": "#000000",
19 | "background_color": "#ffffff"
20 | }
21 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/icons/ic_flag_de.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/icons/ic_flag_en.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/icons/ic_flag_fr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/icons/ic_notification_mail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/icons/shape-avatar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/illustration_avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/illustration_avatar.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/illustration_login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/illustration_login.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/illustration_register.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/illustration_register.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/register.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/illustrations/register.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/logo.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/full-logo.d541d93800287b5e76bc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/full-logo.d541d93800287b5e76bc.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/gcp-logo.a6f0fa0f711f4db88a15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/gcp-logo.a6f0fa0f711f4db88a15.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/login.e21739546d37920dcfe5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/login.e21739546d37920dcfe5.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/logo-title.75c7c407bd28884bbbf7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/logo-title.75c7c407bd28884bbbf7.png
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/no-posts-found.a48ad7ab109b12f96751.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/no-posts-found.a48ad7ab109b12f96751.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/register.4206b16c0ce018f0307d.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/register.4206b16c0ce018f0307d.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/media/reset-password.534bb9d0d1f845e91b10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/media/reset-password.534bb9d0d1f845e91b10.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_1.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_10.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_11.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_12.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_13.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_14.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_15.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_16.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_17.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_18.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_19.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_2.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_20.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_21.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_22.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_23.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_24.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_3.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_4.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_5.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_6.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_7.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_8.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_9.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_default.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/avatars/avatar_default.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_1.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_10.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_11.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_12.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_13.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_14.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_15.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_16.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_17.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_18.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_19.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_2.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_20.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_21.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_22.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_23.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_24.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_3.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_4.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_5.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_6.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_7.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_8.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/covers/cover_9.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_1.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_10.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_11.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_12.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_13.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_14.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_15.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_16.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_17.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_18.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_19.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_2.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_20.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_21.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_22.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_23.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_24.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_3.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_4.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_5.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_6.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_7.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_8.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/mock-images/products/product_9.jpg
--------------------------------------------------------------------------------
/modules/module-1/resources/storage_bucket/webfiles/build/static/preview.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/resources/storage_bucket/webfiles/build/static/preview.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ### v1.4.0
2 |
3 | ###### Apr 12, 2022
4 |
5 | - Update `src/components`.
6 | - Update `src/sections`.
7 | - Update `src/pages`.
8 | - Update `src/layouts`.
9 | - Update `src/theme`.
10 | - Upgrade some dependencies to the latest versions
11 |
12 | ---
13 |
14 | ### v1.3.0
15 |
16 | ###### Feb 21, 2022
17 |
18 | - Support react-script v5.0.0
19 | - Source code improvement
20 | - Upgrade some dependencies to the latest versions
21 |
22 | ---
23 |
24 | ### v1.2.0
25 |
26 | ###### Sep 18, 2021
27 |
28 | - Support MIU v5.0.0 official release
29 | - Upgrade some dependencies to the latest versions
30 | - Update `src/theme/typography.js`
31 | - Upgrade some dependencies to the latest versions
32 |
33 | ---
34 |
35 | ### v1.1.0
36 |
37 | ###### Jul 23, 2021
38 |
39 | - Support MUI v5.0.0-beta.1
40 | - Upgrade some dependencies to the latest versions
41 |
42 | ---
43 |
44 | ### v1.0.0
45 |
46 | ###### Jun 28, 2021
47 |
48 | Initial release.
49 |
--------------------------------------------------------------------------------
/modules/module-1/src/LICENSE.md:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 Minimal UI ([https://minimals.cc/](https://minimals.cc/))
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/modules/module-1/src/README.md:
--------------------------------------------------------------------------------
1 | # Blog Application Setup and installations
2 |
3 | ## Steps to build application code
4 |
5 | 1. Create node_modules folder by executing the following command in ``src/``
6 |
7 | ```
8 | npm install
9 | ```
10 |
11 | 2. Make changes to the source code in ``src/src``.
12 |
13 | 3. Create build folder in ``src/`` by executing the following command.
14 |
15 | ```
16 | npm run build
17 | ```
18 |
19 | 4. After creating build folder, follow inside the folder and remove the _redirects file.
20 |
21 | 5. Replace the build folder in ``resources/storage_bucket/webfiles``
22 |
23 | 6. Copy the index.html file from ``resources/storage_bucket/webfiles/build`` to ``resources/cloud_function/react`` and run the following commands on it. On MacOS, ```-i``` might not be required for the following command.
24 |
25 | ```sh
26 | sed -i 's,href="/,href="GCP_BUCKET/,g' index.html
27 | sed -i 's,src="/,src="GCP_BUCKET/,g' index.html
28 | ```
29 |
30 | 7. Replace GCP_BUCKET in index.html file located in ``resources/cloud_function/react``
31 |
32 | 8. Run the terraform apply action.
--------------------------------------------------------------------------------
/modules/module-1/src/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "module": "commonjs",
5 | "baseUrl": "."
6 | },
7 | "include": [
8 | "src/**/*"
9 | ],
10 | "exclude": [
11 | "node_modules"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/public/_redirects:
--------------------------------------------------------------------------------
1 | /* /index.html 200
--------------------------------------------------------------------------------
/modules/module-1/src/public/favicon/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/favicon/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/public/favicon/ine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/favicon/ine.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/favicon/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/favicon/logo.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | INE
23 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "Minimal App",
3 | "name": "React Material Minimal UI Kit",
4 | "icons": [
5 | {
6 | "src": "favicon/ine.png",
7 | "sizes": "192x192",
8 | "type": "image/png"
9 | },
10 | {
11 | "src": "favicon/ine.png",
12 | "sizes": "512x512",
13 | "type": "image/png"
14 | }
15 | ],
16 | "start_url": ".",
17 | "display": "standalone",
18 | "theme_color": "#000000",
19 | "background_color": "#ffffff"
20 | }
21 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/icons/ic_flag_de.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/icons/ic_flag_en.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/icons/ic_flag_fr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/icons/ic_notification_mail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/icons/shape-avatar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/illustrations/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/illustrations/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/illustrations/illustration_avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/illustrations/illustration_avatar.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/illustrations/illustration_login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/illustrations/illustration_login.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/illustrations/illustration_register.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/illustrations/illustration_register.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/illustrations/register.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/illustrations/register.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/logo.png
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_1.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_10.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_11.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_12.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_13.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_14.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_15.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_16.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_17.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_18.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_19.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_2.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_20.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_21.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_22.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_23.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_24.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_3.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_4.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_5.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_6.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_7.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_8.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_9.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/avatars/avatar_default.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/avatars/avatar_default.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_1.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_10.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_11.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_12.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_13.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_14.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_15.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_16.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_17.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_18.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_19.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_2.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_20.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_21.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_22.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_23.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_24.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_3.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_4.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_5.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_6.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_7.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_8.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/covers/cover_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/covers/cover_9.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_1.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_10.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_11.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_12.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_13.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_14.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_15.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_16.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_17.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_18.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_19.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_2.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_20.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_21.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_22.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_23.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_24.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_3.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_4.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_5.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_6.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_7.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_8.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/mock-images/products/product_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/mock-images/products/product_9.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/public/static/preview.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/public/static/preview.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/App.js:
--------------------------------------------------------------------------------
1 | // routes
2 | import Router from './routes';
3 | // theme
4 | import ThemeProvider from './theme';
5 | // components
6 | import ScrollToTop from './components/ScrollToTop';
7 | import { BaseOptionChartStyle } from './components/chart/BaseOptionChart';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | export default function App() {
12 | return (
13 |
14 |
15 |
16 |
17 |
18 | );
19 | }
20 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/_mock/account.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | import { getUser } from '../sections/auth/AuthService';
4 |
5 | const user = getUser();
6 |
7 | const displayName = user !== 'undefined' && user ? user.name : '';
8 | const email = user !== 'undefined' && user ? user.email : '';
9 |
10 | // console.log("ACCOUNT", displayName, email)
11 |
12 | const account = {
13 | // displayName: 'Sanjeev Mahunta',
14 | // email: 'smahunta@ine.com',
15 | displayName,
16 | email,
17 | photoURL: '/static/mock-images/avatars/avatar_default.jpg',
18 | };
19 |
20 | export default account;
21 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/_mock/user.js:
--------------------------------------------------------------------------------
1 | // import React, {useEffect} from 'react';
2 | // import axios from 'axios';
3 | import { faker } from '@faker-js/faker';
4 | import { sample } from 'lodash';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const users = [...Array(24)].map((_, index) => ({
9 | id: faker.datatype.uuid(),
10 | avatarUrl: `/static/mock-images/avatars/avatar_${index + 1}.jpg`,
11 | name: faker.name.findName(),
12 | company: faker.company.companyName(),
13 | isVerified: faker.datatype.boolean(),
14 | status: sample(['active', 'banned']),
15 | role: sample([
16 | 'Leader',
17 | 'Hr Manager',
18 | 'UI Designer',
19 | 'UX Designer',
20 | 'UI/UX Designer',
21 | 'Project Manager',
22 | 'Backend Developer',
23 | 'Full Stack Designer',
24 | 'Front End Developer',
25 | 'Full Stack Developer',
26 | ]),
27 | }));
28 |
29 | // const users = [
30 | // {
31 | // company: "Apple",
32 | // id: "1",
33 | // isVerified: false,
34 | // name: "Sanjeev Mahunta",
35 | // role: "Software Engineer",
36 | // status: "active"
37 | // },
38 | // {
39 | // company: "Microsoft",
40 | // id: "2",
41 | // isVerified: false,
42 | // name: "Sansa Stark",
43 | // role: "Data Scientist",
44 | // status: "banned"
45 | // },
46 | // {
47 | // company: "Facebook",
48 | // id: "3",
49 | // isVerified: true,
50 | // name: "Jon Snow",
51 | // role: "Nangdoosh",
52 | // status: "active"
53 | // },
54 | // ]
55 | export default users;
56 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/common/httpService.js:
--------------------------------------------------------------------------------
1 | import axios from "axios";
2 | import { getToken } from '../sections/auth/AuthService';
3 |
4 | export default axios.create({
5 | baseURL: "CLOUD_FUNCTION_URL",
6 | headers: {
7 | "Content-type": "application/json",
8 | "jwt-token": getToken(),
9 | }
10 | });
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/Iconify.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // icons
3 | import { Icon } from '@iconify/react';
4 | // @mui
5 | import { Box } from '@mui/material';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | Iconify.propTypes = {
10 | icon: PropTypes.oneOfType([PropTypes.element, PropTypes.string]),
11 | sx: PropTypes.object,
12 | };
13 |
14 | export default function Iconify({ icon, sx, ...other }) {
15 | return ;
16 | }
17 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/MenuPopover.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { Popover } from '@mui/material';
4 | import { alpha, styled } from '@mui/material/styles';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const ArrowStyle = styled('span')(({ theme }) => ({
9 | [theme.breakpoints.up('sm')]: {
10 | top: -7,
11 | zIndex: 1,
12 | width: 12,
13 | right: 20,
14 | height: 12,
15 | content: "''",
16 | position: 'absolute',
17 | borderRadius: '0 0 4px 0',
18 | transform: 'rotate(-135deg)',
19 | background: theme.palette.background.paper,
20 | borderRight: `solid 1px ${alpha(theme.palette.grey[500], 0.12)}`,
21 | borderBottom: `solid 1px ${alpha(theme.palette.grey[500], 0.12)}`,
22 | },
23 | }));
24 |
25 | // ----------------------------------------------------------------------
26 |
27 | MenuPopover.propTypes = {
28 | children: PropTypes.node.isRequired,
29 | sx: PropTypes.object,
30 | };
31 |
32 | export default function MenuPopover({ children, sx, ...other }) {
33 | return (
34 |
47 |
48 |
49 | {children}
50 |
51 | );
52 | }
53 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/Page.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Helmet } from 'react-helmet-async';
3 | import { forwardRef } from 'react';
4 | // @mui
5 | import { Box } from '@mui/material';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | const Page = forwardRef(({ children, title = '', meta, ...other }, ref) => (
10 | <>
11 |
12 | {`${title}`}
13 | {meta}
14 |
15 |
16 |
17 | {children}
18 |
19 | >
20 | ));
21 |
22 | Page.propTypes = {
23 | children: PropTypes.node.isRequired,
24 | title: PropTypes.string,
25 | meta: PropTypes.node,
26 | };
27 |
28 | export default Page;
29 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/ScrollToTop.js:
--------------------------------------------------------------------------------
1 | import { useEffect } from 'react';
2 | import { useLocation } from 'react-router-dom';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | export default function ScrollToTop() {
7 | const { pathname } = useLocation();
8 |
9 | useEffect(() => {
10 | window.scrollTo(0, 0);
11 | }, [pathname]);
12 |
13 | return null;
14 | }
15 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/SearchNotFound.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { Paper, Typography } from '@mui/material';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | SearchNotFound.propTypes = {
8 | searchQuery: PropTypes.string,
9 | };
10 |
11 | export default function SearchNotFound({ searchQuery = '', ...other }) {
12 | return (
13 |
14 | Results for
15 |
16 | );
17 | }
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/SvgIconStyle.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Box } from '@mui/material';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | SvgIconStyle.propTypes = {
7 | src: PropTypes.string.isRequired,
8 | sx: PropTypes.object,
9 | };
10 |
11 | export default function SvgIconStyle({ src, sx }) {
12 | return (
13 |
25 | );
26 | }
27 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/UserDetailsPopOver.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { Popover } from '@mui/material';
4 | import { alpha, styled } from '@mui/material/styles';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | UserDetailsPopOver.propTypes = {
9 | children: PropTypes.node.isRequired,
10 | sx: PropTypes.object,
11 | };
12 |
13 | export default function UserDetailsPopOver({ children, sx, ...other }) {
14 | return (
15 |
28 | {children}
29 |
30 | );
31 | }
32 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/chart/index.js:
--------------------------------------------------------------------------------
1 | export { default as BaseOptionChart } from './BaseOptionChart';
2 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/color-utils/ColorPreview.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { alpha, styled } from '@mui/material/styles';
4 | import { Box, Typography } from '@mui/material';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const RootStyle = styled(Box)({
9 | display: 'flex',
10 | alignItems: 'center',
11 | justifyContent: 'flex-end',
12 | });
13 |
14 | const IconStyle = styled('div')(({ theme }) => ({
15 | marginLeft: -4,
16 | borderRadius: '50%',
17 | width: theme.spacing(2),
18 | height: theme.spacing(2),
19 | border: `solid 2px ${theme.palette.background.paper}`,
20 | boxShadow: `inset -1px 1px 2px ${alpha(theme.palette.common.black, 0.24)}`,
21 | }));
22 |
23 | // ----------------------------------------------------------------------
24 |
25 | ColorPreview.propTypes = {
26 | colors: PropTypes.array.isRequired,
27 | limit: PropTypes.number,
28 | };
29 |
30 | export default function ColorPreview({ colors, limit = 3, ...other }) {
31 | const showColor = colors.slice(0, limit);
32 | const moreColor = colors.length - limit;
33 |
34 | return (
35 |
36 | {showColor.map((color, index) => (
37 |
38 | ))}
39 |
40 | {colors.length > limit && {`+${moreColor}`}}
41 |
42 | );
43 | }
44 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/components/color-utils/index.js:
--------------------------------------------------------------------------------
1 | export { default as ColorPreview } from './ColorPreview';
2 | export { default as ColorManyPicker } from './ColorManyPicker';
3 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/hooks/useResponsive.js:
--------------------------------------------------------------------------------
1 | // @mui
2 | import { useTheme } from '@mui/material/styles';
3 | import useMediaQuery from '@mui/material/useMediaQuery';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | export default function useResponsive(query, key, start, end) {
8 | const theme = useTheme();
9 |
10 | const mediaUp = useMediaQuery(theme.breakpoints.up(key));
11 |
12 | const mediaDown = useMediaQuery(theme.breakpoints.down(key));
13 |
14 | const mediaBetween = useMediaQuery(theme.breakpoints.between(start, end));
15 |
16 | const mediaOnly = useMediaQuery(theme.breakpoints.only(key));
17 |
18 | if (query === 'up') {
19 | return mediaUp;
20 | }
21 |
22 | if (query === 'down') {
23 | return mediaDown;
24 | }
25 |
26 | if (query === 'between') {
27 | return mediaBetween;
28 | }
29 |
30 | if (query === 'only') {
31 | return mediaOnly;
32 | }
33 | return null;
34 | }
35 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/avatar-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/avatar-1.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/avatar-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/avatar-2.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/avatar-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/avatar-3.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/avatar-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/avatar-4.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/avatar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/avatar.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/full-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/full-logo.png
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/gcp-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/gcp-logo.png
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/login.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/login.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/logo-title.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/logo-title.png
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/logo.png
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/no-posts-found.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/no-posts-found.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/register.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/register.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/images/reset-password.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/images/reset-password.jpg
--------------------------------------------------------------------------------
/modules/module-1/src/src/index.js:
--------------------------------------------------------------------------------
1 | // scroll bar
2 | import 'simplebar/src/simplebar.css';
3 |
4 | import ReactDOM from 'react-dom';
5 | import { HashRouter } from 'react-router-dom';
6 | import { HelmetProvider } from 'react-helmet-async';
7 |
8 | //
9 | import App from './App';
10 | import * as serviceWorker from './serviceWorker';
11 | import reportWebVitals from './reportWebVitals';
12 |
13 | // ----------------------------------------------------------------------
14 |
15 | ReactDOM.render(
16 |
17 |
18 |
19 |
20 | ,
21 | document.getElementById('root')
22 | );
23 |
24 | // If you want to enable client cache, register instead.
25 | serviceWorker.unregister();
26 |
27 | // If you want to start measuring performance in your app, pass a function
28 | // to log results (for example: reportWebVitals(console.log))
29 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
30 | reportWebVitals();
31 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/layouts/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/layouts/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/layouts/LogoOnlyLayout.js:
--------------------------------------------------------------------------------
1 | import { Outlet } from 'react-router-dom';
2 | // material
3 | import { styled } from '@mui/material/styles';
4 | // components
5 | import Logo from '../components/Logo';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | const HeaderStyle = styled('header')(({ theme }) => ({
10 | top: 0,
11 | left: 0,
12 | lineHeight: 0,
13 | width: '100%',
14 | position: 'absolute',
15 | padding: theme.spacing(3, 3, 0),
16 | [theme.breakpoints.up('sm')]: {
17 | padding: theme.spacing(5, 5, 0),
18 | },
19 | }));
20 |
21 | // ----------------------------------------------------------------------
22 |
23 | export default function LogoOnlyLayout() {
24 | return (
25 | <>
26 |
27 |
28 |
29 |
30 | >
31 | );
32 | }
33 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/layouts/dashboard/NavConfig.js:
--------------------------------------------------------------------------------
1 | // component
2 | import Iconify from '../../components/Iconify';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | const getIcon = (name) => ;
7 |
8 | const navConfig = [
9 | {
10 | title: 'dashboard',
11 | path: '/dashboard/app',
12 | icon: getIcon('eva:pie-chart-2-fill'),
13 | },
14 | {
15 | title: 'user',
16 | path: '/dashboard/user',
17 | icon: getIcon('eva:people-fill'),
18 | },
19 | // {
20 | // title: 'product',
21 | // path: '/dashboard/products',
22 | // icon: getIcon('eva:shopping-bag-fill'),
23 | // },
24 | {
25 | title: 'newpost',
26 | path: '/dashboard/newpost',
27 | icon: getIcon('eva:book-fill'),
28 | },
29 | {
30 | title: 'posts',
31 | path: '/dashboard/posts',
32 | icon: getIcon('eva:file-text-fill'),
33 | },
34 | {
35 | title: 'profile',
36 | path: '/dashboard/profile',
37 | icon: getIcon('eva:person-fill'),
38 | },
39 | // {
40 | // title: 'login',
41 | // path: '/login',
42 | // icon: getIcon('eva:lock-fill'),
43 | // },
44 | // {
45 | // title: 'register',
46 | // path: '/register',
47 | // icon: getIcon('eva:person-add-fill'),
48 | // },
49 | // {
50 | // title: 'Not found',
51 | // path: '/404',
52 | // icon: getIcon('eva:alert-triangle-fill'),
53 | // },
54 | ];
55 |
56 | export default navConfig;
57 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/layouts/dashboard/index.js:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 | import { Outlet } from 'react-router-dom';
3 | // material
4 | import { styled } from '@mui/material/styles';
5 | //
6 | import DashboardNavbar from './DashboardNavbar';
7 | import DashboardSidebar from './DashboardSidebar';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | const APP_BAR_MOBILE = 64;
12 | const APP_BAR_DESKTOP = 92;
13 |
14 | const RootStyle = styled('div')({
15 | display: 'flex',
16 | minHeight: '100%',
17 | overflow: 'hidden'
18 | });
19 |
20 | const MainStyle = styled('div')(({ theme }) => ({
21 | flexGrow: 1,
22 | overflow: 'auto',
23 | minHeight: '100%',
24 | paddingTop: APP_BAR_MOBILE + 24,
25 | paddingBottom: theme.spacing(10),
26 | [theme.breakpoints.up('lg')]: {
27 | paddingTop: APP_BAR_DESKTOP + 24,
28 | paddingLeft: theme.spacing(2),
29 | paddingRight: theme.spacing(2)
30 | }
31 | }));
32 |
33 | // ----------------------------------------------------------------------
34 |
35 | export default function DashboardLayout() {
36 | const [open, setOpen] = useState(false);
37 |
38 | return (
39 |
40 | setOpen(true)} />
41 | setOpen(false)} />
42 |
43 |
44 |
45 |
46 | );
47 | }
48 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/logo.png
--------------------------------------------------------------------------------
/modules/module-1/src/src/pages/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/pages/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/pages/Products.js:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 | // material
3 | import { Container, Stack, Typography } from '@mui/material';
4 | // components
5 | import Page from '../components/Page';
6 | import { ProductSort, ProductList, ProductCartWidget, ProductFilterSidebar } from '../sections/@dashboard/products';
7 | // mock
8 | import PRODUCTS from '../_mock/products';
9 |
10 | // ----------------------------------------------------------------------
11 |
12 | export default function EcommerceShop() {
13 | const [openFilter, setOpenFilter] = useState(false);
14 |
15 | const handleOpenFilter = () => {
16 | setOpenFilter(true);
17 | };
18 |
19 | const handleCloseFilter = () => {
20 | setOpenFilter(false);
21 | };
22 |
23 | return (
24 |
25 |
26 |
27 | Products
28 |
29 |
30 |
31 |
32 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 | );
46 | }
47 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/placeholder.png
--------------------------------------------------------------------------------
/modules/module-1/src/src/reportWebVitals.js:
--------------------------------------------------------------------------------
1 | const reportWebVitals = (onPerfEntry) => {
2 | if (onPerfEntry && onPerfEntry instanceof Function) {
3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
4 | getCLS(onPerfEntry);
5 | getFID(onPerfEntry);
6 | getFCP(onPerfEntry);
7 | getLCP(onPerfEntry);
8 | getTTFB(onPerfEntry);
9 | });
10 | }
11 | };
12 |
13 | export default reportWebVitals;
14 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/sections/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/sections/@dashboard/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/app/AppTrafficBySite.js:
--------------------------------------------------------------------------------
1 | // @mui
2 | import PropTypes from 'prop-types';
3 | import { Box, Card, Paper, Typography, CardHeader, CardContent } from '@mui/material';
4 | // utils
5 | import { fShortenNumber } from '../../../utils/formatNumber';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | AppTrafficBySite.propTypes = {
10 | title: PropTypes.string,
11 | subheader: PropTypes.string,
12 | list: PropTypes.array.isRequired,
13 | };
14 |
15 | export default function AppTrafficBySite({ title, subheader, list, ...other }) {
16 | return (
17 |
18 |
19 |
20 |
21 |
28 | {list.map((site) => (
29 |
30 | {site.icon}
31 |
32 | {fShortenNumber(site.value)}
33 |
34 |
35 | {site.name}
36 |
37 |
38 | ))}
39 |
40 |
41 |
42 | );
43 | }
44 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/app/AppWebsiteVisits.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import merge from 'lodash/merge';
3 | import ReactApexChart from 'react-apexcharts';
4 | // @mui
5 | import { Card, CardHeader, Box } from '@mui/material';
6 | // components
7 | import { BaseOptionChart } from '../../../components/chart';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | AppWebsiteVisits.propTypes = {
12 | title: PropTypes.string,
13 | subheader: PropTypes.string,
14 | chartData: PropTypes.array.isRequired,
15 | chartLabels: PropTypes.arrayOf(PropTypes.string).isRequired,
16 | };
17 |
18 | export default function AppWebsiteVisits({ title, subheader, chartLabels, chartData, ...other }) {
19 | const chartOptions = merge(BaseOptionChart(), {
20 | plotOptions: { bar: { columnWidth: '16%' } },
21 | fill: { type: chartData.map((i) => i.fill) },
22 | labels: chartLabels,
23 | xaxis: { type: 'datetime' },
24 | tooltip: {
25 | shared: true,
26 | intersect: false,
27 | y: {
28 | formatter: (y) => {
29 | if (typeof y !== 'undefined') {
30 | return `${y.toFixed(0)} posts`;
31 | }
32 | return y;
33 | },
34 | },
35 | },
36 | });
37 |
38 | return (
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 | );
47 | }
48 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/app/index.js:
--------------------------------------------------------------------------------
1 | export { default as AppTasks } from './AppTasks';
2 | export { default as AppNewsUpdate } from './AppNewsUpdate';
3 | export { default as AppCurrentVisits } from './AppCurrentVisits';
4 | export { default as AppOrderTimeline } from './AppOrderTimeline';
5 | export { default as AppTrafficBySite } from './AppTrafficBySite';
6 | export { default as AppWebsiteVisits } from './AppWebsiteVisits';
7 | export { default as AppWidgetSummary } from './AppWidgetSummary';
8 | export { default as AppCurrentSubject } from './AppCurrentSubject';
9 | export { default as AppConversionRates } from './AppConversionRates';
10 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/blog/BlogPostsSort.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { MenuItem, TextField } from '@mui/material';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | BlogPostsSort.propTypes = {
8 | options: PropTypes.array,
9 | onSort: PropTypes.func
10 | };
11 |
12 | export default function BlogPostsSort({ options, onSort }) {
13 | return (
14 |
15 | {options.map((option) => (
16 |
19 | ))}
20 |
21 | );
22 | }
23 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/blog/index.js:
--------------------------------------------------------------------------------
1 | export { default as BlogPostCard } from './BlogPostCard';
2 | export { default as BlogPostsSearch } from './BlogPostsSearch';
3 | export { default as BlogPostsSort } from './BlogPostsSort';
4 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/newpost/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/sections/@dashboard/newpost/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/newpost/NewPostCardSort.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { MenuItem, TextField } from '@mui/material';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | NewPostCardSort.propTypes = {
8 | options: PropTypes.array,
9 | onSort: PropTypes.func
10 | };
11 |
12 | export default function NewPostCardSort({ options, onSort }) {
13 | return (
14 |
15 | {options.map((option) => (
16 |
19 | ))}
20 |
21 | );
22 | }
23 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/newpost/index.js:
--------------------------------------------------------------------------------
1 | export { default as NewPostCard } from './NewPostCard';
2 | export { default as NewPostCardSearch } from './NewPostCardSearch';
3 | export { default as NewPostCardSort } from './NewPostCardSort';
4 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/products/ProductCartWidget.js:
--------------------------------------------------------------------------------
1 | // material
2 | import { styled } from '@mui/material/styles';
3 | import { Badge } from '@mui/material';
4 | // component
5 | import Iconify from '../../../components/Iconify';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | const RootStyle = styled('div')(({ theme }) => ({
10 | zIndex: 999,
11 | right: 0,
12 | display: 'flex',
13 | cursor: 'pointer',
14 | position: 'fixed',
15 | alignItems: 'center',
16 | top: theme.spacing(16),
17 | height: theme.spacing(5),
18 | paddingLeft: theme.spacing(2),
19 | paddingRight: theme.spacing(2),
20 | paddingTop: theme.spacing(1.25),
21 | boxShadow: theme.customShadows.z20,
22 | color: theme.palette.text.primary,
23 | backgroundColor: theme.palette.background.paper,
24 | borderTopLeftRadius: Number(theme.shape.borderRadius) * 2,
25 | borderBottomLeftRadius: Number(theme.shape.borderRadius) * 2,
26 | transition: theme.transitions.create('opacity'),
27 | '&:hover': { opacity: 0.72 }
28 | }));
29 |
30 | // ----------------------------------------------------------------------
31 |
32 | export default function CartWidget() {
33 | return (
34 |
35 |
36 |
37 |
38 |
39 | );
40 | }
41 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/products/ProductList.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { Grid } from '@mui/material';
4 | import ShopProductCard from './ProductCard';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | ProductList.propTypes = {
9 | products: PropTypes.array.isRequired
10 | };
11 |
12 | export default function ProductList({ products, ...other }) {
13 | return (
14 |
15 | {products.map((product) => (
16 |
17 |
18 |
19 | ))}
20 |
21 | );
22 | }
23 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/products/index.js:
--------------------------------------------------------------------------------
1 | export { default as ProductCard } from './ProductCard';
2 | export { default as ProductList } from './ProductList';
3 | export { default as ProductSort } from './ProductSort';
4 | export { default as ProductCartWidget } from './ProductCartWidget';
5 | export { default as ProductFilterSidebar } from './ProductFilterSidebar';
6 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/@dashboard/user/index.js:
--------------------------------------------------------------------------------
1 | export { default as UserListHead } from './UserListHead';
2 | export { default as UserListToolbar } from './UserListToolbar';
3 | export { default as UserMoreMenu } from './UserMoreMenu';
4 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/auth/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ine-labs/GCPGoat/44605c4bff4b2da7611dfce78696bb53db6d8c54/modules/module-1/src/src/sections/auth/.DS_Store
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/auth/AuthService.js:
--------------------------------------------------------------------------------
1 | export function getUser() {
2 | const user = sessionStorage.getItem("user");
3 | if (user === "undefined" || !user) {
4 | return null;
5 | }
6 | return JSON.parse(user);
7 | }
8 | export function getToken() {
9 | return sessionStorage.getItem("token");
10 | }
11 | export function setUserSession(user, token) {
12 | sessionStorage.setItem("user", JSON.stringify(user));
13 | sessionStorage.setItem("token", token);
14 | }
15 | export function resetUserSession() {
16 | sessionStorage.removeItem("user");
17 | sessionStorage.removeItem("token");
18 | }
19 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/auth/AuthSocial.js:
--------------------------------------------------------------------------------
1 | // material
2 | import { Stack, Button, Divider, Typography } from '@mui/material';
3 | // component
4 | import Iconify from '../../components/Iconify';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | export default function AuthSocial() {
9 | return (
10 | <>
11 |
12 |
15 |
16 |
19 |
20 |
23 |
24 |
25 |
26 |
27 | OR
28 |
29 |
30 | >
31 | );
32 | }
33 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/auth/login/index.js:
--------------------------------------------------------------------------------
1 | export { default as LoginForm } from './LoginForm';
2 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/auth/register/index.js:
--------------------------------------------------------------------------------
1 | export { default as RegisterForm } from './RegisterForm';
2 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/sections/auth/resetpassword/index.js:
--------------------------------------------------------------------------------
1 | export { default as ResetPasswordForm } from './ResetPasswordForm';
2 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom/extend-expect';
6 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/index.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { useMemo } from 'react';
3 | // material
4 | import { CssBaseline } from '@mui/material';
5 | import { ThemeProvider as MUIThemeProvider, createTheme, StyledEngineProvider } from '@mui/material/styles';
6 | //
7 | import palette from './palette';
8 | import typography from './typography';
9 | import componentsOverride from './overrides';
10 | import shadows, { customShadows } from './shadows';
11 |
12 | // ----------------------------------------------------------------------
13 |
14 | ThemeProvider.propTypes = {
15 | children: PropTypes.node,
16 | };
17 |
18 | export default function ThemeProvider({ children }) {
19 | const themeOptions = useMemo(
20 | () => ({
21 | palette,
22 | shape: { borderRadius: 8 },
23 | typography,
24 | shadows,
25 | customShadows,
26 | }),
27 | []
28 | );
29 |
30 | const theme = createTheme(themeOptions);
31 | theme.components = componentsOverride(theme);
32 |
33 | return (
34 |
35 |
36 |
37 | {children}
38 |
39 |
40 | );
41 | }
42 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Autocomplete.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Autocomplete(theme) {
4 | return {
5 | MuiAutocomplete: {
6 | styleOverrides: {
7 | paper: {
8 | boxShadow: theme.customShadows.z20
9 | }
10 | }
11 | }
12 | };
13 | }
14 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Backdrop.js:
--------------------------------------------------------------------------------
1 | import { alpha } from '@mui/material/styles';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export default function Backdrop(theme) {
6 | const varLow = alpha(theme.palette.grey[900], 0.48);
7 | const varHigh = alpha(theme.palette.grey[900], 1);
8 |
9 | return {
10 | MuiBackdrop: {
11 | styleOverrides: {
12 | root: {
13 | background: [
14 | `rgb(22,28,36)`,
15 | `-moz-linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`,
16 | `-webkit-linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`,
17 | `linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`
18 | ],
19 | '&.MuiBackdrop-invisible': {
20 | background: 'transparent'
21 | }
22 | }
23 | }
24 | }
25 | };
26 | }
27 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Button.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Button(theme) {
4 | return {
5 | MuiButton: {
6 | styleOverrides: {
7 | root: {
8 | '&:hover': {
9 | boxShadow: 'none'
10 | }
11 | },
12 | sizeLarge: {
13 | height: 48
14 | },
15 | containedInherit: {
16 | color: theme.palette.grey[800],
17 | boxShadow: theme.customShadows.z8,
18 | '&:hover': {
19 | backgroundColor: theme.palette.grey[400]
20 | }
21 | },
22 | containedPrimary: {
23 | boxShadow: theme.customShadows.primary
24 | },
25 | containedSecondary: {
26 | boxShadow: theme.customShadows.secondary
27 | },
28 | outlinedInherit: {
29 | border: `1px solid ${theme.palette.grey[500_32]}`,
30 | '&:hover': {
31 | backgroundColor: theme.palette.action.hover
32 | }
33 | },
34 | textInherit: {
35 | '&:hover': {
36 | backgroundColor: theme.palette.action.hover
37 | }
38 | }
39 | }
40 | }
41 | };
42 | }
43 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Card.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Card(theme) {
4 | return {
5 | MuiCard: {
6 | styleOverrides: {
7 | root: {
8 | boxShadow: theme.shadows[2],
9 | borderRadius: Number(theme.shape.borderRadius) * 2,
10 | position: 'relative',
11 | zIndex: 0, // Fix Safari overflow: hidden with border radius
12 | },
13 | },
14 | },
15 | MuiCardHeader: {
16 | defaultProps: {
17 | titleTypographyProps: { variant: 'h6' },
18 | subheaderTypographyProps: { variant: 'body2' },
19 | },
20 | styleOverrides: {
21 | root: {
22 | padding: theme.spacing(3, 3, 0),
23 | },
24 | },
25 | },
26 | MuiCardContent: {
27 | styleOverrides: {
28 | root: {
29 | padding: theme.spacing(3),
30 | },
31 | },
32 | },
33 | };
34 | }
35 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/CssBaseline.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function CssBaseline() {
4 | return {
5 | MuiCssBaseline: {
6 | styleOverrides: {
7 | '*': {
8 | margin: 0,
9 | padding: 0,
10 | boxSizing: 'border-box',
11 | },
12 | html: {
13 | width: '100%',
14 | height: '100%',
15 | WebkitOverflowScrolling: 'touch',
16 | },
17 | body: {
18 | width: '100%',
19 | height: '100%',
20 | },
21 | '#root': {
22 | width: '100%',
23 | height: '100%',
24 | },
25 | input: {
26 | '&[type=number]': {
27 | MozAppearance: 'textfield',
28 | '&::-webkit-outer-spin-button': {
29 | margin: 0,
30 | WebkitAppearance: 'none',
31 | },
32 | '&::-webkit-inner-spin-button': {
33 | margin: 0,
34 | WebkitAppearance: 'none',
35 | },
36 | },
37 | },
38 | img: {
39 | display: 'block',
40 | maxWidth: '100%',
41 | },
42 | },
43 | },
44 | };
45 | }
46 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/IconButton.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function IconButton(theme) {
4 | return {
5 | MuiIconButton: {
6 | variants: [
7 | {
8 | props: { color: 'default' },
9 | style: {
10 | '&:hover': { backgroundColor: theme.palette.action.hover }
11 | }
12 | },
13 | {
14 | props: { color: 'inherit' },
15 | style: {
16 | '&:hover': { backgroundColor: theme.palette.action.hover }
17 | }
18 | }
19 | ],
20 |
21 | styleOverrides: {
22 | root: {}
23 | }
24 | }
25 | };
26 | }
27 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Lists.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Lists(theme) {
4 | return {
5 | MuiListItemIcon: {
6 | styleOverrides: {
7 | root: {
8 | color: 'inherit',
9 | minWidth: 'auto',
10 | marginRight: theme.spacing(2)
11 | }
12 | }
13 | },
14 | MuiListItemAvatar: {
15 | styleOverrides: {
16 | root: {
17 | minWidth: 'auto',
18 | marginRight: theme.spacing(2)
19 | }
20 | }
21 | },
22 | MuiListItemText: {
23 | styleOverrides: {
24 | root: {
25 | marginTop: 0,
26 | marginBottom: 0
27 | },
28 | multiline: {
29 | marginTop: 0,
30 | marginBottom: 0
31 | }
32 | }
33 | }
34 | };
35 | }
36 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Paper.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Paper() {
4 | return {
5 | MuiPaper: {
6 | defaultProps: {
7 | elevation: 0
8 | },
9 |
10 | styleOverrides: {
11 | root: {
12 | backgroundImage: 'none'
13 | }
14 | }
15 | }
16 | };
17 | }
18 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Tooltip.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Tooltip(theme) {
4 | return {
5 | MuiTooltip: {
6 | styleOverrides: {
7 | tooltip: {
8 | backgroundColor: theme.palette.grey[800]
9 | },
10 | arrow: {
11 | color: theme.palette.grey[800]
12 | }
13 | }
14 | }
15 | };
16 | }
17 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/Typography.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Typography(theme) {
4 | return {
5 | MuiTypography: {
6 | styleOverrides: {
7 | paragraph: {
8 | marginBottom: theme.spacing(2)
9 | },
10 | gutterBottom: {
11 | marginBottom: theme.spacing(1)
12 | }
13 | }
14 | }
15 | };
16 | }
17 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/theme/overrides/index.js:
--------------------------------------------------------------------------------
1 | //
2 |
3 | import Card from './Card';
4 | import Paper from './Paper';
5 | import Input from './Input';
6 | import Button from './Button';
7 | import Tooltip from './Tooltip';
8 | import Backdrop from './Backdrop';
9 | import Typography from './Typography';
10 | import CssBaseline from './CssBaseline';
11 | import Autocomplete from './Autocomplete';
12 |
13 | // ----------------------------------------------------------------------
14 |
15 | export default function ComponentsOverrides(theme) {
16 | return Object.assign(
17 | Card(theme),
18 | Input(theme),
19 | Paper(theme),
20 | Button(theme),
21 | Tooltip(theme),
22 | Backdrop(theme),
23 | Typography(theme),
24 | CssBaseline(theme),
25 | Autocomplete(theme)
26 | );
27 | }
28 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/utils/formatNumber.js:
--------------------------------------------------------------------------------
1 | import { replace } from 'lodash';
2 | import numeral from 'numeral';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | export function fCurrency(number) {
7 | return numeral(number).format(Number.isInteger(number) ? '$0,0' : '$0,0.00');
8 | }
9 |
10 | export function fPercent(number) {
11 | return numeral(number / 100).format('0.0%');
12 | }
13 |
14 | export function fNumber(number) {
15 | return numeral(number).format();
16 | }
17 |
18 | export function fShortenNumber(number) {
19 | return replace(numeral(number).format('0.00a'), '.00', '');
20 | }
21 |
22 | export function fData(number) {
23 | return numeral(number).format('0.0 b');
24 | }
25 |
--------------------------------------------------------------------------------
/modules/module-1/src/src/utils/formatTime.js:
--------------------------------------------------------------------------------
1 | import { format, formatDistanceToNow } from 'date-fns';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export function fDate(date) {
6 | return format(new Date(date), 'dd MMMM yyyy');
7 | }
8 |
9 | export function fDateTime(date) {
10 | return format(new Date(date), 'dd MMM yyyy HH:mm');
11 | }
12 |
13 | export function fDateTimeSuffix(date) {
14 | return format(new Date(date), 'dd/MM/yyyy hh:mm p');
15 | }
16 |
17 | export function fToNow(date) {
18 | return formatDistanceToNow(new Date(date), {
19 | addSuffix: true,
20 | });
21 | }
22 |
--------------------------------------------------------------------------------