@memberjunction/integration-connectors 5.40.2 → 5.42.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/dist/CventConnector.d.ts +146 -0
- package/dist/CventConnector.d.ts.map +1 -0
- package/dist/CventConnector.js +540 -0
- package/dist/CventConnector.js.map +1 -0
- package/dist/DynamicsDataverseConnector.d.ts +296 -0
- package/dist/DynamicsDataverseConnector.d.ts.map +1 -0
- package/dist/DynamicsDataverseConnector.js +790 -0
- package/dist/DynamicsDataverseConnector.js.map +1 -0
- package/dist/FontevaConnector.d.ts +153 -0
- package/dist/FontevaConnector.d.ts.map +1 -0
- package/dist/FontevaConnector.js +421 -0
- package/dist/FontevaConnector.js.map +1 -0
- package/dist/GrowthZoneConnector.d.ts +123 -125
- package/dist/GrowthZoneConnector.d.ts.map +1 -1
- package/dist/GrowthZoneConnector.js +456 -499
- package/dist/GrowthZoneConnector.js.map +1 -1
- package/dist/HivebriteConnector.d.ts +151 -0
- package/dist/HivebriteConnector.d.ts.map +1 -0
- package/dist/HivebriteConnector.js +533 -0
- package/dist/HivebriteConnector.js.map +1 -0
- package/dist/IMISConnector.d.ts +112 -96
- package/dist/IMISConnector.d.ts.map +1 -1
- package/dist/IMISConnector.js +430 -417
- package/dist/IMISConnector.js.map +1 -1
- package/dist/MemberSuiteConnector.d.ts +185 -0
- package/dist/MemberSuiteConnector.d.ts.map +1 -0
- package/dist/MemberSuiteConnector.js +762 -0
- package/dist/MemberSuiteConnector.js.map +1 -0
- package/dist/NeonCRMConnector.d.ts +273 -0
- package/dist/NeonCRMConnector.d.ts.map +1 -0
- package/dist/NeonCRMConnector.js +1039 -0
- package/dist/NeonCRMConnector.js.map +1 -0
- package/dist/NetForumConnector.d.ts +140 -47
- package/dist/NetForumConnector.d.ts.map +1 -1
- package/dist/NetForumConnector.js +668 -395
- package/dist/NetForumConnector.js.map +1 -1
- package/dist/NetSuiteConnector.d.ts +116 -50
- package/dist/NetSuiteConnector.d.ts.map +1 -1
- package/dist/NetSuiteConnector.js +608 -510
- package/dist/NetSuiteConnector.js.map +1 -1
- package/dist/NimbleAMSConnector.d.ts +104 -11
- package/dist/NimbleAMSConnector.d.ts.map +1 -1
- package/dist/NimbleAMSConnector.js +552 -258
- package/dist/NimbleAMSConnector.js.map +1 -1
- package/dist/NoviConnector.d.ts +178 -0
- package/dist/NoviConnector.d.ts.map +1 -0
- package/dist/NoviConnector.js +566 -0
- package/dist/NoviConnector.js.map +1 -0
- package/dist/ORCIDConnector.d.ts +207 -0
- package/dist/ORCIDConnector.d.ts.map +1 -0
- package/dist/ORCIDConnector.js +708 -0
- package/dist/ORCIDConnector.js.map +1 -0
- package/dist/OpenWaterConnector.d.ts +173 -0
- package/dist/OpenWaterConnector.d.ts.map +1 -0
- package/dist/OpenWaterConnector.js +893 -0
- package/dist/OpenWaterConnector.js.map +1 -0
- package/dist/PathLMSConnector.d.ts +395 -0
- package/dist/PathLMSConnector.d.ts.map +1 -0
- package/dist/PathLMSConnector.js +1281 -0
- package/dist/PathLMSConnector.js.map +1 -0
- package/dist/PheedLoopConnector.d.ts +119 -0
- package/dist/PheedLoopConnector.d.ts.map +1 -0
- package/dist/PheedLoopConnector.js +429 -0
- package/dist/PheedLoopConnector.js.map +1 -0
- package/dist/PropFuelConnector.d.ts +135 -61
- package/dist/PropFuelConnector.d.ts.map +1 -1
- package/dist/PropFuelConnector.js +366 -467
- package/dist/PropFuelConnector.js.map +1 -1
- package/dist/RhythmConnector.d.ts +188 -0
- package/dist/RhythmConnector.d.ts.map +1 -0
- package/dist/RhythmConnector.js +784 -0
- package/dist/RhythmConnector.js.map +1 -0
- package/dist/SalesforceConnector.d.ts +69 -3
- package/dist/SalesforceConnector.d.ts.map +1 -1
- package/dist/SalesforceConnector.js +188 -166
- package/dist/SalesforceConnector.js.map +1 -1
- package/dist/SharePointConnector.d.ts +37 -30
- package/dist/SharePointConnector.d.ts.map +1 -1
- package/dist/SharePointConnector.js +163 -243
- package/dist/SharePointConnector.js.map +1 -1
- package/dist/YourMembershipConnector.d.ts.map +1 -1
- package/dist/YourMembershipConnector.js +13 -5
- package/dist/YourMembershipConnector.js.map +1 -1
- package/dist/index.d.ts +14 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/package.json +8 -7
- package/dist/BettyConnector.d.ts +0 -288
- package/dist/BettyConnector.d.ts.map +0 -1
- package/dist/BettyConnector.js +0 -909
- package/dist/BettyConnector.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { RelationalDBConnector, type ConnectionConfig } from './RelationalDBConnector.js';
|
|
2
2
|
export { HubSpotConnector } from './HubSpotConnector.js';
|
|
3
3
|
export { SalesforceConnector, type SalesforceConnectionConfig } from './SalesforceConnector.js';
|
|
4
|
+
export { FontevaConnector, LoadFontevaConnector } from './FontevaConnector.js';
|
|
4
5
|
export { YourMembershipConnector, type YMConnectionConfig } from './YourMembershipConnector.js';
|
|
5
6
|
export { FileFeedConnector, parseCsvLine } from './FileFeedConnector.js';
|
|
6
7
|
export { RasaConnector, type RasaConnectionConfig } from './RasaConnector.js';
|
|
@@ -8,14 +9,15 @@ export { WicketConnector, type WicketCRUDResult, type WicketSearchOptions, type
|
|
|
8
9
|
export { SageIntacctConnector, type SageIntacctConnectionConfig } from './SageIntacctConnector.js';
|
|
9
10
|
export { QuickBooksConnector, type QuickBooksConnectionConfig } from './QuickBooksConnector.js';
|
|
10
11
|
export { AptifyConnector, type AptifyConnectionConfig } from './AptifyConnector.js';
|
|
11
|
-
export { PropFuelConnector, type PropFuelConnectionConfig } from './PropFuelConnector.js';
|
|
12
|
-
export { BettyConnector } from './BettyConnector.js';
|
|
13
12
|
export { MJToMJConnector } from './MJToMJConnector.js';
|
|
14
13
|
export { GrowthZoneConnector } from './GrowthZoneConnector.js';
|
|
15
|
-
export {
|
|
14
|
+
export { ORCIDConnector, LoadORCIDConnector, type ORCIDConnectionConfig } from './ORCIDConnector.js';
|
|
15
|
+
export { OpenWaterConnector, type OpenWaterConnectionConfig } from './OpenWaterConnector.js';
|
|
16
|
+
export { IMISConnector, LoadIMISConnector, type IMISConnectionConfig } from './IMISConnector.js';
|
|
16
17
|
export { ConstantContactConnector } from './ConstantContactConnector.js';
|
|
17
18
|
export { MailchimpConnector } from './MailchimpConnector.js';
|
|
18
19
|
export { SharePointConnector } from './SharePointConnector.js';
|
|
20
|
+
export { DynamicsDataverseConnector, LoadDynamicsDataverseConnector, type DynamicsConnectionConfig } from './DynamicsDataverseConnector.js';
|
|
19
21
|
export { MagnetMailConnector } from './MagnetMailConnector.js';
|
|
20
22
|
export { WildApricotConnector } from './WildApricotConnector.js';
|
|
21
23
|
export { Reach360Connector } from './Reach360Connector.js';
|
|
@@ -23,4 +25,13 @@ export { BlackbaudConnector } from './BlackbaudConnector.js';
|
|
|
23
25
|
export { NetSuiteConnector } from './NetSuiteConnector.js';
|
|
24
26
|
export { NetForumConnector } from './NetForumConnector.js';
|
|
25
27
|
export { NimbleAMSConnector } from './NimbleAMSConnector.js';
|
|
28
|
+
export { PropFuelConnector, parseFileName, compareMicrotime } from './PropFuelConnector.js';
|
|
29
|
+
export { PathLMSConnector, LoadPathLMSConnector } from './PathLMSConnector.js';
|
|
30
|
+
export { HivebriteConnector, LoadHivebriteConnector, type HivebriteConnectionConfig } from './HivebriteConnector.js';
|
|
31
|
+
export { CventConnector, LoadCventConnector, type CventConnectionConfig } from './CventConnector.js';
|
|
32
|
+
export { NeonCRMConnector, LoadNeonCRMConnector, type NeonCRMConnectionConfig } from './NeonCRMConnector.js';
|
|
33
|
+
export { PheedLoopConnector } from './PheedLoopConnector.js';
|
|
34
|
+
export { RhythmConnector, LoadRhythmConnector, type RhythmConnectionConfig } from './RhythmConnector.js';
|
|
35
|
+
export { NoviConnector, LoadNoviConnector, type NoviConnectionConfig } from './NoviConnector.js';
|
|
36
|
+
export { MemberSuiteConnector } from './MemberSuiteConnector.js';
|
|
26
37
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,KAAK,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACjI,OAAO,EAAE,oBAAoB,EAAE,KAAK,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,KAAK,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,KAAK,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,KAAK,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACjI,OAAO,EAAE,oBAAoB,EAAE,KAAK,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAE,KAAK,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACrG,OAAO,EAAE,kBAAkB,EAAE,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,KAAK,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC5I,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACrH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,KAAK,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,KAAK,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAC7G,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { RelationalDBConnector } from './RelationalDBConnector.js';
|
|
2
2
|
export { HubSpotConnector } from './HubSpotConnector.js';
|
|
3
3
|
export { SalesforceConnector } from './SalesforceConnector.js';
|
|
4
|
+
export { FontevaConnector, LoadFontevaConnector } from './FontevaConnector.js';
|
|
4
5
|
export { YourMembershipConnector } from './YourMembershipConnector.js';
|
|
5
6
|
export { FileFeedConnector, parseCsvLine } from './FileFeedConnector.js';
|
|
6
7
|
export { RasaConnector } from './RasaConnector.js';
|
|
@@ -8,14 +9,15 @@ export { WicketConnector } from './WicketConnector.js';
|
|
|
8
9
|
export { SageIntacctConnector } from './SageIntacctConnector.js';
|
|
9
10
|
export { QuickBooksConnector } from './QuickBooksConnector.js';
|
|
10
11
|
export { AptifyConnector } from './AptifyConnector.js';
|
|
11
|
-
export { PropFuelConnector } from './PropFuelConnector.js';
|
|
12
|
-
export { BettyConnector } from './BettyConnector.js';
|
|
13
12
|
export { MJToMJConnector } from './MJToMJConnector.js';
|
|
14
13
|
export { GrowthZoneConnector } from './GrowthZoneConnector.js';
|
|
15
|
-
export {
|
|
14
|
+
export { ORCIDConnector, LoadORCIDConnector } from './ORCIDConnector.js';
|
|
15
|
+
export { OpenWaterConnector } from './OpenWaterConnector.js';
|
|
16
|
+
export { IMISConnector, LoadIMISConnector } from './IMISConnector.js';
|
|
16
17
|
export { ConstantContactConnector } from './ConstantContactConnector.js';
|
|
17
18
|
export { MailchimpConnector } from './MailchimpConnector.js';
|
|
18
19
|
export { SharePointConnector } from './SharePointConnector.js';
|
|
20
|
+
export { DynamicsDataverseConnector, LoadDynamicsDataverseConnector } from './DynamicsDataverseConnector.js';
|
|
19
21
|
export { MagnetMailConnector } from './MagnetMailConnector.js';
|
|
20
22
|
export { WildApricotConnector } from './WildApricotConnector.js';
|
|
21
23
|
export { Reach360Connector } from './Reach360Connector.js';
|
|
@@ -23,4 +25,13 @@ export { BlackbaudConnector } from './BlackbaudConnector.js';
|
|
|
23
25
|
export { NetSuiteConnector } from './NetSuiteConnector.js';
|
|
24
26
|
export { NetForumConnector } from './NetForumConnector.js';
|
|
25
27
|
export { NimbleAMSConnector } from './NimbleAMSConnector.js';
|
|
28
|
+
export { PropFuelConnector, parseFileName, compareMicrotime } from './PropFuelConnector.js';
|
|
29
|
+
export { PathLMSConnector, LoadPathLMSConnector } from './PathLMSConnector.js';
|
|
30
|
+
export { HivebriteConnector, LoadHivebriteConnector } from './HivebriteConnector.js';
|
|
31
|
+
export { CventConnector, LoadCventConnector } from './CventConnector.js';
|
|
32
|
+
export { NeonCRMConnector, LoadNeonCRMConnector } from './NeonCRMConnector.js';
|
|
33
|
+
export { PheedLoopConnector } from './PheedLoopConnector.js';
|
|
34
|
+
export { RhythmConnector, LoadRhythmConnector } from './RhythmConnector.js';
|
|
35
|
+
export { NoviConnector, LoadNoviConnector } from './NoviConnector.js';
|
|
36
|
+
export { MemberSuiteConnector } from './MemberSuiteConnector.js';
|
|
26
37
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAyB,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAmC,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAA2B,MAAM,8BAA8B,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAA4E,MAAM,sBAAsB,CAAC;AACjI,OAAO,EAAE,oBAAoB,EAAoC,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAmC,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,eAAe,EAA+B,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAyB,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAmC,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAA2B,MAAM,8BAA8B,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAA4E,MAAM,sBAAsB,CAAC;AACjI,OAAO,EAAE,oBAAoB,EAAoC,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,mBAAmB,EAAmC,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,eAAe,EAA+B,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAA8B,MAAM,qBAAqB,CAAC;AACrG,OAAO,EAAE,kBAAkB,EAAkC,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAA6B,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,8BAA8B,EAAiC,MAAM,iCAAiC,CAAC;AAC5I,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAkC,MAAM,yBAAyB,CAAC;AACrH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAA8B,MAAM,qBAAqB,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAgC,MAAM,uBAAuB,CAAC;AAC7G,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAA+B,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAA6B,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/integration-connectors",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "5.
|
|
4
|
+
"version": "5.42.0",
|
|
5
5
|
"description": "MemberJunction Integration Connectors - HubSpot, Salesforce, YourMembership, and FileFeed connectors",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -14,13 +14,14 @@
|
|
|
14
14
|
"test:watch": "vitest"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@memberjunction/core": "5.
|
|
18
|
-
"@memberjunction/core-entities": "5.
|
|
19
|
-
"@memberjunction/global": "5.
|
|
20
|
-
"@memberjunction/integration-engine": "5.
|
|
21
|
-
"@memberjunction/integration-engine-base": "5.
|
|
17
|
+
"@memberjunction/core": "5.42.0",
|
|
18
|
+
"@memberjunction/core-entities": "5.42.0",
|
|
19
|
+
"@memberjunction/global": "5.42.0",
|
|
20
|
+
"@memberjunction/integration-engine": "5.42.0",
|
|
21
|
+
"@memberjunction/integration-engine-base": "5.42.0",
|
|
22
22
|
"jsonwebtoken": "9.0.3",
|
|
23
|
-
"mssql": "^12.2.0"
|
|
23
|
+
"mssql": "^12.2.0",
|
|
24
|
+
"zod": "~3.24.4"
|
|
24
25
|
},
|
|
25
26
|
"devDependencies": {
|
|
26
27
|
"@types/jsonwebtoken": "^9.0.10",
|
package/dist/BettyConnector.d.ts
DELETED
|
@@ -1,288 +0,0 @@
|
|
|
1
|
-
import { type UserInfo } from '@memberjunction/core';
|
|
2
|
-
import type { MJCompanyIntegrationEntity, MJIntegrationObjectEntity } from '@memberjunction/core-entities';
|
|
3
|
-
import { BaseRESTIntegrationConnector, type RESTAuthContext, type RESTResponse, type PaginationState, type PaginationType, type ConnectionTestResult, type ExternalObjectSchema, type ExternalFieldSchema } from '@memberjunction/integration-engine';
|
|
4
|
-
/**
|
|
5
|
-
* Supported Betty auth header styles. Betty's per-tenant deployments vary —
|
|
6
|
-
* the customer's Betty admin confirms which convention applies.
|
|
7
|
-
*/
|
|
8
|
-
export type BettyAuthHeaderStyle = 'Authorization: Bearer {key}' | 'x-api-key: {key}';
|
|
9
|
-
/**
|
|
10
|
-
* Connection configuration for a Betty AI tenant.
|
|
11
|
-
*
|
|
12
|
-
* Betty has no public developer portal — all fields must be provisioned by the
|
|
13
|
-
* Brightfind/Tasio team as part of customer onboarding.
|
|
14
|
-
*/
|
|
15
|
-
export interface BettyConnectionConfig {
|
|
16
|
-
/** Per-tenant Betty API base URL (e.g., https://{customer}.betty.example.com). */
|
|
17
|
-
TenantEndpoint: string;
|
|
18
|
-
/** Betty-provisioned API key for this tenant. */
|
|
19
|
-
ApiKey: string;
|
|
20
|
-
/** Which HTTP header to use for the API key. Default: `Authorization: Bearer {key}`. */
|
|
21
|
-
AuthHeader?: BettyAuthHeaderStyle;
|
|
22
|
-
/** HTTP request timeout in milliseconds. Default: 30000. */
|
|
23
|
-
RequestTimeoutMs?: number;
|
|
24
|
-
/**
|
|
25
|
-
* Minimum milliseconds between API requests to avoid hammering a tenant.
|
|
26
|
-
* Betty rate limits are undocumented; default is conservative (500ms = 2 req/sec).
|
|
27
|
-
*/
|
|
28
|
-
MinRequestIntervalMs?: number;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Read-only connector for Betty AI (Brightfind/Tasio) — pulls conversational
|
|
32
|
-
* data from a customer's Betty tenant into MJ's native conversation entities.
|
|
33
|
-
*
|
|
34
|
-
* Destination entities in MJ:
|
|
35
|
-
* - Conversations -> `MJ: Conversations` (MJConversationEntity)
|
|
36
|
-
* - Messages -> `MJ: Conversation Details` (MJConversationDetailEntity)
|
|
37
|
-
* - Feedback -> linked to `MJ: Conversation Details` via message ID
|
|
38
|
-
* - KnowledgeSources / Users / ContentGaps -> reference/analytics data
|
|
39
|
-
* (no built-in MJ target; consumers route to custom tables if desired)
|
|
40
|
-
*
|
|
41
|
-
* Betty has **no public developer portal**. The tenant URL and API key must be
|
|
42
|
-
* provisioned by the Betty/Brightfind team. This connector:
|
|
43
|
-
* - attempts runtime OpenAPI discovery at common paths but tolerates absence
|
|
44
|
-
* - drives everything else from `MJ: Integration Objects` / `Integration Object Fields` metadata
|
|
45
|
-
* - is strictly READ-ONLY (CreateRecord/UpdateRecord/DeleteRecord throw)
|
|
46
|
-
*
|
|
47
|
-
* Configuration shape (stored on `MJ: Credentials.Values` or
|
|
48
|
-
* `MJ: Company Integrations.Configuration` as JSON):
|
|
49
|
-
* ```json
|
|
50
|
-
* {
|
|
51
|
-
* "TenantEndpoint": "https://customer.betty.example.com",
|
|
52
|
-
* "ApiKey": "<provisioned key>",
|
|
53
|
-
* "AuthHeader": "Authorization: Bearer {key}",
|
|
54
|
-
* "RequestTimeoutMs": 30000,
|
|
55
|
-
* "MinRequestIntervalMs": 500
|
|
56
|
-
* }
|
|
57
|
-
* ```
|
|
58
|
-
*
|
|
59
|
-
* The MJ field-mapping hint (`DefaultQueryParams.mj_field_map` on each
|
|
60
|
-
* IntegrationObject) documents how Betty fields should map to MJ
|
|
61
|
-
* Conversation / Conversation Detail columns at sync time — it is
|
|
62
|
-
* documentation only and not enforced by the connector.
|
|
63
|
-
*/
|
|
64
|
-
export declare class BettyConnector extends BaseRESTIntegrationConnector {
|
|
65
|
-
/** Resolved config for the current run (populated on Authenticate). */
|
|
66
|
-
private resolvedConfig;
|
|
67
|
-
/** Timestamp of the last HTTP request — used for throttling. */
|
|
68
|
-
private lastRequestTime;
|
|
69
|
-
/**
|
|
70
|
-
* Per-object index of the successful watermark field. The configured
|
|
71
|
-
* candidates list (`watermark_field_candidates` in DefaultQueryParams)
|
|
72
|
-
* is tried in order; once one succeeds we cache which one worked so we
|
|
73
|
-
* stop re-probing failed candidates for the rest of the run.
|
|
74
|
-
*/
|
|
75
|
-
private watermarkFieldIndexByObject;
|
|
76
|
-
get SupportsCreate(): boolean;
|
|
77
|
-
get SupportsUpdate(): boolean;
|
|
78
|
-
get SupportsDelete(): boolean;
|
|
79
|
-
get SupportsSearch(): boolean;
|
|
80
|
-
get SupportsListing(): boolean;
|
|
81
|
-
get IntegrationName(): string;
|
|
82
|
-
/**
|
|
83
|
-
* Authenticates against a Betty tenant. There's no OAuth or session
|
|
84
|
-
* exchange — we just validate that a usable API key + endpoint exist
|
|
85
|
-
* and stash them onto the auth context so downstream calls can use them.
|
|
86
|
-
*/
|
|
87
|
-
protected Authenticate(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<RESTAuthContext>;
|
|
88
|
-
/**
|
|
89
|
-
* Builds HTTP headers for every Betty request. The exact auth header is
|
|
90
|
-
* controlled by `BettyConnectionConfig.AuthHeader` so per-tenant
|
|
91
|
-
* conventions (`Authorization: Bearer …` vs `x-api-key: …`) can be
|
|
92
|
-
* switched without touching code.
|
|
93
|
-
*/
|
|
94
|
-
protected BuildHeaders(auth: RESTAuthContext): Record<string, string>;
|
|
95
|
-
/**
|
|
96
|
-
* Executes an HTTP request against the Betty tenant with throttling,
|
|
97
|
-
* timeout, and exponential backoff on 429/503.
|
|
98
|
-
*/
|
|
99
|
-
protected MakeHTTPRequest(auth: RESTAuthContext, url: string, method: string, headers: Record<string, string>, body?: unknown): Promise<RESTResponse>;
|
|
100
|
-
/**
|
|
101
|
-
* Extracts the data array from a Betty response envelope using the
|
|
102
|
-
* IntegrationObject's ResponseDataKey. Falls back to a short list of
|
|
103
|
-
* common keys if none is configured.
|
|
104
|
-
*/
|
|
105
|
-
protected NormalizeResponse(rawBody: unknown, responseDataKey: string | null): Record<string, unknown>[];
|
|
106
|
-
/**
|
|
107
|
-
* Extracts pagination state from a Betty response. Betty's per-tenant
|
|
108
|
-
* conventions vary, so we inspect a short list of common envelope keys
|
|
109
|
-
* (`nextCursor`, `next`, `next_page_token`) before falling back to
|
|
110
|
-
* inferring `HasMore` from record counts.
|
|
111
|
-
*/
|
|
112
|
-
protected ExtractPaginationInfo(rawBody: unknown, paginationType: PaginationType, currentPage: number, currentOffset: number, pageSize: number): PaginationState;
|
|
113
|
-
/** Base URL for all Betty API requests — just the tenant endpoint. */
|
|
114
|
-
protected GetBaseURL(companyIntegration: MJCompanyIntegrationEntity, auth: RESTAuthContext): string;
|
|
115
|
-
/**
|
|
116
|
-
* Tests connectivity to a Betty tenant. Because the health endpoint is not
|
|
117
|
-
* publicly documented we probe a few common paths and treat any
|
|
118
|
-
* authenticated response (200 or 401) as a sign that the tenant is
|
|
119
|
-
* reachable and the API key was at least accepted for evaluation.
|
|
120
|
-
*
|
|
121
|
-
* - 200 -> full success
|
|
122
|
-
* - 401 -> tenant reachable but the supplied key was rejected
|
|
123
|
-
* - 403 -> tenant reachable, key accepted, but path restricted
|
|
124
|
-
* - otherwise -> reported failure with the HTTP status for debugging
|
|
125
|
-
*/
|
|
126
|
-
TestConnection(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<ConnectionTestResult>;
|
|
127
|
-
/**
|
|
128
|
-
* Combines the static IntegrationObject list with any additional objects
|
|
129
|
-
* surfaced by runtime OpenAPI discovery. Discovery failures are logged
|
|
130
|
-
* and tolerated — customer tenants without an OpenAPI spec still work
|
|
131
|
-
* from the static metadata alone.
|
|
132
|
-
*/
|
|
133
|
-
DiscoverObjects(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<ExternalObjectSchema[]>;
|
|
134
|
-
/**
|
|
135
|
-
* Fetches a sample record for the object and enumerates its keys. Any key
|
|
136
|
-
* absent from the static field metadata is flagged `IsCustom: true`.
|
|
137
|
-
*/
|
|
138
|
-
DiscoverFields(companyIntegration: MJCompanyIntegrationEntity, objectName: string, contextUser: UserInfo): Promise<ExternalFieldSchema[]>;
|
|
139
|
-
CreateRecord(): Promise<never>;
|
|
140
|
-
UpdateRecord(): Promise<never>;
|
|
141
|
-
DeleteRecord(): Promise<never>;
|
|
142
|
-
/**
|
|
143
|
-
* Extends base AppendDefaultQueryParams to translate the
|
|
144
|
-
* `watermark_field_candidates` hint into a real query param when a
|
|
145
|
-
* watermark is active. The connector tries candidates in order; once
|
|
146
|
-
* one returns without HTTP 400 we cache the winning index.
|
|
147
|
-
*
|
|
148
|
-
* MJ-mapping hints (`mj_target_entity`, `mj_field_map`) are stripped so
|
|
149
|
-
* they never leak onto an actual HTTP call.
|
|
150
|
-
*/
|
|
151
|
-
protected AppendDefaultQueryParams(url: string, obj: MJIntegrationObjectEntity): string;
|
|
152
|
-
/**
|
|
153
|
-
* Probes each OPENAPI_CANDIDATE_PATHS path. Returns the first valid
|
|
154
|
-
* OpenAPI document it can parse, or null if none succeed.
|
|
155
|
-
*/
|
|
156
|
-
private attemptOpenAPIDiscovery;
|
|
157
|
-
/**
|
|
158
|
-
* Extracts candidate integration objects from an OpenAPI document's
|
|
159
|
-
* `paths` map. Skips any object whose name (case-insensitive) is
|
|
160
|
-
* already in the static set. Everything returned is flagged as
|
|
161
|
-
* custom by the caller via a "Custom:" description prefix.
|
|
162
|
-
*/
|
|
163
|
-
private extractObjectsFromOpenAPI;
|
|
164
|
-
/**
|
|
165
|
-
* Returns the first meaningful path segment from a path like
|
|
166
|
-
* `/conversations/{id}/messages` → `conversations`.
|
|
167
|
-
*/
|
|
168
|
-
private firstPathSegment;
|
|
169
|
-
/** Converts `conversations` / `knowledge-sources` to `Conversations` / `KnowledgeSources`. */
|
|
170
|
-
private toPascalCase;
|
|
171
|
-
/**
|
|
172
|
-
* Fetches a single sample record from the object's configured endpoint
|
|
173
|
-
* with `limit=1`. Returns null if no records are available or if the
|
|
174
|
-
* endpoint uses parent-child templating (we don't probe parents here).
|
|
175
|
-
*/
|
|
176
|
-
private fetchSampleRecord;
|
|
177
|
-
/**
|
|
178
|
-
* Builds ExternalFieldSchema entries for keys present in a sample
|
|
179
|
-
* record but absent from the configured static metadata. Flagged as
|
|
180
|
-
* custom via a "Custom:" description prefix.
|
|
181
|
-
*/
|
|
182
|
-
private buildCustomFieldSchemas;
|
|
183
|
-
/** Infers a coarse data-type label from a JS value. */
|
|
184
|
-
private inferDataType;
|
|
185
|
-
/** Builds a URL for a sample fetch, appending `limit=1`. */
|
|
186
|
-
private buildSampleURL;
|
|
187
|
-
/** Attempts to pull the cached IntegrationObject; returns null if it doesn't exist. */
|
|
188
|
-
private tryGetCachedObject;
|
|
189
|
-
/**
|
|
190
|
-
* Parses DefaultQueryParams JSON into an object. Returns null if the
|
|
191
|
-
* field is missing or malformed.
|
|
192
|
-
*/
|
|
193
|
-
private parseDefaultQueryParams;
|
|
194
|
-
/**
|
|
195
|
-
* Removes MJ-mapping-only hints so they are never sent on the wire.
|
|
196
|
-
* These are documentation hints for field-mapping setup at sync time.
|
|
197
|
-
*/
|
|
198
|
-
private stripMjMappingHints;
|
|
199
|
-
/**
|
|
200
|
-
* Returns a shallow clone of the IntegrationObject with its
|
|
201
|
-
* DefaultQueryParams replaced by the given map. Used when we need the
|
|
202
|
-
* base class to process filtered params without mutating the cache.
|
|
203
|
-
*/
|
|
204
|
-
private cloneWithQueryParams;
|
|
205
|
-
/**
|
|
206
|
-
* Extracts an array from a response envelope by key. Supports dotted
|
|
207
|
-
* paths (e.g., `data.items`). Returns null if the key is not present or
|
|
208
|
-
* the value at the key is not an array.
|
|
209
|
-
*/
|
|
210
|
-
private extractArrayByKey;
|
|
211
|
-
/** Looks for common cursor-style keys at the response envelope's root. */
|
|
212
|
-
private extractCursorFromBody;
|
|
213
|
-
/** Counts records in a response without knowing the exact data key. */
|
|
214
|
-
private countRecordsInBody;
|
|
215
|
-
/**
|
|
216
|
-
* Resolves a BettyConnectionConfig from either the CompanyIntegration's
|
|
217
|
-
* linked credential record or its legacy `Configuration` JSON field.
|
|
218
|
-
*/
|
|
219
|
-
private ParseConfig;
|
|
220
|
-
/**
|
|
221
|
-
* Loads a Betty config from a `MJ: Credentials` record. Returns null if
|
|
222
|
-
* the credential is missing, empty, or fails to parse.
|
|
223
|
-
*/
|
|
224
|
-
private loadConfigFromCredential;
|
|
225
|
-
/**
|
|
226
|
-
* Parses a JSON configuration payload into BettyConnectionConfig.
|
|
227
|
-
* Accepts PascalCase and camelCase keys for convenience.
|
|
228
|
-
*/
|
|
229
|
-
private parseConfigJson;
|
|
230
|
-
/**
|
|
231
|
-
* Safely parses a JSON string, returning null (instead of throwing) on
|
|
232
|
-
* malformed input.
|
|
233
|
-
*/
|
|
234
|
-
private safeParseJson;
|
|
235
|
-
/** Picks the first defined string value among the given keys. */
|
|
236
|
-
private pickString;
|
|
237
|
-
/** Picks the first positive integer value among the given keys. */
|
|
238
|
-
private pickPositiveInt;
|
|
239
|
-
/**
|
|
240
|
-
* Normalizes an AuthHeader string to the known literal values. Falls
|
|
241
|
-
* back to the bearer default if the input is unrecognized.
|
|
242
|
-
*/
|
|
243
|
-
private normalizeAuthHeader;
|
|
244
|
-
/**
|
|
245
|
-
* Issues a raw fetch() with an AbortController timeout. Exposed as its
|
|
246
|
-
* own method so MakeHTTPRequest can keep its retry loop focused.
|
|
247
|
-
*/
|
|
248
|
-
private fetchRaw;
|
|
249
|
-
/**
|
|
250
|
-
* Reads a response body as JSON when Content-Type is JSON-ish, otherwise
|
|
251
|
-
* as text. Returns null on empty bodies so callers don't need to branch.
|
|
252
|
-
*/
|
|
253
|
-
private readResponseBodySafe;
|
|
254
|
-
/** Converts a fetch Response + parsed body into the framework's RESTResponse shape. */
|
|
255
|
-
private buildBettyResponse;
|
|
256
|
-
/**
|
|
257
|
-
* Computes exponential backoff delay in ms with a `Retry-After` header
|
|
258
|
-
* override when provided by the server.
|
|
259
|
-
*/
|
|
260
|
-
private computeBackoffMs;
|
|
261
|
-
/**
|
|
262
|
-
* Applies a minimum-interval throttle between consecutive requests to
|
|
263
|
-
* avoid hammering a tenant whose rate-limit policy is undocumented.
|
|
264
|
-
*/
|
|
265
|
-
private applyThrottle;
|
|
266
|
-
/** Returns a promise that resolves after `ms` milliseconds. */
|
|
267
|
-
private sleep;
|
|
268
|
-
/** Removes a trailing slash if present. */
|
|
269
|
-
private stripTrailingSlash;
|
|
270
|
-
/**
|
|
271
|
-
* Probes a small set of candidate "reachability" paths. Returns on the
|
|
272
|
-
* first path that appears to authenticate (even 401 is informative —
|
|
273
|
-
* the tenant is reachable and treating the key as invalid rather than
|
|
274
|
-
* silently ignoring it).
|
|
275
|
-
*/
|
|
276
|
-
private probeTenantReachable;
|
|
277
|
-
/**
|
|
278
|
-
* Turns a probe response into a human-readable success / failure. Returns
|
|
279
|
-
* null to mean "inconclusive — try the next path."
|
|
280
|
-
*/
|
|
281
|
-
private interpretProbeResponse;
|
|
282
|
-
/** Best-effort extraction of a server/version string from a probe body. */
|
|
283
|
-
private extractServerVersion;
|
|
284
|
-
private readonly _typeAnchor?;
|
|
285
|
-
}
|
|
286
|
-
/** Tree-shaking prevention function — import and call from module entry point. */
|
|
287
|
-
export declare function LoadBettyConnector(): void;
|
|
288
|
-
//# sourceMappingURL=BettyConnector.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BettyConnector.d.ts","sourceRoot":"","sources":["../src/BettyConnector.ts"],"names":[],"mappings":"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"}
|