@tellescope/sdk 1.66.2 → 1.66.4
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/lib/cjs/sdk.d.ts +3 -2
- package/lib/cjs/sdk.d.ts.map +1 -1
- package/lib/cjs/sdk.js.map +1 -1
- package/lib/cjs/session.d.ts.map +1 -1
- package/lib/cjs/session.js +1 -0
- package/lib/cjs/session.js.map +1 -1
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +257 -37
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/sdk.d.ts +3 -2
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/sdk.js.map +1 -1
- package/lib/esm/session.d.ts +0 -1
- package/lib/esm/session.d.ts.map +1 -1
- package/lib/esm/session.js +1 -0
- package/lib/esm/session.js.map +1 -1
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +257 -37
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/sdk.ts +3 -3
- package/src/session.ts +4 -1
- package/src/tests/tests.ts +204 -1
- package/test_generated.pdf +0 -0
package/src/tests/tests.ts
CHANGED
|
@@ -2827,6 +2827,186 @@ const formSubmittedTriggerTests = async () => {
|
|
|
2827
2827
|
title: "Inactive"
|
|
2828
2828
|
})
|
|
2829
2829
|
|
|
2830
|
+
const noConditions = await sdk.api.automation_triggers.createOne({
|
|
2831
|
+
event: {
|
|
2832
|
+
type: 'Form Submitted',
|
|
2833
|
+
info: {
|
|
2834
|
+
formId: form.id,
|
|
2835
|
+
},
|
|
2836
|
+
},
|
|
2837
|
+
action: { type: 'Add Tags', info: { tags: ['No Conditions'] }},
|
|
2838
|
+
status: 'Active',
|
|
2839
|
+
title: "No Conditions"
|
|
2840
|
+
})
|
|
2841
|
+
const equals = await sdk.api.automation_triggers.createOne({
|
|
2842
|
+
event: {
|
|
2843
|
+
type: 'Form Submitted',
|
|
2844
|
+
info: {
|
|
2845
|
+
formId: form.id,
|
|
2846
|
+
},
|
|
2847
|
+
conditions : {
|
|
2848
|
+
"$and" : [
|
|
2849
|
+
{
|
|
2850
|
+
"condition" : {
|
|
2851
|
+
[field.id]: "trigger 2"
|
|
2852
|
+
}
|
|
2853
|
+
}
|
|
2854
|
+
]
|
|
2855
|
+
},
|
|
2856
|
+
},
|
|
2857
|
+
action: { type: 'Add Tags', info: { tags: ['Equals'] }},
|
|
2858
|
+
status: 'Active',
|
|
2859
|
+
title: "Equals"
|
|
2860
|
+
})
|
|
2861
|
+
const equalsFalse = await sdk.api.automation_triggers.createOne({
|
|
2862
|
+
event: {
|
|
2863
|
+
type: 'Form Submitted',
|
|
2864
|
+
info: {
|
|
2865
|
+
formId: form.id,
|
|
2866
|
+
},
|
|
2867
|
+
conditions : {
|
|
2868
|
+
"$and" : [
|
|
2869
|
+
{
|
|
2870
|
+
"condition" : {
|
|
2871
|
+
[field.id]: "tri"
|
|
2872
|
+
}
|
|
2873
|
+
}
|
|
2874
|
+
]
|
|
2875
|
+
},
|
|
2876
|
+
},
|
|
2877
|
+
action: { type: 'Add Tags', info: { tags: ['No'] }},
|
|
2878
|
+
status: 'Active',
|
|
2879
|
+
title: "Equals False"
|
|
2880
|
+
})
|
|
2881
|
+
const existsTrue = await sdk.api.automation_triggers.createOne({
|
|
2882
|
+
event: {
|
|
2883
|
+
type: 'Form Submitted',
|
|
2884
|
+
info: {
|
|
2885
|
+
formId: form.id,
|
|
2886
|
+
},
|
|
2887
|
+
conditions : {
|
|
2888
|
+
"$and" : [
|
|
2889
|
+
{
|
|
2890
|
+
"condition" : {
|
|
2891
|
+
[field.id]: { $exists: true }
|
|
2892
|
+
}
|
|
2893
|
+
}
|
|
2894
|
+
]
|
|
2895
|
+
},
|
|
2896
|
+
},
|
|
2897
|
+
action: { type: 'Add Tags', info: { tags: ['exists'] }},
|
|
2898
|
+
status: 'Active',
|
|
2899
|
+
title: "Exists true"
|
|
2900
|
+
})
|
|
2901
|
+
const existsFalse = await sdk.api.automation_triggers.createOne({
|
|
2902
|
+
event: {
|
|
2903
|
+
type: 'Form Submitted',
|
|
2904
|
+
info: {
|
|
2905
|
+
formId: form.id,
|
|
2906
|
+
},
|
|
2907
|
+
conditions : {
|
|
2908
|
+
"$and" : [
|
|
2909
|
+
{
|
|
2910
|
+
"condition" : {
|
|
2911
|
+
[field.id]: { $exists: false }
|
|
2912
|
+
}
|
|
2913
|
+
}
|
|
2914
|
+
]
|
|
2915
|
+
},
|
|
2916
|
+
},
|
|
2917
|
+
action: { type: 'Add Tags', info: { tags: ['No'] }},
|
|
2918
|
+
status: 'Active',
|
|
2919
|
+
title: "Exists False"
|
|
2920
|
+
})
|
|
2921
|
+
const doesNotContainTrue = await sdk.api.automation_triggers.createOne({
|
|
2922
|
+
event: {
|
|
2923
|
+
type: 'Form Submitted',
|
|
2924
|
+
info: {
|
|
2925
|
+
formId: form.id,
|
|
2926
|
+
},
|
|
2927
|
+
conditions : {
|
|
2928
|
+
"$and" : [
|
|
2929
|
+
{
|
|
2930
|
+
"condition" : {
|
|
2931
|
+
[field.id]: {
|
|
2932
|
+
"$doesNotContain" : "tri2"
|
|
2933
|
+
}
|
|
2934
|
+
}
|
|
2935
|
+
}
|
|
2936
|
+
]
|
|
2937
|
+
},
|
|
2938
|
+
},
|
|
2939
|
+
action: { type: 'Add Tags', info: { tags: ['doesNotContain'] }},
|
|
2940
|
+
status: 'Active',
|
|
2941
|
+
title: "doesNotContainTrue"
|
|
2942
|
+
})
|
|
2943
|
+
const doesNotContainFalse = await sdk.api.automation_triggers.createOne({
|
|
2944
|
+
event: {
|
|
2945
|
+
type: 'Form Submitted',
|
|
2946
|
+
info: {
|
|
2947
|
+
formId: form.id,
|
|
2948
|
+
},
|
|
2949
|
+
conditions : {
|
|
2950
|
+
"$and" : [
|
|
2951
|
+
{
|
|
2952
|
+
"condition" : {
|
|
2953
|
+
[field.id]: {
|
|
2954
|
+
"$doesNotContain" : "tri"
|
|
2955
|
+
}
|
|
2956
|
+
}
|
|
2957
|
+
}
|
|
2958
|
+
]
|
|
2959
|
+
},
|
|
2960
|
+
},
|
|
2961
|
+
action: { type: 'Add Tags', info: { tags: ['No'] }},
|
|
2962
|
+
status: 'Active',
|
|
2963
|
+
title: "doesNotContainFalse"
|
|
2964
|
+
})
|
|
2965
|
+
const containFalse = await sdk.api.automation_triggers.createOne({
|
|
2966
|
+
event: {
|
|
2967
|
+
type: 'Form Submitted',
|
|
2968
|
+
info: {
|
|
2969
|
+
formId: form.id,
|
|
2970
|
+
},
|
|
2971
|
+
conditions : {
|
|
2972
|
+
"$and" : [
|
|
2973
|
+
{
|
|
2974
|
+
"condition" : {
|
|
2975
|
+
[field.id]: {
|
|
2976
|
+
"$contains" : "tri2"
|
|
2977
|
+
}
|
|
2978
|
+
}
|
|
2979
|
+
}
|
|
2980
|
+
]
|
|
2981
|
+
},
|
|
2982
|
+
},
|
|
2983
|
+
action: { type: 'Add Tags', info: { tags: ['No'] }},
|
|
2984
|
+
status: 'Active',
|
|
2985
|
+
title: "containFalse"
|
|
2986
|
+
})
|
|
2987
|
+
const containTrue = await sdk.api.automation_triggers.createOne({
|
|
2988
|
+
event: {
|
|
2989
|
+
type: 'Form Submitted',
|
|
2990
|
+
info: {
|
|
2991
|
+
formId: form.id,
|
|
2992
|
+
},
|
|
2993
|
+
conditions : {
|
|
2994
|
+
"$and" : [
|
|
2995
|
+
{
|
|
2996
|
+
"condition" : {
|
|
2997
|
+
[field.id]: {
|
|
2998
|
+
"$contains" : "tri"
|
|
2999
|
+
}
|
|
3000
|
+
}
|
|
3001
|
+
}
|
|
3002
|
+
]
|
|
3003
|
+
},
|
|
3004
|
+
},
|
|
3005
|
+
action: { type: 'Add Tags', info: { tags: ['contains'] }},
|
|
3006
|
+
status: 'Active',
|
|
3007
|
+
title: "containTrue"
|
|
3008
|
+
})
|
|
3009
|
+
|
|
2830
3010
|
const { accessCode } = await sdk.api.form_responses.prepare_form_response({
|
|
2831
3011
|
enduserId: enduser.id,
|
|
2832
3012
|
formId: form.id,
|
|
@@ -2849,6 +3029,19 @@ const formSubmittedTriggerTests = async () => {
|
|
|
2849
3029
|
// allow triggers to happen
|
|
2850
3030
|
await wait(undefined, 1000)
|
|
2851
3031
|
|
|
3032
|
+
await async_test(
|
|
3033
|
+
`Triggers with conditional works`,
|
|
3034
|
+
() => sdk.api.endusers.getOne(enduser.id),
|
|
3035
|
+
{ onResult: e => !!(
|
|
3036
|
+
e.tags?.includes('Equals')
|
|
3037
|
+
&& e.tags?.includes('contains')
|
|
3038
|
+
&& e.tags?.includes('exists')
|
|
3039
|
+
&& e.tags?.includes('No Conditions')
|
|
3040
|
+
&& e.tags?.includes('doesNotContain')
|
|
3041
|
+
&& !e.tags?.includes('No')
|
|
3042
|
+
)}
|
|
3043
|
+
)
|
|
3044
|
+
|
|
2852
3045
|
await async_test(
|
|
2853
3046
|
`Automated triggers work`,
|
|
2854
3047
|
() => sdk.api.endusers.getOne(enduser.id),
|
|
@@ -2867,6 +3060,15 @@ const formSubmittedTriggerTests = async () => {
|
|
|
2867
3060
|
sdk.api.automation_triggers.deleteOne(active.id),
|
|
2868
3061
|
sdk.api.automation_triggers.deleteOne(dupActive.id),
|
|
2869
3062
|
sdk.api.automation_triggers.deleteOne(inactive.id),
|
|
3063
|
+
sdk.api.automation_triggers.deleteOne(equals.id),
|
|
3064
|
+
sdk.api.automation_triggers.deleteOne(doesNotContainTrue.id),
|
|
3065
|
+
sdk.api.automation_triggers.deleteOne(containTrue.id),
|
|
3066
|
+
sdk.api.automation_triggers.deleteOne(noConditions.id),
|
|
3067
|
+
sdk.api.automation_triggers.deleteOne(existsTrue.id),
|
|
3068
|
+
sdk.api.automation_triggers.deleteOne(existsFalse.id),
|
|
3069
|
+
sdk.api.automation_triggers.deleteOne(containFalse.id),
|
|
3070
|
+
sdk.api.automation_triggers.deleteOne(equalsFalse.id),
|
|
3071
|
+
sdk.api.automation_triggers.deleteOne(doesNotContainFalse.id),
|
|
2870
3072
|
])
|
|
2871
3073
|
}
|
|
2872
3074
|
|
|
@@ -3162,6 +3364,7 @@ const role_based_access_tests = async () => {
|
|
|
3162
3364
|
await async_test(
|
|
3163
3365
|
`[bulk] non-admin for chat message bad`,
|
|
3164
3366
|
() => sdkNonAdmin.bulk_load({ load: [{ model: 'chats' }] }),
|
|
3367
|
+
// { onResult: result => result.results.flatMap(r => r?.records || []).length === 0 }
|
|
3165
3368
|
handleAnyError // throws error in this case in enforceForeignAccessConstraints because there are no accessible chats
|
|
3166
3369
|
)
|
|
3167
3370
|
await async_test(
|
|
@@ -4917,6 +5120,7 @@ const TRACK_OPEN_IMAGE = Buffer.from(
|
|
|
4917
5120
|
|
|
4918
5121
|
await mfa_tests()
|
|
4919
5122
|
await setup_tests()
|
|
5123
|
+
await automation_trigger_tests()
|
|
4920
5124
|
await enduser_session_tests()
|
|
4921
5125
|
await nextReminderInMS_tests()
|
|
4922
5126
|
await search_tests()
|
|
@@ -4929,7 +5133,6 @@ const TRACK_OPEN_IMAGE = Buffer.from(
|
|
|
4929
5133
|
await merge_enduser_tests()
|
|
4930
5134
|
await self_serve_appointment_booking_tests()
|
|
4931
5135
|
await auto_reply_tests()
|
|
4932
|
-
await automation_trigger_tests()
|
|
4933
5136
|
await sub_organization_enduser_tests()
|
|
4934
5137
|
await sub_organization_tests()
|
|
4935
5138
|
await filter_by_date_tests()
|
package/test_generated.pdf
CHANGED
|
Binary file
|