@artsy/cohesion 4.310.0 → 4.311.0

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/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ # v4.311.0 (Fri Oct 24 2025)
2
+
3
+ #### 🚀 Enhancement
4
+
5
+ - chore: add schema for QuickReply feature in CMS Conversations [#646](https://github.com/artsy/cohesion/pull/646) ([@mzikherman](https://github.com/mzikherman))
6
+
7
+ #### Authors: 1
8
+
9
+ - Matt Zikherman ([@mzikherman](https://github.com/mzikherman))
10
+
11
+ ---
12
+
1
13
  # v4.310.0 (Fri Oct 24 2025)
2
14
 
3
15
  #### 🚀 Enhancement
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Schemas describing CMS Quick Reply events
3
+ * @packageDocumentation
4
+ */
5
+ import { CmsContextModule } from "../Values/CmsContextModule";
6
+ import { CmsActionType } from ".";
7
+ /**
8
+ * User clicks on the icon to open the menu of quick replies
9
+ *
10
+ * context_page_owner_id is the impulse conversation ID
11
+ *
12
+ * @example
13
+ * ```
14
+ * {
15
+ * action: "openedMenu",
16
+ * context_module: "conversations",
17
+ * context_page_owner_id: "496984",
18
+ * }
19
+ * ```
20
+ */
21
+ export interface CmsQuickReplyOpenedMenu {
22
+ action: CmsActionType.openedMenu;
23
+ context_module: CmsContextModule.conversations;
24
+ context_page_owner_id: string;
25
+ }
26
+ /**
27
+ * User clicks on the trash can icon to delete a template
28
+ *
29
+ * @example
30
+ * ```
31
+ * {
32
+ * action: "clickedDeleteTemplate",
33
+ * context_module: "conversations",
34
+ * context_page_owner_id: "496984",
35
+ * conversation_template_id: "80912749071",
36
+ * }
37
+ * ```
38
+ */
39
+ export interface CmsQuickReplyClickedDeleteTemplate {
40
+ action: CmsActionType.clickedDeleteTemplate;
41
+ context_module: CmsContextModule.conversations;
42
+ context_page_owner_id: string;
43
+ conversation_template_id: string;
44
+ }
45
+ /**
46
+ * User completes the flow and actually deletes the template
47
+ *
48
+ * @example
49
+ * ```
50
+ * {
51
+ * action: "deletedTemplate",
52
+ * context_module: "conversations",
53
+ * context_page_owner_id: "496984",
54
+ * conversation_template_id: "80912749071",
55
+ * }
56
+ * ```
57
+ */
58
+ export interface CmsQuickReplyDeletedTemplate {
59
+ action: CmsActionType.deletedTemplate;
60
+ context_module: CmsContextModule.conversations;
61
+ context_page_owner_id: string;
62
+ conversation_template_id: string;
63
+ }
64
+ /**
65
+ * User clicks on "+New" to create a new template
66
+ *
67
+ * @example
68
+ * ```
69
+ * {
70
+ * action: "clickedCreateNewTemplate",
71
+ * context_module: "conversations",
72
+ * context_page_owner_id: "496984",
73
+ * conversation_template_id: "80912749071",
74
+ * }
75
+ * ```
76
+ */
77
+ export interface CmsQuickReplyClickedCreateNewTemplate {
78
+ action: CmsActionType.clickedCreateNewTemplate;
79
+ context_module: CmsContextModule.conversations;
80
+ context_page_owner_id: string;
81
+ conversation_template_id: string;
82
+ }
83
+ /**
84
+ * User completes the flow and actually creates a new custom template
85
+ *
86
+ * @example
87
+ * ```
88
+ * {
89
+ * action: "createdNewTemplate",
90
+ * context_module: "conversations",
91
+ * context_page_owner_id: "496984",
92
+ * conversation_template_id: "80912749071",
93
+ * }
94
+ * ```
95
+ */
96
+ export interface CmsQuickReplyCreatedNewTemplate {
97
+ action: CmsActionType.createdNewTemplate;
98
+ context_module: CmsContextModule.conversations;
99
+ context_page_owner_id: string;
100
+ conversation_template_id: string;
101
+ }
102
+ /**
103
+ * Event fires upon clicking "saved X response(s)"
104
+ *
105
+ * saved_templates is a string[] object that captures the checklist of templates
106
+ * saved to the partner. Uses general names for saved_templates, not the titles
107
+ * of the messages, in case copy changes.
108
+ *
109
+ * @example
110
+ * ```
111
+ * {
112
+ * action: "savedExampleTemplate",
113
+ * context_module: "conversations",
114
+ * context_page_owner_id: "496984",
115
+ * saved_templates: ["general", "unavailable"],
116
+ * conversation_template_ids: ["80912749071", "1231231231"],
117
+ * }
118
+ * ```
119
+ */
120
+ export interface CmsQuickReplySavedExampleTemplate {
121
+ action: CmsActionType.savedExampleTemplate;
122
+ context_module: CmsContextModule.conversations;
123
+ context_page_owner_id: string;
124
+ saved_templates: string[];
125
+ conversation_template_ids: string[];
126
+ }
127
+ /**
128
+ * User clicks on the edit icon
129
+ *
130
+ * @example
131
+ * ```
132
+ * {
133
+ * action: "clickedEditTemplate",
134
+ * context_module: "conversations",
135
+ * context_page_owner_id: "496984",
136
+ * conversation_template_id: "80912749071",
137
+ * }
138
+ * ```
139
+ */
140
+ export interface CmsQuickReplyClickedEditTemplate {
141
+ action: CmsActionType.clickedEditTemplate;
142
+ context_module: CmsContextModule.conversations;
143
+ context_page_owner_id: string;
144
+ conversation_template_id: string;
145
+ }
146
+ /**
147
+ * User completes the flow and clicks save response to update the template
148
+ *
149
+ * @example
150
+ * ```
151
+ * {
152
+ * action: "editedTemplate",
153
+ * context_module: "conversations",
154
+ * context_page_owner_id: "496984",
155
+ * conversation_template_id: "80912749071",
156
+ * }
157
+ * ```
158
+ */
159
+ export interface CmsQuickReplyEditedTemplate {
160
+ action: CmsActionType.editedTemplate;
161
+ context_module: CmsContextModule.conversations;
162
+ context_page_owner_id: string;
163
+ conversation_template_id: string;
164
+ }
165
+ /**
166
+ * Union type of all CMS Quick Reply events
167
+ */
168
+ export type CmsQuickReplyFlow = CmsQuickReplyOpenedMenu | CmsQuickReplyClickedDeleteTemplate | CmsQuickReplyDeletedTemplate | CmsQuickReplyClickedCreateNewTemplate | CmsQuickReplyCreatedNewTemplate | CmsQuickReplySavedExampleTemplate | CmsQuickReplyClickedEditTemplate | CmsQuickReplyEditedTemplate;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -2,6 +2,7 @@ import { CmsAnalyticsPage } from "./AnalyticsPage";
2
2
  import { CmsArtworkFilter } from "./ArtworkFilter";
3
3
  import { CmsBatchImportFlow } from "./BatchImportFlow";
4
4
  import { CmsBulkEditFlow } from "./BulkEditFlow";
5
+ import { CmsQuickReplyFlow } from "./QuickReplyFlow";
5
6
  import { CmsSettingsFlow } from "./SettingsFlow";
6
7
  import { CmsShowFlow } from "./ShowFlow";
7
8
  import { CmsUploadArtworkFlow } from "./UploadArtworkFlow";
@@ -10,7 +11,7 @@ import { CmsUploadArtworkFlow } from "./UploadArtworkFlow";
10
11
  *
11
12
  * Each event describes one ActionType
12
13
  */
13
- export type CmsEvent = CmsAnalyticsPage | CmsArtworkFilter | CmsBulkEditFlow | CmsBatchImportFlow | CmsUploadArtworkFlow | CmsSettingsFlow | CmsShowFlow;
14
+ export type CmsEvent = CmsAnalyticsPage | CmsArtworkFilter | CmsBulkEditFlow | CmsBatchImportFlow | CmsUploadArtworkFlow | CmsQuickReplyFlow | CmsSettingsFlow | CmsShowFlow;
14
15
  /**
15
16
  * List of all CMS actions
16
17
  *
@@ -136,5 +137,37 @@ export declare enum CmsActionType {
136
137
  /**
137
138
  * Corresponds to {@link CmsBatchImportFlow}
138
139
  */
139
- batchImportClickDeleteImage = "batchImportClickDeleteImage"
140
+ batchImportClickDeleteImage = "batchImportClickDeleteImage",
141
+ /**
142
+ * Corresponds to {@link CmsQuickReplyFlow}
143
+ */
144
+ clickedCreateNewTemplate = "clickedCreateNewTemplate",
145
+ /**
146
+ * Corresponds to {@link CmsQuickReplyFlow}
147
+ */
148
+ clickedDeleteTemplate = "clickedDeleteTemplate",
149
+ /**
150
+ * Corresponds to {@link CmsQuickReplyFlow}
151
+ */
152
+ clickedEditTemplate = "clickedEditTemplate",
153
+ /**
154
+ * Corresponds to {@link CmsQuickReplyFlow}
155
+ */
156
+ createdNewTemplate = "createdNewTemplate",
157
+ /**
158
+ * Corresponds to {@link CmsQuickReplyFlow}
159
+ */
160
+ deletedTemplate = "deletedTemplate",
161
+ /**
162
+ * Corresponds to {@link CmsQuickReplyFlow}
163
+ */
164
+ editedTemplate = "editedTemplate",
165
+ /**
166
+ * Corresponds to {@link CmsQuickReplyFlow}
167
+ */
168
+ openedMenu = "openedMenu",
169
+ /**
170
+ * Corresponds to {@link CmsQuickReplyFlow}
171
+ */
172
+ savedExampleTemplate = "savedExampleTemplate"
140
173
  }
@@ -50,4 +50,12 @@ exports.CmsActionType = CmsActionType;
50
50
  CmsActionType["batchImportAddedImage"] = "batchImportAddedImage";
51
51
  CmsActionType["batchImportReorderImage"] = "batchImportReorderImage";
52
52
  CmsActionType["batchImportClickDeleteImage"] = "batchImportClickDeleteImage";
53
+ CmsActionType["clickedCreateNewTemplate"] = "clickedCreateNewTemplate";
54
+ CmsActionType["clickedDeleteTemplate"] = "clickedDeleteTemplate";
55
+ CmsActionType["clickedEditTemplate"] = "clickedEditTemplate";
56
+ CmsActionType["createdNewTemplate"] = "createdNewTemplate";
57
+ CmsActionType["deletedTemplate"] = "deletedTemplate";
58
+ CmsActionType["editedTemplate"] = "editedTemplate";
59
+ CmsActionType["openedMenu"] = "openedMenu";
60
+ CmsActionType["savedExampleTemplate"] = "savedExampleTemplate";
53
61
  })(CmsActionType || (exports.CmsActionType = CmsActionType = {}));
@@ -17,6 +17,7 @@ export declare enum CmsContextModule {
17
17
  artworkFilterQuickEdit = "Artworks - quick edit",
18
18
  batchImportFlow = "batchImportFlow",
19
19
  bulkEditFlow = "Artworks - bulk edit",
20
+ conversations = "conversations",
20
21
  uploads = "Uploads",
21
22
  settings = "Settings",
22
23
  showsInstallShots = "Shows - Install shots"
@@ -27,6 +27,7 @@ exports.CmsContextModule = CmsContextModule;
27
27
  CmsContextModule["artworkFilterQuickEdit"] = "Artworks - quick edit";
28
28
  CmsContextModule["batchImportFlow"] = "batchImportFlow";
29
29
  CmsContextModule["bulkEditFlow"] = "Artworks - bulk edit";
30
+ CmsContextModule["conversations"] = "conversations";
30
31
  CmsContextModule["uploads"] = "Uploads";
31
32
  CmsContextModule["settings"] = "Settings";
32
33
  CmsContextModule["showsInstallShots"] = "Shows - Install shots";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artsy/cohesion",
3
- "version": "4.310.0",
3
+ "version": "4.311.0",
4
4
  "description": "Analytics schema",
5
5
  "main": "dist/index.js",
6
6
  "publishConfig": {