diff --git a/.github/dod.yml b/.github/dod.yml deleted file mode 100644 index 279bfdf2..00000000 --- a/.github/dod.yml +++ /dev/null @@ -1,7 +0,0 @@ -dod: - - Meaningful title for the release notes - # - Pull request is linked to a problem - # - All changes relate to the problem - - Code review performed successfully - # - A11y tests performed successfully or not relevant - # - Manual test performed successfully or not relevant diff --git a/.github/workflows/dod-checker.yml b/.github/workflows/dod-checker.yml deleted file mode 100644 index 42e34f5e..00000000 --- a/.github/workflows/dod-checker.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: Definition of Done -on: - pull_request: - types: [opened, edited] - -concurrency: - group: ci-pr-{{ github.event.number }} - cancel-in-progress: true - -jobs: - check-dod: - if: contains(github.actor, 'dependabot') == false - runs-on: ubuntu-20.04 - steps: - - name: Clone Repo - uses: actions/checkout@v3 - - name: Check DoD - uses: platisd/definition-of-done@master - with: - dod_yaml: '.github/dod.yml' - github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index c2a25baf..81affc15 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## @public-ui/stencil-vue-output-target@0.9.1 (2024-03-11) + +#### :bug: Bug Fix + +- fix(vue): v-model does not update when other events bubble up [#425](https://github.com/ionic-team/stencil-ds-output-targets/pull/425) + ## @public-ui/stencil-angular-output-target@0.9.0 (2024-03-11) #### :rocket: Enhancement diff --git a/packages/vue-output-target/package-lock.json b/packages/vue-output-target/package-lock.json index 0aef4490..022bdf28 100644 --- a/packages/vue-output-target/package-lock.json +++ b/packages/vue-output-target/package-lock.json @@ -1,4 +1,5 @@ { +<<<<<<< HEAD "name": "@public-ui/stencil-vue-output-target", "version": "0.9.0", "lockfileVersion": 3, @@ -7,6 +8,16 @@ "": { "name": "@public-ui/stencil-vue-output-target", "version": "0.9.0", +======= + "name": "@stencil/vue-output-target", + "version": "0.8.8", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "@stencil/vue-output-target", + "version": "0.8.8", +>>>>>>> 0eb22ba25fa808a4c71f25001e2640ac7a941405 "license": "MIT", "peerDependencies": { "@stencil/core": ">=2.0.0 || >=3 || >= 4.0.0-beta.0 || >= 4.0.0" diff --git a/packages/vue-output-target/package.json b/packages/vue-output-target/package.json index 8509a41a..11aafa29 100644 --- a/packages/vue-output-target/package.json +++ b/packages/vue-output-target/package.json @@ -1,6 +1,6 @@ { "name": "@public-ui/stencil-vue-output-target", - "version": "0.9.0", + "version": "0.9.1", "description": "Vue output target for @stencil/core components.", "main": "dist/index.cjs.js", "module": "dist/index.js", diff --git a/packages/vue-output-target/vue-component-lib/utils.ts b/packages/vue-output-target/vue-component-lib/utils.ts index 895e0409..05774cf5 100644 --- a/packages/vue-output-target/vue-component-lib/utils.ts +++ b/packages/vue-output-target/vue-component-lib/utils.ts @@ -92,8 +92,17 @@ export const defineContainer = ( const eventsNames = Array.isArray(modelUpdateEvent) ? modelUpdateEvent : [modelUpdateEvent]; eventsNames.forEach((eventName: string) => { el.addEventListener(eventName.toLowerCase(), (e: Event) => { - modelPropValue = (e?.target as any)[modelProp]; - emit(UPDATE_VALUE_EVENT, modelPropValue); + /** + * Only update the v-model binding if the event's target is the element we are + * listening on. For example, Component A could emit ionChange, but it could also + * have a descendant Component B that also emits ionChange. We only want to update + * the v-model for Component A when ionChange originates from that element and not + * when ionChange bubbles up from Component B. + */ + if (e.target.tagName === el.tagName) { + modelPropValue = (e?.target as any)[modelProp]; + emit(UPDATE_VALUE_EVENT, modelPropValue); + } }); }); },