diff --git a/.env.testing b/.env.testing new file mode 100644 index 0000000..ca3e8ca --- /dev/null +++ b/.env.testing @@ -0,0 +1,2 @@ +VITE_PUBLICPATH=/testing/obme/resources/ +VITE_DEBUG=true \ No newline at end of file diff --git a/.github/workflows/testing_push_to_s3.yml b/.github/workflows/testing_push_to_s3.yml new file mode 100644 index 0000000..ff3636d --- /dev/null +++ b/.github/workflows/testing_push_to_s3.yml @@ -0,0 +1,40 @@ +# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions + +name: testing Push to S3 + +on: + push: + branches: + - vue3-pinboard + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 20.x + uses: actions/setup-node@v3 + with: + node-version: '20.x' + cache: 'npm' + + - name: npm install, and build + run: | + printf "@fortawesome:registry=https://npm.fontawesome.com/\n//npm.fontawesome.com/:_authToken=${FONTAWESOME_NPM_AUTH_TOKEN}" >> ~/.npmrc + npm ci + npm run build:testing + env: + FONTAWESOME_NPM_AUTH_TOKEN: ${{ secrets.FA_AUTH_TOKEN }} + + - name: Deploy to Dev s3, Set index headers + env: + AWS_DEFAULT_REGION: 'us-east-1' + AWS_S3_BUCKET: phila-resource-finder-v2/testing/obme/resources/ + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + run: | + aws s3 sync dist s3://$AWS_S3_BUCKET --region us-east-1 --delete + aws s3 cp s3://$AWS_S3_BUCKET s3://$AWS_S3_BUCKET --recursive --exclude "*" --include "*.html" --metadata-directive REPLACE --acl public-read --cache-control max-age=0,no-cache,no-store,must-revalidate,proxy-revalidate,public --expires "0" --content-type "text/html; charset=utf-8" diff --git a/package-lock.json b/package-lock.json index 9a1ad8e..109802f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@fortawesome/pro-regular-svg-icons": "^6.6.0", "@fortawesome/pro-solid-svg-icons": "^6.6.0", "@phila/phila-ui-core": "^1.0.18", - "@phila/pinboard": "^2.0.66", + "@phila/pinboard": "^2.0.79", "unplugin-auto-import": "^0.18.3", "unplugin-vue-router": "^0.10.8" }, @@ -1734,9 +1734,9 @@ } }, "node_modules/@phila/phila-ui-core": { - "version": "1.0.18", - "resolved": "https://registry.npmjs.org/@phila/phila-ui-core/-/phila-ui-core-1.0.18.tgz", - "integrity": "sha512-bAR+h9//sZ2nXMsowue8NdXNU2qC1YGfSBfCGXdkCfgakEzdcY4CT0wMFmgh6gLa2fDzLlJLrQFWNfWMrBpfew==", + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/@phila/phila-ui-core/-/phila-ui-core-1.0.20.tgz", + "integrity": "sha512-11WUNiwBRWeMUy6dPqAt1IMJ+y/KktOAc/RzXmcR4gP94o78c+aId/Z6TrJKOdsgd2X19AFd1+ZNfQyP35giQA==", "dependencies": { "bulma": "^0.9.4", "bulma-checkradio": "^2.1.3", @@ -1745,11 +1745,11 @@ } }, "node_modules/@phila/phila-ui-dropdown": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/@phila/phila-ui-dropdown/-/phila-ui-dropdown-0.0.9.tgz", - "integrity": "sha512-3M5A46o/xIvaO4j4jOFJ3CQCutRePKy0Lb8vBLxAa2dKZKoHBXxDXdtM9tEuweNPHsoq4yV2iqv/k8y/AJ1C9A==", + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@phila/phila-ui-dropdown/-/phila-ui-dropdown-0.0.12.tgz", + "integrity": "sha512-4cxeJFXuX229RIF03uasLNa4rK0WkJTy8efU3qATYvLMOEtV+g6BNzy/Kuy16BTbAcbWEx39zvTFa/ZHeT8zMA==", "dependencies": { - "@phila/phila-ui-core": "^1.0.18", + "@phila/phila-ui-core": "^1.0.20", "vue": "^3.3.8" } }, @@ -1858,9 +1858,9 @@ } }, "node_modules/@phila/pinboard": { - "version": "2.0.66", - "resolved": "https://registry.npmjs.org/@phila/pinboard/-/pinboard-2.0.66.tgz", - "integrity": "sha512-uLNRWOBHma4NtFRbQCDqPqZw+vT29KnC76afjvlRN8MQ9J02ym7nZwzs23zNY2waXk40PXLz8XMJncV0UHM7LQ==", + "version": "2.0.79", + "resolved": "https://registry.npmjs.org/@phila/pinboard/-/pinboard-2.0.79.tgz", + "integrity": "sha512-u38b7Lqu9GjU0MU5fHrVpcJKrBrQbozCW9BcR6DYjFcY76OiCfvJ9Q8lG633guGVftcnYVbvf6P9JDNIL1o+qg==", "dependencies": { "@creativebulma/bulma-tooltip": "^1.2.0", "@fortawesome/fontawesome-pro": "^6.6.0", @@ -1871,8 +1871,8 @@ "@phila/phila-ui-app-header": "^0.0.24", "@phila/phila-ui-callout": "^0.0.10", "@phila/phila-ui-checkbox": "^0.0.4", - "@phila/phila-ui-core": "^1.0.18", - "@phila/phila-ui-dropdown": "^0.0.9", + "@phila/phila-ui-core": "^1.0.20", + "@phila/phila-ui-dropdown": "^0.0.12", "@phila/phila-ui-lang-selector": "^0.0.20", "@phila/phila-ui-mobile-nav": "^0.0.13", "@phila/phila-ui-modal": "^0.0.13", @@ -1894,6 +1894,7 @@ "@turf/points-within-polygon": "^7.1.0", "axios": "^1.6.8", "bulma": "^0.9.4", + "bulma-toast": "^2.4.4", "date-fns": "^3.6.0", "date-fns-tz": "^3.2.0", "fuse.js": "^6.6.2", @@ -3019,6 +3020,11 @@ "bulma": "^0.9.3" } }, + "node_modules/bulma-toast": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/bulma-toast/-/bulma-toast-2.4.4.tgz", + "integrity": "sha512-frK7CiTE7sW6bgJFnWE4aL3Fga9O2U6O536gj6xox+52kqb5S5WaDUq37cArzjuvnSXY5mPIvzt5xNdBeOnShA==" + }, "node_modules/bundle-name": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", diff --git a/package.json b/package.json index bc96129..10e1205 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,9 @@ "private": true, "scripts": { "dev": "vite", + "test": "vite --mode=testing", "build": "vite build", + "build:testing": "vite build --mode=testing", "preview": "vite preview", "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --fix --ignore-path .gitignore" }, @@ -16,7 +18,7 @@ "@fortawesome/pro-regular-svg-icons": "^6.6.0", "@fortawesome/pro-solid-svg-icons": "^6.6.0", "@phila/phila-ui-core": "^1.0.18", - "@phila/pinboard": "^2.0.66", + "@phila/pinboard": "^2.0.79", "unplugin-auto-import": "^0.18.3", "unplugin-vue-router": "^0.10.8" }, diff --git a/src/components/ExpandCollapseContent.vue b/src/components/ExpandCollapseContent.vue index cf3f574..d50d221 100644 --- a/src/components/ExpandCollapseContent.vue +++ b/src/components/ExpandCollapseContent.vue @@ -1,3 +1,52 @@ + + - -