diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 122d6fc..d5d39cc 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -7,6 +7,17 @@ body: attributes: value: | Thanks for taking the time to fill out this bug report! + - type: dropdown + id: platform + attributes: + label: Type of Svelte app + options: + - Svelte Vite template + - SvelteKit + - Astro + Svelte + - Other (please describe later) + validations: + required: true - type: textarea id: bug-description attributes: @@ -26,9 +37,9 @@ body: id: system-info attributes: label: System Info - description: Output of `npx envinfo --system --binaries --browsers --npmPackages "{svelte-reveal}"` + description: Output of `npx envinfo --system --binaries --browsers --npmPackages` in your repository. render: Shell - placeholder: System, Binaries, Browsers + placeholder: System, Binaries, Browsers, NPM Packages validations: required: true - type: dropdown diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a09a078..f37b23f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,9 +1,9 @@ name: CI -on: [push, pull_request] +on: [push] jobs: - CI: + build: runs-on: ubuntu-latest steps: - name: Checkout code @@ -17,19 +17,8 @@ jobs: node-version: 20 cache: 'npm' - - name: Installing dependencies + - name: Install dependencies run: npm ci - name: Build package run: npm run build -- --filter=svelte-reveal - - # - name: Testing - # run: npm run test - - # - name: SonarCloud Scan - # uses: sonarsource/sonarcloud-github-action@master - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} - # with: - # projectBaseDir: packages/svelte-reveal diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a063011..7537a89 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,16 +1,52 @@ -name: 'Publish to NPM' +name: Release on: pull_request: types: + - opened + - synchronize - closed branches: - main jobs: + check-version: + runs-on: ubuntu-latest + outputs: + version: ${{ steps.package-version.outputs.current-version }} + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Get current version + id: package-version + uses: martinbeentjes/npm-get-version-action@v1.3.1 + with: + path: 'packages/svelte-reveal' + + - name: Get latest tag + id: latest-tag + uses: 'WyriHaximus/github-action-get-previous-tag@v1' + + - name: Compare versions + uses: madhead/semver-utils@v4 + id: version + with: + version: ${{ steps.latest-tag.outputs.tag }} + + - name: Detected invalid semver upgrade + if: ${{ steps.package-version.outputs.current-version != steps.version.outputs.inc-major && steps.package-version.outputs.current-version != steps.version.outputs.inc-minor && steps.package-version.outputs.current-version != steps.version.outputs.inc-patch }} + uses: actions/github-script@v7 + with: + script: | + core.setFailed('Invalid semver upgrade (${{ steps.latest-tag.outputs.tag }} -> ${{ steps.package-version.outputs.current-version }})') + release: - if: github.event.pull_request.merged == true && github.ref == 'refs/heads/main' runs-on: ubuntu-latest + needs: check-version + if: github.event.pull_request.merged == true steps: - name: Checkout code uses: actions/checkout@v4 @@ -23,7 +59,7 @@ jobs: node-version: 20 cache: 'npm' - - name: Installing dependencies + - name: Install dependencies run: npm ci - name: Build package @@ -40,12 +76,6 @@ jobs: package: ./packages/svelte-reveal/package.json strategy: upgrade - - name: Get Package Version - id: package-version - uses: martinbeentjes/npm-get-version-action@master - with: - path: 'packages/svelte-reveal' - - name: Extract release notes id: extract-release-notes uses: ffurrer2/extract-release-notes@v1 @@ -58,8 +88,8 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: - tag_name: ${{ steps.package-version.outputs.current-version }} - release_name: ${{ steps.package-version.outputs.current-version }} + tag_name: ${{ needs.check-version.outputs.version }} + release_name: ${{ needs.check-version.outputs.version }} draft: false prerelease: false body: ${{ steps.extract-release-notes.outputs.release_notes }} @@ -71,6 +101,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create-release.outputs.upload_url }} - asset_path: ./packages/svelte-reveal/svelte-reveal-${{ steps.package-version.outputs.current-version }}.tgz - asset_name: svelte-reveal-${{ steps.package-version.outputs.current-version }}.tgz + asset_path: ./packages/svelte-reveal/svelte-reveal-${{ needs.check-version.outputs.version }}.tgz + asset_name: svelte-reveal-${{ needs.check-version.outputs.version }}.tgz asset_content_type: application/gzip diff --git a/package-lock.json b/package-lock.json index 7ebd388..7b91de6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6405,7 +6405,7 @@ } }, "packages/svelte-reveal": { - "version": "0.7.0", + "version": "1.0.4", "license": "MIT", "devDependencies": { "@types/seedrandom": "^3.0.8", diff --git a/packages/svelte-reveal/CHANGELOG.md b/packages/svelte-reveal/CHANGELOG.md index e08439e..972a79c 100644 --- a/packages/svelte-reveal/CHANGELOG.md +++ b/packages/svelte-reveal/CHANGELOG.md @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.1.0] - 2024-04-10 + +### Changed + +- Improved GitHub actions workflows ([#212](https://github.com/DaveKeehl/svelte-reveal/pull/212)) +- Improved bundled stylesheet ([#213](https://github.com/DaveKeehl/svelte-reveal/pull/213)) +- Improve bug report template ([#217](https://github.com/DaveKeehl/svelte-reveal/pull/217)) + +### Fixed + +- Elements targeted by Svelte Reveal inside a parent node no longer appear on the bottom ([#215](https://github.com/DaveKeehl/svelte-reveal/pull/215)) + ## [1.0.4] - 2024-04-05 ### Fixed @@ -201,3 +213,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [1.0.2]: https://github.com/DaveKeehl/svelte-reveal/compare/1.0.1...1.0.2 [1.0.3]: https://github.com/DaveKeehl/svelte-reveal/compare/1.0.2...1.0.3 [1.0.4]: https://github.com/DaveKeehl/svelte-reveal/compare/1.0.3...1.0.4 +[1.1.0]: https://github.com/DaveKeehl/svelte-reveal/compare/1.0.4...1.1.0 diff --git a/packages/svelte-reveal/package.json b/packages/svelte-reveal/package.json index c46a6b8..7a2f3d9 100644 --- a/packages/svelte-reveal/package.json +++ b/packages/svelte-reveal/package.json @@ -1,6 +1,6 @@ { "name": "svelte-reveal", - "version": "1.0.4", + "version": "1.1.0", "description": "Svelte action that leverages the Intersection Observer API to trigger reveal on scroll transitions", "type": "module", "main": "dist/index.cjs", diff --git a/packages/svelte-reveal/src/internal/DOM.ts b/packages/svelte-reveal/src/internal/DOM.ts index 276d514..edcd72a 100644 --- a/packages/svelte-reveal/src/internal/DOM.ts +++ b/packages/svelte-reveal/src/internal/DOM.ts @@ -66,7 +66,8 @@ export const revealNode = ( */ export const getNodeToReveal = (node: HTMLElement): HTMLElement => { const wrapper = document.createElement('div'); - node.parentElement?.appendChild(wrapper); + const parentElement = node.parentElement; + parentElement?.insertBefore(wrapper, node); wrapper.appendChild(node); return wrapper; }; diff --git a/packages/svelte-reveal/src/styles.css b/packages/svelte-reveal/src/styles.css index bf9636b..d20a30e 100644 --- a/packages/svelte-reveal/src/styles.css +++ b/packages/svelte-reveal/src/styles.css @@ -1,3 +1,3 @@ .sr__hide { - display: none !important; + visibility: hidden; }