Skip to content

jhefferman/release release 8.18.2#5351

Closed
jhefferman-sfdc wants to merge 10 commits intoreleasefrom
jhefferman/release-release-8.18.2
Closed

jhefferman/release release 8.18.2#5351
jhefferman-sfdc wants to merge 10 commits intoreleasefrom
jhefferman/release-release-8.18.2

Conversation

@jhefferman-sfdc
Copy link
Contributor

Details

Does this pull request introduce a breaking change?

  • 😮‍💨 No, it does not introduce a breaking change.

Does this pull request introduce an observable change?

  • 🤞 No, it does not introduce an observable change.

GUS work item

W-18328598

jhefferman-sfdc and others added 10 commits April 18, 2025 10:29
* test(integration-karma): add integration tests for lwc:on directive

* feat(engine-core): add optional dynamicOn property to VNodeData interface

* feat(engine-core): add patching utilities for dynamic event listeners

* feat(engine-core): update hydration and rendering to patch dynamic event listeners

* feat(shared): export Detached Object.prototype.propertyIsEnumerable from language.ts

* fix(engine-core): use propertyIsEnumerable from @lwc/shared

* feat(template-compiler): add type and helper functions for OnDirective AST node

* feat: throw error when lwc:on is used on a non-root <template> element

* feat: add parsing of lwc:on directive

* feat: throw error when declarative event listeners are  used alongside lwc:on

* feat(template-compiler): add code generation for lwc:on directive

* feat(engine-core): add basic implementation of freeze render API

* docs(engine-core): add comment in patchDynamicEventListeners regarding freezing assumption

* Apply suggestions from code review

Add comments, improve readability of statements, correct copyright year

Co-authored-by: Dale Bustad <dale@divmain.com>
Co-authored-by: Will Harney <62956339+wjhsf@users.noreply.github.com>

* test(integration-karma): fix ignored properties and event type case tests

* test(integration-karma): add tests to verify re-rendering behaviour

* test(integration-karma): add a seperate test for object passed as public property

add a seperate test for object passed as public property and refactors other tests to be independent

* fix: fix @api issues by removing freeze api and adding copy api

* style: apply suggestion from code review - consistent error names

* test(integration-karma): add missing test component x/publicProp

* style(engine-core): rename variables related to patching and add comments for better readability

* fix(engine-core): add missing negation operator in patchDynamicEventListener

* docs(template-compiler): add comment explaining the check used to know lwc:on is used with onfoo

* docs(template-compiler): add comment explaining onDirective codegen in databag

* fix(engine-core): change prevInp to prevOut in comparision

* test(integration-karma): expand re-render tests to include the case when object is mutated

* test(template-compiler): add snapshot tests for template-compiler

* test(integration-karma): move catchUnhandledRejectionsAndError inside the specific describe

Having in top-level may cause false success

* test(integration-karma): add re-render tests for lwc:on used inside for:each loop

* test(integration-karma): correct 'this' in rerenderLoop.js

* fix: move copy api's work to codeGen and patching

* refactor: remove dead code

* fix: Apply suggestions from code review - <> in error message

Co-authored-by: Will Harney <62956339+wjhsf@users.noreply.github.com>

* feat: add template-compiler flag enableLwcOn

* test(integration-karma): modify test to include <> in error message

* test(integration-karma): remove console log spy

* perf(engine-core): change delete obj[x] to obj[x] = undefined

* test(integration-karma): simplify tests by re-using spies

* chore: increase allowed bundlesize limit

* test(template-compiler): fix error codes in snapshots

* fix: change throw new Error to logError

* docs(engine-core): add comments explaining dynamicOn has null proto and own enumerbale props

* test(integration-karma): add tests for objects with computed key

* fix(engine-core): modify patch logic to differentiate prop value = undefined and prop not existing

* test(integration-karma): add tests where arg has property with value non-function/ whose eval throws

* test(integration-karma): simplify value evaluation throws tests

* chore: bump CI

* fix: integration tests in Firefox

---------

Co-authored-by: Gaurav Kochar <gauravrkochar@gmail.com>
Co-authored-by: Will Harney <62956339+wjhsf@users.noreply.github.com>
@jhefferman-sfdc jhefferman-sfdc changed the base branch from master to release April 28, 2025 21:07
@jhefferman-sfdc jhefferman-sfdc requested a review from a team as a code owner April 28, 2025 21:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants