@onesignal/node-onesignal 5.3.0-beta1 → 5.4.0-beta1
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/dist/apis/DefaultApi.js +44 -44
- package/dist/index.d.ts +1 -1
- package/dist/models/BasicNotification.d.ts +7 -0
- package/dist/models/BasicNotification.js +36 -0
- package/dist/models/BasicNotificationAllOf.d.ts +7 -0
- package/dist/models/BasicNotificationAllOf.js +36 -0
- package/dist/models/Notification.d.ts +7 -0
- package/dist/models/Notification.js +36 -0
- package/dist/models/NotificationWithMeta.d.ts +7 -0
- package/dist/models/NotificationWithMeta.js +36 -0
- package/dist/models/ObjectSerializer.js +4 -0
- package/package.json +9 -3
- package/.github/ISSUE_TEMPLATE/ask-question.yml +0 -25
- package/.github/ISSUE_TEMPLATE/bug-report.yml +0 -51
- package/.github/ISSUE_TEMPLATE/general-feedback.yml +0 -25
- package/.github/pull_request_template.md +0 -44
- package/.github/workflows/asana-add-comment.yml +0 -47
- package/.github/workflows/asana-create-task.yml +0 -119
- package/.github/workflows/asana-update-issue.yml +0 -172
- package/.github/workflows/npm_deploy.yml +0 -22
- package/.github/workflows/project.yml +0 -17
- package/CHANGELOG.md +0 -48
- package/DefaultApi.md +0 -3293
- package/RELEASE_INSTRUCTIONS.md +0 -2
- package/apis/DefaultApi.ts +0 -4673
- package/apis/baseapi.ts +0 -37
- package/apis/exception.ts +0 -15
- package/auth/auth.ts +0 -110
- package/configuration.ts +0 -85
- package/dist/apis/DefaultApi.js.map +0 -1
- package/dist/apis/baseapi.js.map +0 -1
- package/dist/apis/exception.js.map +0 -1
- package/dist/auth/auth.js.map +0 -1
- package/dist/configuration.js.map +0 -1
- package/dist/http/http.js.map +0 -1
- package/dist/http/isomorphic-fetch.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/middleware.js.map +0 -1
- package/dist/models/ApiKeyToken.js.map +0 -1
- package/dist/models/ApiKeyTokensListResponse.js.map +0 -1
- package/dist/models/App.js.map +0 -1
- package/dist/models/BasicNotification.js.map +0 -1
- package/dist/models/BasicNotificationAllOf.js.map +0 -1
- package/dist/models/BasicNotificationAllOfAndroidBackgroundLayout.js.map +0 -1
- package/dist/models/Button.js.map +0 -1
- package/dist/models/CopyTemplateRequest.js.map +0 -1
- package/dist/models/CreateApiKeyRequest.js.map +0 -1
- package/dist/models/CreateApiKeyResponse.js.map +0 -1
- package/dist/models/CreateNotificationSuccessResponse.js.map +0 -1
- package/dist/models/CreateSegmentConflictResponse.js.map +0 -1
- package/dist/models/CreateSegmentSuccessResponse.js.map +0 -1
- package/dist/models/CreateTemplateRequest.js.map +0 -1
- package/dist/models/CreateUserConflictResponse.js.map +0 -1
- package/dist/models/CreateUserConflictResponseErrorsInner.js.map +0 -1
- package/dist/models/CreateUserConflictResponseErrorsItemsMeta.js.map +0 -1
- package/dist/models/CustomEvent.js.map +0 -1
- package/dist/models/CustomEventsRequest.js.map +0 -1
- package/dist/models/DeliveryData.js.map +0 -1
- package/dist/models/ExportEventsSuccessResponse.js.map +0 -1
- package/dist/models/ExportSubscriptionsRequestBody.js.map +0 -1
- package/dist/models/ExportSubscriptionsSuccessResponse.js.map +0 -1
- package/dist/models/Filter.js.map +0 -1
- package/dist/models/FilterExpression.js.map +0 -1
- package/dist/models/GenericError.js.map +0 -1
- package/dist/models/GenericSuccessBoolResponse.js.map +0 -1
- package/dist/models/GetNotificationHistoryRequestBody.js.map +0 -1
- package/dist/models/GetSegmentsSuccessResponse.js.map +0 -1
- package/dist/models/LanguageStringMap.js.map +0 -1
- package/dist/models/Notification.js.map +0 -1
- package/dist/models/NotificationAllOf.js.map +0 -1
- package/dist/models/NotificationHistorySuccessResponse.js.map +0 -1
- package/dist/models/NotificationSlice.js.map +0 -1
- package/dist/models/NotificationTarget.js.map +0 -1
- package/dist/models/NotificationWithMeta.js.map +0 -1
- package/dist/models/NotificationWithMetaAllOf.js.map +0 -1
- package/dist/models/ObjectSerializer.js.map +0 -1
- package/dist/models/Operator.js.map +0 -1
- package/dist/models/OutcomeData.js.map +0 -1
- package/dist/models/OutcomesData.js.map +0 -1
- package/dist/models/PlatformDeliveryData.js.map +0 -1
- package/dist/models/PlatformDeliveryDataEmailAllOf.js.map +0 -1
- package/dist/models/PlatformDeliveryDataSmsAllOf.js.map +0 -1
- package/dist/models/PropertiesBody.js.map +0 -1
- package/dist/models/PropertiesDeltas.js.map +0 -1
- package/dist/models/PropertiesObject.js.map +0 -1
- package/dist/models/Purchase.js.map +0 -1
- package/dist/models/RateLimitError.js.map +0 -1
- package/dist/models/Segment.js.map +0 -1
- package/dist/models/SegmentData.js.map +0 -1
- package/dist/models/SegmentNotificationTarget.js.map +0 -1
- package/dist/models/StartLiveActivityRequest.js.map +0 -1
- package/dist/models/StartLiveActivitySuccessResponse.js.map +0 -1
- package/dist/models/Subscription.js.map +0 -1
- package/dist/models/SubscriptionBody.js.map +0 -1
- package/dist/models/SubscriptionNotificationTarget.js.map +0 -1
- package/dist/models/TemplateResource.js.map +0 -1
- package/dist/models/TemplatesListResponse.js.map +0 -1
- package/dist/models/TransferSubscriptionRequestBody.js.map +0 -1
- package/dist/models/UpdateApiKeyRequest.js.map +0 -1
- package/dist/models/UpdateLiveActivityRequest.js.map +0 -1
- package/dist/models/UpdateLiveActivitySuccessResponse.js.map +0 -1
- package/dist/models/UpdateTemplateRequest.js.map +0 -1
- package/dist/models/UpdateUserRequest.js.map +0 -1
- package/dist/models/User.js.map +0 -1
- package/dist/models/UserIdentityBody.js.map +0 -1
- package/dist/models/WebButton.js.map +0 -1
- package/dist/models/all.js.map +0 -1
- package/dist/rxjsStub.js.map +0 -1
- package/dist/servers.js.map +0 -1
- package/dist/types/ObjectParamAPI.js.map +0 -1
- package/dist/types/ObservableAPI.js.map +0 -1
- package/dist/types/PromiseAPI.js.map +0 -1
- package/dist/util.js.map +0 -1
- package/http/http.ts +0 -205
- package/http/isomorphic-fetch.ts +0 -30
- package/index.ts +0 -12
- package/middleware.ts +0 -66
- package/models/ApiKeyToken.ts +0 -69
- package/models/ApiKeyTokensListResponse.ts +0 -32
- package/models/App.ts +0 -328
- package/models/BasicNotification.ts +0 -1088
- package/models/BasicNotificationAllOf.ts +0 -958
- package/models/BasicNotificationAllOfAndroidBackgroundLayout.ts +0 -57
- package/models/Button.ts +0 -45
- package/models/CopyTemplateRequest.ts +0 -34
- package/models/CreateApiKeyRequest.ts +0 -48
- package/models/CreateApiKeyResponse.ts +0 -38
- package/models/CreateNotificationSuccessResponse.ts +0 -48
- package/models/CreateSegmentConflictResponse.ts +0 -38
- package/models/CreateSegmentSuccessResponse.ts +0 -41
- package/models/CreateTemplateRequest.ts +0 -102
- package/models/CreateUserConflictResponse.ts +0 -32
- package/models/CreateUserConflictResponseErrorsInner.ts +0 -46
- package/models/CreateUserConflictResponseErrorsItemsMeta.ts +0 -31
- package/models/CustomEvent.ts +0 -74
- package/models/CustomEventsRequest.ts +0 -32
- package/models/DeliveryData.ts +0 -74
- package/models/ExportEventsSuccessResponse.ts +0 -31
- package/models/ExportSubscriptionsRequestBody.ts +0 -54
- package/models/ExportSubscriptionsSuccessResponse.ts +0 -31
- package/models/Filter.ts +0 -107
- package/models/FilterExpression.ts +0 -120
- package/models/GenericError.ts +0 -45
- package/models/GenericSuccessBoolResponse.ts +0 -31
- package/models/GetNotificationHistoryRequestBody.ts +0 -54
- package/models/GetSegmentsSuccessResponse.ts +0 -65
- package/models/LanguageStringMap.ts +0 -454
- package/models/Notification.ts +0 -1098
- package/models/NotificationAllOf.ts +0 -34
- package/models/NotificationHistorySuccessResponse.ts +0 -38
- package/models/NotificationSlice.ts +0 -53
- package/models/NotificationTarget.ts +0 -156
- package/models/NotificationWithMeta.ts +0 -1206
- package/models/NotificationWithMetaAllOf.ts +0 -142
- package/models/ObjectSerializer.ts +0 -442
- package/models/Operator.ts +0 -37
- package/models/OutcomeData.ts +0 -48
- package/models/OutcomesData.ts +0 -32
- package/models/PlatformDeliveryData.ts +0 -86
- package/models/PlatformDeliveryDataEmailAllOf.ts +0 -94
- package/models/PlatformDeliveryDataSmsAllOf.ts +0 -54
- package/models/PropertiesBody.ts +0 -32
- package/models/PropertiesDeltas.ts +0 -46
- package/models/PropertiesObject.ts +0 -102
- package/models/Purchase.ts +0 -61
- package/models/RateLimitError.ts +0 -38
- package/models/Segment.ts +0 -55
- package/models/SegmentData.ts +0 -94
- package/models/SegmentNotificationTarget.ts +0 -44
- package/models/StartLiveActivityRequest.ts +0 -177
- package/models/StartLiveActivitySuccessResponse.ts +0 -31
- package/models/Subscription.ts +0 -146
- package/models/SubscriptionBody.ts +0 -32
- package/models/SubscriptionNotificationTarget.ts +0 -134
- package/models/TemplateResource.ts +0 -72
- package/models/TemplatesListResponse.ts +0 -32
- package/models/TransferSubscriptionRequestBody.ts +0 -31
- package/models/UpdateApiKeyRequest.ts +0 -48
- package/models/UpdateLiveActivityRequest.ts +0 -109
- package/models/UpdateLiveActivitySuccessResponse.ts +0 -31
- package/models/UpdateTemplateRequest.ts +0 -92
- package/models/UpdateUserRequest.ts +0 -47
- package/models/User.ts +0 -47
- package/models/UserIdentityBody.ts +0 -31
- package/models/WebButton.ts +0 -52
- package/models/all.ts +0 -67
- package/onesignal-node-onesignal-5.3.0-beta1.tgz +0 -0
- package/rxjsStub.ts +0 -27
- package/servers.ts +0 -53
- package/tsconfig.json +0 -28
- package/types/ObjectParamAPI.ts +0 -1270
- package/types/ObservableAPI.ts +0 -1201
- package/types/PromiseAPI.ts +0 -585
- package/util.ts +0 -37
|
@@ -615,6 +615,12 @@ var Notification = (function () {
|
|
|
615
615
|
"type": "string",
|
|
616
616
|
"format": ""
|
|
617
617
|
},
|
|
618
|
+
{
|
|
619
|
+
"name": "email_reply_to_address",
|
|
620
|
+
"baseName": "email_reply_to_address",
|
|
621
|
+
"type": "string",
|
|
622
|
+
"format": ""
|
|
623
|
+
},
|
|
618
624
|
{
|
|
619
625
|
"name": "email_preheader",
|
|
620
626
|
"baseName": "email_preheader",
|
|
@@ -657,6 +663,36 @@ var Notification = (function () {
|
|
|
657
663
|
"type": "object",
|
|
658
664
|
"format": ""
|
|
659
665
|
},
|
|
666
|
+
{
|
|
667
|
+
"name": "huawei_badge_class",
|
|
668
|
+
"baseName": "huawei_badge_class",
|
|
669
|
+
"type": "string",
|
|
670
|
+
"format": ""
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"name": "huawei_badge_add_num",
|
|
674
|
+
"baseName": "huawei_badge_add_num",
|
|
675
|
+
"type": "number",
|
|
676
|
+
"format": ""
|
|
677
|
+
},
|
|
678
|
+
{
|
|
679
|
+
"name": "huawei_badge_set_num",
|
|
680
|
+
"baseName": "huawei_badge_set_num",
|
|
681
|
+
"type": "number",
|
|
682
|
+
"format": ""
|
|
683
|
+
},
|
|
684
|
+
{
|
|
685
|
+
"name": "huawei_category",
|
|
686
|
+
"baseName": "huawei_category",
|
|
687
|
+
"type": "NotificationHuaweiCategoryEnum",
|
|
688
|
+
"format": ""
|
|
689
|
+
},
|
|
690
|
+
{
|
|
691
|
+
"name": "huawei_bi_tag",
|
|
692
|
+
"baseName": "huawei_bi_tag",
|
|
693
|
+
"type": "string",
|
|
694
|
+
"format": ""
|
|
695
|
+
},
|
|
660
696
|
{
|
|
661
697
|
"name": "send_after",
|
|
662
698
|
"baseName": "send_after",
|
|
@@ -109,6 +109,7 @@ export declare class NotificationWithMeta {
|
|
|
109
109
|
'email_body'?: string;
|
|
110
110
|
'email_from_name'?: string;
|
|
111
111
|
'email_from_address'?: string;
|
|
112
|
+
'email_reply_to_address'?: string;
|
|
112
113
|
'email_preheader'?: string;
|
|
113
114
|
'disable_email_click_tracking'?: boolean;
|
|
114
115
|
'include_unsubscribed'?: boolean;
|
|
@@ -116,6 +117,11 @@ export declare class NotificationWithMeta {
|
|
|
116
117
|
'sms_media_urls'?: Array<string>;
|
|
117
118
|
'filters'?: Array<FilterExpression>;
|
|
118
119
|
'custom_data'?: object;
|
|
120
|
+
'huawei_badge_class'?: string;
|
|
121
|
+
'huawei_badge_add_num'?: number;
|
|
122
|
+
'huawei_badge_set_num'?: number;
|
|
123
|
+
'huawei_category'?: NotificationWithMetaHuaweiCategoryEnum;
|
|
124
|
+
'huawei_bi_tag'?: string;
|
|
119
125
|
'successful'?: number;
|
|
120
126
|
'failed'?: number;
|
|
121
127
|
'errored'?: number;
|
|
@@ -145,3 +151,4 @@ export declare class NotificationWithMeta {
|
|
|
145
151
|
}
|
|
146
152
|
export type NotificationWithMetaTargetChannelEnum = "push" | "email" | "sms";
|
|
147
153
|
export type NotificationWithMetaAggregationEnum = "sum" | "count";
|
|
154
|
+
export type NotificationWithMetaHuaweiCategoryEnum = "IM" | "VOIP" | "SUBSCRIPTION" | "TRAVEL" | "HEALTH" | "WORK" | "ACCOUNT" | "EXPRESS" | "FINANCE" | "DEVICE_REMINDER" | "MAIL" | "MARKETING";
|
|
@@ -615,6 +615,12 @@ var NotificationWithMeta = (function () {
|
|
|
615
615
|
"type": "string",
|
|
616
616
|
"format": ""
|
|
617
617
|
},
|
|
618
|
+
{
|
|
619
|
+
"name": "email_reply_to_address",
|
|
620
|
+
"baseName": "email_reply_to_address",
|
|
621
|
+
"type": "string",
|
|
622
|
+
"format": ""
|
|
623
|
+
},
|
|
618
624
|
{
|
|
619
625
|
"name": "email_preheader",
|
|
620
626
|
"baseName": "email_preheader",
|
|
@@ -657,6 +663,36 @@ var NotificationWithMeta = (function () {
|
|
|
657
663
|
"type": "object",
|
|
658
664
|
"format": ""
|
|
659
665
|
},
|
|
666
|
+
{
|
|
667
|
+
"name": "huawei_badge_class",
|
|
668
|
+
"baseName": "huawei_badge_class",
|
|
669
|
+
"type": "string",
|
|
670
|
+
"format": ""
|
|
671
|
+
},
|
|
672
|
+
{
|
|
673
|
+
"name": "huawei_badge_add_num",
|
|
674
|
+
"baseName": "huawei_badge_add_num",
|
|
675
|
+
"type": "number",
|
|
676
|
+
"format": ""
|
|
677
|
+
},
|
|
678
|
+
{
|
|
679
|
+
"name": "huawei_badge_set_num",
|
|
680
|
+
"baseName": "huawei_badge_set_num",
|
|
681
|
+
"type": "number",
|
|
682
|
+
"format": ""
|
|
683
|
+
},
|
|
684
|
+
{
|
|
685
|
+
"name": "huawei_category",
|
|
686
|
+
"baseName": "huawei_category",
|
|
687
|
+
"type": "NotificationWithMetaHuaweiCategoryEnum",
|
|
688
|
+
"format": ""
|
|
689
|
+
},
|
|
690
|
+
{
|
|
691
|
+
"name": "huawei_bi_tag",
|
|
692
|
+
"baseName": "huawei_bi_tag",
|
|
693
|
+
"type": "string",
|
|
694
|
+
"format": ""
|
|
695
|
+
},
|
|
660
696
|
{
|
|
661
697
|
"name": "successful",
|
|
662
698
|
"baseName": "successful",
|
|
@@ -169,7 +169,9 @@ var enumsMap = new Set([
|
|
|
169
169
|
"AppApnsEnvEnum",
|
|
170
170
|
"BasicNotificationTargetChannelEnum",
|
|
171
171
|
"BasicNotificationAggregationEnum",
|
|
172
|
+
"BasicNotificationHuaweiCategoryEnum",
|
|
172
173
|
"BasicNotificationAllOfAggregationEnum",
|
|
174
|
+
"BasicNotificationAllOfHuaweiCategoryEnum",
|
|
173
175
|
"CreateApiKeyRequestIpAllowlistModeEnum",
|
|
174
176
|
"FilterRelationEnum",
|
|
175
177
|
"FilterExpressionRelationEnum",
|
|
@@ -177,9 +179,11 @@ var enumsMap = new Set([
|
|
|
177
179
|
"GetNotificationHistoryRequestBodyEventsEnum",
|
|
178
180
|
"NotificationTargetChannelEnum",
|
|
179
181
|
"NotificationAggregationEnum",
|
|
182
|
+
"NotificationHuaweiCategoryEnum",
|
|
180
183
|
"NotificationTargetTargetChannelEnum",
|
|
181
184
|
"NotificationWithMetaTargetChannelEnum",
|
|
182
185
|
"NotificationWithMetaAggregationEnum",
|
|
186
|
+
"NotificationWithMetaHuaweiCategoryEnum",
|
|
183
187
|
"OperatorOperatorEnum",
|
|
184
188
|
"OutcomeDataAggregationEnum",
|
|
185
189
|
"StartLiveActivityRequestEventEnum",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onesignal/node-onesignal",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.4.0-beta1",
|
|
4
4
|
"description": "OpenAPI client for @onesignal/node-onesignal",
|
|
5
5
|
"author": "OpenAPI-Generator Contributors",
|
|
6
6
|
"keywords": [
|
|
@@ -17,12 +17,17 @@
|
|
|
17
17
|
".": "./dist/index.js"
|
|
18
18
|
},
|
|
19
19
|
"typings": "./dist/index.d.ts",
|
|
20
|
+
"files": [
|
|
21
|
+
"dist/**/*.js",
|
|
22
|
+
"dist/**/*.d.ts",
|
|
23
|
+
"README.md",
|
|
24
|
+
"LICENSE"
|
|
25
|
+
],
|
|
20
26
|
"scripts": {
|
|
21
27
|
"build": "tsc",
|
|
22
28
|
"prepare": "npm run build"
|
|
23
29
|
},
|
|
24
30
|
"dependencies": {
|
|
25
|
-
"@types/node": "24.1.0",
|
|
26
31
|
"form-data": "^2.5.0",
|
|
27
32
|
"btoa": "^1.2.1",
|
|
28
33
|
"es6-promise": "^4.2.4",
|
|
@@ -30,6 +35,7 @@
|
|
|
30
35
|
},
|
|
31
36
|
"devDependencies": {
|
|
32
37
|
"typescript": "^4.0",
|
|
33
|
-
"@types/url-parse": "1.4.4"
|
|
38
|
+
"@types/url-parse": "1.4.4",
|
|
39
|
+
"@types/node": "24.1.0"
|
|
34
40
|
}
|
|
35
41
|
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
name: 🙋♂️ Ask a question
|
|
2
|
-
description: Tell us what's on your mind
|
|
3
|
-
title: "[Question]: "
|
|
4
|
-
labels: ["Question"]
|
|
5
|
-
body:
|
|
6
|
-
- type: markdown
|
|
7
|
-
attributes:
|
|
8
|
-
value: |
|
|
9
|
-
Having issues integrating this API library?
|
|
10
|
-
- type: textarea
|
|
11
|
-
id: question
|
|
12
|
-
attributes:
|
|
13
|
-
label: How can we help?
|
|
14
|
-
description: Specific question regarding integrating this API library.
|
|
15
|
-
placeholder: How do I...?
|
|
16
|
-
validations:
|
|
17
|
-
required: true
|
|
18
|
-
- type: checkboxes
|
|
19
|
-
id: terms
|
|
20
|
-
attributes:
|
|
21
|
-
label: Code of Conduct
|
|
22
|
-
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/OneSignal/api/blob/main/CONTRIBUTING.md)
|
|
23
|
-
options:
|
|
24
|
-
- label: I agree to follow this project's Code of Conduct
|
|
25
|
-
required: true
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
name: 🪳 Bug report
|
|
2
|
-
description: File a bug report
|
|
3
|
-
title: "[Bug]: "
|
|
4
|
-
labels: ["Bug"]
|
|
5
|
-
body:
|
|
6
|
-
- type: markdown
|
|
7
|
-
attributes:
|
|
8
|
-
value: |
|
|
9
|
-
Thanks for taking the time to fill out this bug report!
|
|
10
|
-
- type: textarea
|
|
11
|
-
id: what-happened
|
|
12
|
-
attributes:
|
|
13
|
-
label: What happened?
|
|
14
|
-
description: Provide a thorough description of whats going on.
|
|
15
|
-
placeholder: The latest version of the API library throws an exception when creating a notification targetting all Active Users.
|
|
16
|
-
validations:
|
|
17
|
-
required: true
|
|
18
|
-
- type: textarea
|
|
19
|
-
id: reproduction-steps
|
|
20
|
-
attributes:
|
|
21
|
-
label: Steps to reproduce?
|
|
22
|
-
description: Provide as much detail as posible to reproduce the issue.
|
|
23
|
-
placeholder: |
|
|
24
|
-
1. Install vX.Y.Z of dependency
|
|
25
|
-
2. Run provided code snippet
|
|
26
|
-
3. Note that the app crashes
|
|
27
|
-
render: Markdown
|
|
28
|
-
validations:
|
|
29
|
-
required: true
|
|
30
|
-
- type: textarea
|
|
31
|
-
id: what-are-expectations
|
|
32
|
-
attributes:
|
|
33
|
-
label: What did you expect to happen?
|
|
34
|
-
description: Also tell us, what did you expect to happen?
|
|
35
|
-
placeholder: I expected the API library to properly deserialize any response returned by OneSignal.
|
|
36
|
-
validations:
|
|
37
|
-
required: true
|
|
38
|
-
- type: textarea
|
|
39
|
-
id: logs
|
|
40
|
-
attributes:
|
|
41
|
-
label: Relevant log output
|
|
42
|
-
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
|
|
43
|
-
render: Shell
|
|
44
|
-
- type: checkboxes
|
|
45
|
-
id: terms
|
|
46
|
-
attributes:
|
|
47
|
-
label: Code of Conduct
|
|
48
|
-
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/OneSignal/api/blob/main/CONTRIBUTING.md)
|
|
49
|
-
options:
|
|
50
|
-
- label: I agree to follow this project's Code of Conduct
|
|
51
|
-
required: true
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
name: 📣 General feedback
|
|
2
|
-
description: Tell us what's on your mind
|
|
3
|
-
title: "[Feedback]: "
|
|
4
|
-
labels: ["Feedback"]
|
|
5
|
-
body:
|
|
6
|
-
- type: markdown
|
|
7
|
-
attributes:
|
|
8
|
-
value: |
|
|
9
|
-
Thanks for sharing your valuable feedback!
|
|
10
|
-
- type: textarea
|
|
11
|
-
id: feedback
|
|
12
|
-
attributes:
|
|
13
|
-
label: What's on your mind?
|
|
14
|
-
description: Feedback regarding this API library.
|
|
15
|
-
placeholder: Share your feedback...
|
|
16
|
-
validations:
|
|
17
|
-
required: true
|
|
18
|
-
- type: checkboxes
|
|
19
|
-
id: terms
|
|
20
|
-
attributes:
|
|
21
|
-
label: Code of Conduct
|
|
22
|
-
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/OneSignal/api/blob/main/CONTRIBUTING.md)
|
|
23
|
-
options:
|
|
24
|
-
- label: I agree to follow this project's Code of Conduct
|
|
25
|
-
required: true
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
<!-- START -->
|
|
2
|
-
# READ AND DELETE THIS SECTION BEFORE SUBMITTING PR
|
|
3
|
-
* **Fill out each _REQUIRED_ section**
|
|
4
|
-
* **Fill out _OPTIONAL_ sections, remove section if it doesn't apply to your PR**
|
|
5
|
-
* **Read and fill out each of the checklists below**
|
|
6
|
-
* **Remove this section after reading**
|
|
7
|
-
<!-- END -->
|
|
8
|
-
|
|
9
|
-
# Description
|
|
10
|
-
## One Line Summary
|
|
11
|
-
**REQUIRED** - Very short description that summaries the changes in this PR.
|
|
12
|
-
|
|
13
|
-
## Details
|
|
14
|
-
|
|
15
|
-
### Motivation
|
|
16
|
-
**REQUIRED -** Why is this code change being made? Or what is the goal of this PR? Examples: Fixes a specific bug, provides additional logging to debug future issues, feature to allow X.
|
|
17
|
-
|
|
18
|
-
### Scope
|
|
19
|
-
**RECOMMEND - OPTIONAL -** What is intended to be effected. What is known not to change. Example: Notifications are grouped when parameter X is set, not enabled by default.
|
|
20
|
-
|
|
21
|
-
### OPTIONAL - Other
|
|
22
|
-
**OPTIONAL -** Feel free to add any other sections or sub-sections that can explain your PR better.
|
|
23
|
-
|
|
24
|
-
# Testing
|
|
25
|
-
|
|
26
|
-
## Manual testing
|
|
27
|
-
**REQUIRED -** Explain what scenarios were tested and the environment.
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
# Checklist
|
|
31
|
-
## Overview
|
|
32
|
-
- [ ] I have filled out all **REQUIRED** sections above
|
|
33
|
-
- [ ] PR does one thing
|
|
34
|
-
- If it is hard to explain how any codes changes are related to each other then it most likely needs to be more than one PR
|
|
35
|
-
- [ ] Any Public API changes are explained in the PR details and conform to existing APIs
|
|
36
|
-
|
|
37
|
-
## Testing
|
|
38
|
-
- [ ] I have personally tested this on my device, or explained why that is not possible
|
|
39
|
-
|
|
40
|
-
## Final pass
|
|
41
|
-
- [ ] Code is as readable as possible.
|
|
42
|
-
- Simplify with less code, followed by splitting up code into well named functions and variables, followed by adding comments to the code.
|
|
43
|
-
- [ ] I have reviewed this PR myself, ensuring it meets each checklist item
|
|
44
|
-
- WIP (Work In Progress) is ok, but explain what is still in progress and what you would like feedback on. Start the PR title with "WIP" to indicate this.
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
name: Github --> Asana Add Comment Workflow
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
issue_comment:
|
|
5
|
-
types: [created]
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
build:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
permissions:
|
|
12
|
-
issues: read
|
|
13
|
-
steps:
|
|
14
|
-
- name: Get Asana Task Corresponding to Issue
|
|
15
|
-
env:
|
|
16
|
-
ISSUE_ID: ${{ github.event.issue.id }}
|
|
17
|
-
REPO_FULL_NAME: ${{ github.event.repository.full_name }}
|
|
18
|
-
WORKSPACE_ID: "780103692902078"
|
|
19
|
-
run: |
|
|
20
|
-
REPO_SCOPED_ISSUE_ID="$REPO_FULL_NAME#$ISSUE_ID"
|
|
21
|
-
|
|
22
|
-
curl --request GET \
|
|
23
|
-
--url "https://app.asana.com/api/1.0/workspaces/$WORKSPACE_ID/tasks/search?opt_fields=notes&text=$REPO_SCOPED_ISSUE_ID&sort_by=modified_at&sort_ascending=false" \
|
|
24
|
-
--header 'accept: application/json' \
|
|
25
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
26
|
-
--output response.json
|
|
27
|
-
TASK_GID=$(jq -r '.data[0].gid' response.json)
|
|
28
|
-
echo "TASK_GID=$TASK_GID" >> $GITHUB_ENV
|
|
29
|
-
- name: Comment on Asana Task
|
|
30
|
-
env:
|
|
31
|
-
ISSUE_COMMENT: ${{ github.event.comment.body }}
|
|
32
|
-
COMMENTER_NAME: ${{ github.event.comment.user.login }}
|
|
33
|
-
run: |
|
|
34
|
-
BODY_DATA=$(jq -n \
|
|
35
|
-
--arg text "$ISSUE_COMMENT" \
|
|
36
|
-
--arg commenter_name "$COMMENTER_NAME" \
|
|
37
|
-
'{
|
|
38
|
-
"data": {
|
|
39
|
-
"text": "\($commenter_name) left a comment:\n\n\($text)",
|
|
40
|
-
}
|
|
41
|
-
}')
|
|
42
|
-
curl --request POST \
|
|
43
|
-
--url https://app.asana.com/api/1.0/tasks/$TASK_GID/stories \
|
|
44
|
-
--header 'accept: application/json' \
|
|
45
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
46
|
-
--header 'content-type: application/json' \
|
|
47
|
-
--data "$BODY_DATA"
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
name: Github --> Asana Create Task Workflow
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
issues:
|
|
5
|
-
types: [opened]
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
build:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
permissions:
|
|
12
|
-
issues: read
|
|
13
|
-
steps:
|
|
14
|
-
- name: Create Asana task
|
|
15
|
-
env:
|
|
16
|
-
ISSUE_TITLE: ${{ github.event.issue.title }}
|
|
17
|
-
ISSUE_BODY: ${{ github.event.issue.body }}
|
|
18
|
-
ISSUE_HTML_URL: ${{ github.event.issue.html_url }}
|
|
19
|
-
ISSUE_ID: ${{ github.event.issue.id }}
|
|
20
|
-
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
|
21
|
-
REPO_FULL_NAME: ${{ github.event.repository.full_name }}
|
|
22
|
-
SDK_PLATFORM_GROUP: "1208961704779581"
|
|
23
|
-
SDK_PLATFORM_GROUP_SERVER: "1208961704779585"
|
|
24
|
-
SDK_PLATFORM: "1208961704779592"
|
|
25
|
-
SDK_PLATFORM_TYPESCRIPT: "1208961704779609"
|
|
26
|
-
DSA_PRIORITY: "1208779519954980"
|
|
27
|
-
DSA_PRIORITY_NO_PRIORITY: "1208779521616959"
|
|
28
|
-
DSA_STATUS: "1210103546117753"
|
|
29
|
-
DSA_STATUS_TRIAGE: "1210103546117756"
|
|
30
|
-
DSA_REPO_TICKET_URL: "1210347857768758"
|
|
31
|
-
WORKSPACE_ID: "780103692902078"
|
|
32
|
-
PROJECT_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES: "1208970714650308"
|
|
33
|
-
PROJECT_ID_SDK_BACKLOG: "1208777198342772"
|
|
34
|
-
run: |
|
|
35
|
-
DATA_BODY=$(jq -n \
|
|
36
|
-
--arg title "$ISSUE_TITLE" \
|
|
37
|
-
--arg body "$ISSUE_BODY" \
|
|
38
|
-
--arg url "$ISSUE_HTML_URL" \
|
|
39
|
-
--arg id "$ISSUE_ID" \
|
|
40
|
-
--arg number "$ISSUE_NUMBER" \
|
|
41
|
-
--arg repo_full_name "$REPO_FULL_NAME" \
|
|
42
|
-
--arg sdk_platform_group "$SDK_PLATFORM_GROUP" \
|
|
43
|
-
--arg sdk_platform_group_server "$SDK_PLATFORM_GROUP_SERVER" \
|
|
44
|
-
--arg sdk_platform "$SDK_PLATFORM" \
|
|
45
|
-
--arg sdk_platform_typescript "$SDK_PLATFORM_TYPESCRIPT" \
|
|
46
|
-
--arg dsa_priority "$DSA_PRIORITY" \
|
|
47
|
-
--arg dsa_priority_no_priority "$DSA_PRIORITY_NO_PRIORITY" \
|
|
48
|
-
--arg dsa_status "$DSA_STATUS" \
|
|
49
|
-
--arg dsa_status_triage "$DSA_STATUS_TRIAGE" \
|
|
50
|
-
--arg dsa_repo_ticket_url "$DSA_REPO_TICKET_URL" \
|
|
51
|
-
--arg workspace_id "$WORKSPACE_ID" \
|
|
52
|
-
--arg project_id_github_and_important_sdk_issues "$PROJECT_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES" \
|
|
53
|
-
--arg project_id_sdk_backlog "$PROJECT_ID_SDK_BACKLOG" \
|
|
54
|
-
'{
|
|
55
|
-
"data": {
|
|
56
|
-
"custom_fields": {
|
|
57
|
-
$sdk_platform_group: $sdk_platform_group_server,
|
|
58
|
-
$sdk_platform: $sdk_platform_typescript,
|
|
59
|
-
$dsa_priority: $dsa_priority_no_priority,
|
|
60
|
-
$dsa_status: $dsa_status_triage,
|
|
61
|
-
$dsa_repo_ticket_url: $url
|
|
62
|
-
},
|
|
63
|
-
"name": $title,
|
|
64
|
-
"workspace": $workspace_id,
|
|
65
|
-
"projects": [$project_id_github_and_important_sdk_issues, $project_id_sdk_backlog],
|
|
66
|
-
"notes": "Issue ID: \($repo_full_name)#\($id)\nIssue number: \($number)\nCreated via GitHub Actions\n----\n\n\($body)"
|
|
67
|
-
}
|
|
68
|
-
}')
|
|
69
|
-
|
|
70
|
-
curl --request POST \
|
|
71
|
-
--url https://app.asana.com/api/1.0/tasks?opt_pretty=true \
|
|
72
|
-
--header 'accept: application/json' \
|
|
73
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
74
|
-
--header 'content-type: application/json' \
|
|
75
|
-
--data "$DATA_BODY" \
|
|
76
|
-
--output response.json
|
|
77
|
-
|
|
78
|
-
TASK_GID=$(jq -r '.data.gid' response.json)
|
|
79
|
-
echo "TASK_GID=$TASK_GID" >> $GITHUB_ENV
|
|
80
|
-
- name: Move to "0 Unclassified" section in "Github & Important SDK Issues" project
|
|
81
|
-
env:
|
|
82
|
-
SECTION_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES: "1208970755434051"
|
|
83
|
-
run: |
|
|
84
|
-
DATA_BODY=$(jq -n \
|
|
85
|
-
--arg task_gid "$TASK_GID" \
|
|
86
|
-
--arg section_id "$SECTION_ID_GITHUB_AND_IMPORTANT_SDK_ISSUES" \
|
|
87
|
-
'{
|
|
88
|
-
"data": {
|
|
89
|
-
"task": $task_gid,
|
|
90
|
-
"insert_after": "null"
|
|
91
|
-
}
|
|
92
|
-
}')
|
|
93
|
-
|
|
94
|
-
curl --request POST \
|
|
95
|
-
--url https://app.asana.com/api/1.0/sections/$section_id/addTask \
|
|
96
|
-
--header 'accept: application/json' \
|
|
97
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
98
|
-
--header 'content-type: application/json' \
|
|
99
|
-
--data "$DATA_BODY"
|
|
100
|
-
- name: Move to "Untriaged" section in "SDK / Backlog" project
|
|
101
|
-
env:
|
|
102
|
-
SECTION_ID_SDK_BACKLOG: "1208899729378982"
|
|
103
|
-
run: |
|
|
104
|
-
DATA_BODY=$(jq -n \
|
|
105
|
-
--arg task_gid "$TASK_GID" \
|
|
106
|
-
--arg section_id "$SECTION_ID_SDK_BACKLOG" \
|
|
107
|
-
'{
|
|
108
|
-
"data": {
|
|
109
|
-
"task": $task_gid,
|
|
110
|
-
"insert_after": "null"
|
|
111
|
-
}
|
|
112
|
-
}')
|
|
113
|
-
|
|
114
|
-
curl --request POST \
|
|
115
|
-
--url https://app.asana.com/api/1.0/sections/$section_id/addTask \
|
|
116
|
-
--header 'accept: application/json' \
|
|
117
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
118
|
-
--header 'content-type: application/json' \
|
|
119
|
-
--data "$DATA_BODY"
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
name: Github --> Asana Issue Updates Workflow
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
issues:
|
|
5
|
-
types: [edited, deleted, closed, reopened, assigned, unassigned, labeled, unlabeled, milestoned, demilestoned, pinned, unpinned, locked, unlocked, transferred]
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
build:
|
|
10
|
-
runs-on: ubuntu-latest
|
|
11
|
-
permissions:
|
|
12
|
-
issues: read
|
|
13
|
-
steps:
|
|
14
|
-
- name: Get Asana Task Corresponding to Issue
|
|
15
|
-
env:
|
|
16
|
-
ISSUE_ID: ${{ github.event.issue.id }}
|
|
17
|
-
REPO_FULL_NAME: ${{ github.event.repository.full_name }}
|
|
18
|
-
WORKSPACE_ID: "780103692902078"
|
|
19
|
-
run: |
|
|
20
|
-
REPO_SCOPED_ISSUE_ID="$REPO_FULL_NAME#$ISSUE_ID"
|
|
21
|
-
|
|
22
|
-
curl --request GET \
|
|
23
|
-
--url "https://app.asana.com/api/1.0/workspaces/$WORKSPACE_ID/tasks/search?opt_fields=notes&text=$REPO_SCOPED_ISSUE_ID&sort_by=modified_at&sort_ascending=false" \
|
|
24
|
-
--header 'accept: application/json' \
|
|
25
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
26
|
-
--output response.json
|
|
27
|
-
TASK_GID=$(jq -r '.data[0].gid' response.json)
|
|
28
|
-
echo "TASK_GID=$TASK_GID" >> $GITHUB_ENV
|
|
29
|
-
- name: Determine Action and Post to Asana
|
|
30
|
-
env:
|
|
31
|
-
ACTION_TYPE: ${{ github.event.action }}
|
|
32
|
-
ACTOR_NAME: ${{ github.event.sender.login }}
|
|
33
|
-
ISSUE_TITLE: ${{ github.event.issue.title }}
|
|
34
|
-
ISSUE_NUMBER: ${{ github.event.issue.number }}
|
|
35
|
-
ISSUE_STATE: ${{ github.event.issue.state }}
|
|
36
|
-
run: |
|
|
37
|
-
# Map GitHub action types to human-readable descriptions
|
|
38
|
-
case "$ACTION_TYPE" in
|
|
39
|
-
"edited")
|
|
40
|
-
ACTION_DESC="edited the issue"
|
|
41
|
-
;;
|
|
42
|
-
"deleted")
|
|
43
|
-
ACTION_DESC="deleted the issue"
|
|
44
|
-
;;
|
|
45
|
-
"closed")
|
|
46
|
-
ACTION_DESC="closed the issue"
|
|
47
|
-
;;
|
|
48
|
-
"reopened")
|
|
49
|
-
ACTION_DESC="reopened the issue"
|
|
50
|
-
;;
|
|
51
|
-
"assigned")
|
|
52
|
-
ACTION_DESC="assigned the issue"
|
|
53
|
-
;;
|
|
54
|
-
"unassigned")
|
|
55
|
-
ACTION_DESC="unassigned the issue"
|
|
56
|
-
;;
|
|
57
|
-
"labeled")
|
|
58
|
-
ACTION_DESC="added labels to the issue"
|
|
59
|
-
;;
|
|
60
|
-
"unlabeled")
|
|
61
|
-
ACTION_DESC="removed labels from the issue"
|
|
62
|
-
;;
|
|
63
|
-
"milestoned")
|
|
64
|
-
ACTION_DESC="added the issue to a milestone"
|
|
65
|
-
;;
|
|
66
|
-
"demilestoned")
|
|
67
|
-
ACTION_DESC="removed the issue from a milestone"
|
|
68
|
-
;;
|
|
69
|
-
"pinned")
|
|
70
|
-
ACTION_DESC="pinned the issue"
|
|
71
|
-
;;
|
|
72
|
-
"unpinned")
|
|
73
|
-
ACTION_DESC="unpinned the issue"
|
|
74
|
-
;;
|
|
75
|
-
"locked")
|
|
76
|
-
ACTION_DESC="locked the issue"
|
|
77
|
-
;;
|
|
78
|
-
"unlocked")
|
|
79
|
-
ACTION_DESC="unlocked the issue"
|
|
80
|
-
;;
|
|
81
|
-
"transferred")
|
|
82
|
-
ACTION_DESC="transferred the issue"
|
|
83
|
-
;;
|
|
84
|
-
*)
|
|
85
|
-
ACTION_DESC="performed an action on the issue"
|
|
86
|
-
;;
|
|
87
|
-
esac
|
|
88
|
-
|
|
89
|
-
# Add additional context for specific actions based on webhook payload
|
|
90
|
-
if [ "$ACTION_TYPE" = "assigned" ] && [ -n "${{ github.event.assignee.login }}" ]; then
|
|
91
|
-
ACTION_DESC="assigned the issue to ${{ github.event.assignee.login }}"
|
|
92
|
-
fi
|
|
93
|
-
|
|
94
|
-
if [ "$ACTION_TYPE" = "unassigned" ] && [ -n "${{ github.event.assignee.login }}" ]; then
|
|
95
|
-
ACTION_DESC="unassigned the issue from ${{ github.event.assignee.login }}"
|
|
96
|
-
fi
|
|
97
|
-
|
|
98
|
-
if [ "$ACTION_TYPE" = "labeled" ] && [ -n "${{ github.event.label.name }}" ]; then
|
|
99
|
-
LABEL_COLOR="${{ github.event.label.color }}"
|
|
100
|
-
ACTION_DESC="added label '${{ github.event.label.name }}' to the issue"
|
|
101
|
-
if [ -n "$LABEL_COLOR" ]; then
|
|
102
|
-
ACTION_DESC="$ACTION_DESC (color: #$LABEL_COLOR)"
|
|
103
|
-
fi
|
|
104
|
-
fi
|
|
105
|
-
|
|
106
|
-
if [ "$ACTION_TYPE" = "unlabeled" ] && [ -n "${{ github.event.label.name }}" ]; then
|
|
107
|
-
LABEL_COLOR="${{ github.event.label.color }}"
|
|
108
|
-
ACTION_DESC="removed label '${{ github.event.label.name }}' from the issue"
|
|
109
|
-
if [ -n "$LABEL_COLOR" ]; then
|
|
110
|
-
ACTION_DESC="$ACTION_DESC (color: #$LABEL_COLOR)"
|
|
111
|
-
fi
|
|
112
|
-
fi
|
|
113
|
-
|
|
114
|
-
if [ "$ACTION_TYPE" = "milestoned" ] && [ -n "${{ github.event.milestone.title }}" ]; then
|
|
115
|
-
MILESTONE_DUE_DATE="${{ github.event.milestone.due_on }}"
|
|
116
|
-
ACTION_DESC="added the issue to milestone '${{ github.event.milestone.title }}'"
|
|
117
|
-
if [ -n "$MILESTONE_DUE_DATE" ] && [ "$MILESTONE_DUE_DATE" != "null" ]; then
|
|
118
|
-
ACTION_DESC="$ACTION_DESC (due: $MILESTONE_DUE_DATE)"
|
|
119
|
-
fi
|
|
120
|
-
fi
|
|
121
|
-
|
|
122
|
-
if [ "$ACTION_TYPE" = "demilestoned" ] && [ -n "${{ github.event.milestone.title }}" ]; then
|
|
123
|
-
ACTION_DESC="removed the issue from milestone '${{ github.event.milestone.title }}'"
|
|
124
|
-
fi
|
|
125
|
-
|
|
126
|
-
if [ "$ACTION_TYPE" = "transferred" ] && [ -n "${{ github.event.changes.new_repository.full_name }}" ]; then
|
|
127
|
-
ACTION_DESC="transferred the issue to repository ${{ github.event.changes.new_repository.full_name }}"
|
|
128
|
-
fi
|
|
129
|
-
|
|
130
|
-
if [ "$ACTION_TYPE" = "edited" ] && [ -n "${{ github.event.changes.title.from }}" ]; then
|
|
131
|
-
OLD_TITLE="${{ github.event.changes.title.from }}"
|
|
132
|
-
NEW_TITLE="${{ github.event.issue.title }}"
|
|
133
|
-
ACTION_DESC="edited the issue title from '$OLD_TITLE' to '$NEW_TITLE'"
|
|
134
|
-
fi
|
|
135
|
-
|
|
136
|
-
echo "ACTION_DESC=$ACTION_DESC" >> $GITHUB_ENV
|
|
137
|
-
|
|
138
|
-
# Only proceed if we found a task
|
|
139
|
-
if [ "$TASK_GID" != "null" ] && [ -n "$TASK_GID" ]; then
|
|
140
|
-
# Create a more detailed message with additional context
|
|
141
|
-
MESSAGE_TEXT="$ACTOR_NAME performed an action: $ACTION_DESC"
|
|
142
|
-
|
|
143
|
-
# Add issue state information for state changes
|
|
144
|
-
if [ "$ACTION_TYPE" = "closed" ] || [ "$ACTION_TYPE" = "reopened" ]; then
|
|
145
|
-
MESSAGE_TEXT=$(printf "%s\nIssue state: %s" "$MESSAGE_TEXT" "$ISSUE_STATE")
|
|
146
|
-
fi
|
|
147
|
-
|
|
148
|
-
# Add repository information for transferred issues
|
|
149
|
-
if [ "$ACTION_TYPE" = "transferred" ]; then
|
|
150
|
-
REPO_NAME="${{ github.event.repository.full_name }}"
|
|
151
|
-
MESSAGE_TEXT=$(printf "%s\nFrom repository: %s" "$MESSAGE_TEXT" "$REPO_NAME")
|
|
152
|
-
fi
|
|
153
|
-
|
|
154
|
-
MESSAGE_TEXT=$(printf "%s\n\nIssue: #%s - %s" "$MESSAGE_TEXT" "$ISSUE_NUMBER" "$ISSUE_TITLE")
|
|
155
|
-
|
|
156
|
-
BODY_DATA=$(jq -n \
|
|
157
|
-
--arg text "$MESSAGE_TEXT" \
|
|
158
|
-
'{
|
|
159
|
-
"data": {
|
|
160
|
-
"text": $text
|
|
161
|
-
}
|
|
162
|
-
}')
|
|
163
|
-
|
|
164
|
-
curl --request POST \
|
|
165
|
-
--url https://app.asana.com/api/1.0/tasks/$TASK_GID/stories \
|
|
166
|
-
--header 'accept: application/json' \
|
|
167
|
-
--header 'authorization: Bearer ${{ secrets.ASANA_PAT }}' \
|
|
168
|
-
--header 'content-type: application/json' \
|
|
169
|
-
--data "$BODY_DATA"
|
|
170
|
-
else
|
|
171
|
-
echo "No corresponding Asana task found for issue ID: $ISSUE_ID"
|
|
172
|
-
fi
|