@contember/engine-actions 1.4.4 → 1.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contember/engine-actions",
3
- "version": "1.4.4",
3
+ "version": "1.4.6",
4
4
  "license": "proprietary",
5
5
  "main": "dist/src/index.js",
6
6
  "typings": "dist/src/index.d.ts",
@@ -13,25 +13,25 @@
13
13
  "test": "vitest --no-threads"
14
14
  },
15
15
  "dependencies": {
16
- "@contember/authorization": "1.4.4",
17
- "@contember/database": "1.4.4",
18
- "@contember/database-migrations": "1.4.4",
19
- "@contember/engine-common": "1.4.4",
20
- "@contember/engine-content-api": "1.4.4",
21
- "@contember/engine-http": "1.4.4",
22
- "@contember/engine-plugins": "1.4.4",
23
- "@contember/engine-system-api": "1.4.4",
24
- "@contember/engine-tenant-api": "1.4.4",
25
- "@contember/graphql-utils": "1.4.4",
26
- "@contember/logger": "1.4.4",
27
- "@contember/schema": "1.4.4",
28
- "@contember/schema-utils": "1.4.4",
29
- "@contember/typesafe": "1.4.4",
16
+ "@contember/authorization": "1.4.6",
17
+ "@contember/database": "1.4.6",
18
+ "@contember/database-migrations": "1.4.6",
19
+ "@contember/engine-common": "1.4.6",
20
+ "@contember/engine-content-api": "1.4.6",
21
+ "@contember/engine-http": "1.4.6",
22
+ "@contember/engine-plugins": "1.4.6",
23
+ "@contember/engine-system-api": "1.4.6",
24
+ "@contember/engine-tenant-api": "1.4.6",
25
+ "@contember/graphql-utils": "1.4.6",
26
+ "@contember/logger": "1.4.6",
27
+ "@contember/schema": "1.4.6",
28
+ "@contember/schema-utils": "1.4.6",
29
+ "@contember/typesafe": "1.4.6",
30
30
  "@graphql-tools/schema": "^10.0.0",
31
31
  "graphql-tag": "^2.12.6"
32
32
  },
33
33
  "devDependencies": {
34
- "@contember/engine-api-tester": "1.4.4",
34
+ "@contember/engine-api-tester": "1.4.6",
35
35
  "@graphql-codegen/cli": "^5.0.0",
36
36
  "@graphql-codegen/typescript": "^4.0.1",
37
37
  "@graphql-codegen/typescript-operations": "^4.0.1",
@@ -72,7 +72,7 @@ export class TriggerHandler {
72
72
  private async directUpdateHandler(event: AfterUpdateEvent) {
73
73
  const updateListeners = this.listenersStore.getUpdateListeners(event.entity.name)
74
74
  updateListeners.map(listener => {
75
- if (event.data.some(it => listener.fields.has(it.fieldName))) {
75
+ if (event.data.some(it => listener.fields.has(it.fieldName) && it.resolvedValue !== it.old)) {
76
76
  this.payloadManager.add({
77
77
  listener,
78
78
  entity: event.entity,
@@ -119,7 +119,7 @@ export class TriggerHandler {
119
119
  private async indirectChangesUpdatesHandlerInner(event: AfterUpdateEvent | BeforeUpdateEvent, type: 'fields' | 'relations') {
120
120
  const indirectEntityListeners = this.listenersStore.getIndirectListeners(event.entity.name)
121
121
  const promises = indirectEntityListeners.map(listener => {
122
- if (event.data.some(val => listener[type].has(val.fieldName))) {
122
+ if (event.data.some(val => listener[type].has(val.fieldName) && (!('old' in val) || val.resolvedValue !== val.old))) {
123
123
  return this.collectDeepChanges(event, listener, {
124
124
  [event.entity.primary]: { eq: event.id },
125
125
  })
@@ -23,7 +23,7 @@ export class TriggerPayloadBuilder {
23
23
  const selections = await this.fetchSelection(filteredEvents)
24
24
  const triggerType = filteredEvents[0].listener.trigger.type
25
25
  if (triggerType === 'basic') {
26
- return filteredEvents.map(it => ({ trigger: it.listener.trigger.name, ...this.buildBaseEventPayloads(it, selections[it.primary]) }))
26
+ return filteredEvents.map(it => ({ trigger: it.listener.trigger.name, ...this.buildBaseEventPayloads(it, it.selection ?? selections[it.primary]) }))
27
27
  }
28
28
  if (triggerType === 'watch') {
29
29
  return this.buildWatchEventPayloads(filteredEvents, selections)