@eveai/eve-sdk-for-node 0.0.2 → 0.0.3

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.
Files changed (37) hide show
  1. package/README.md.bak +510 -0
  2. package/README.md.orig +510 -0
  3. package/dist/client.js +1 -1
  4. package/dist/client.js.map +1 -1
  5. package/dist/client.mjs +1 -1
  6. package/dist/client.mjs.map +1 -1
  7. package/dist/index.d.mts +4 -0
  8. package/dist/index.d.ts +4 -0
  9. package/dist/index.js +20 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/index.mjs +4 -0
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/services/eveai-chat.d.mts +118 -0
  14. package/dist/services/eveai-chat.d.ts +118 -0
  15. package/dist/services/eveai-chat.js +115 -0
  16. package/dist/services/eveai-chat.js.map +1 -0
  17. package/dist/services/eveai-chat.mjs +114 -0
  18. package/dist/services/eveai-chat.mjs.map +1 -0
  19. package/dist/services/eveai-payment.d.mts +145 -0
  20. package/dist/services/eveai-payment.d.ts +145 -0
  21. package/dist/services/eveai-payment.js +132 -0
  22. package/dist/services/eveai-payment.js.map +1 -0
  23. package/dist/services/eveai-payment.mjs +131 -0
  24. package/dist/services/eveai-payment.mjs.map +1 -0
  25. package/dist/services/eveai-provider-discovery.d.mts +126 -0
  26. package/dist/services/eveai-provider-discovery.d.ts +126 -0
  27. package/dist/services/eveai-provider-discovery.js +96 -0
  28. package/dist/services/eveai-provider-discovery.js.map +1 -0
  29. package/dist/services/eveai-provider-discovery.mjs +95 -0
  30. package/dist/services/eveai-provider-discovery.mjs.map +1 -0
  31. package/dist/services/eveai-task.d.mts +137 -0
  32. package/dist/services/eveai-task.d.ts +137 -0
  33. package/dist/services/eveai-task.js +143 -0
  34. package/dist/services/eveai-task.js.map +1 -0
  35. package/dist/services/eveai-task.mjs +142 -0
  36. package/dist/services/eveai-task.mjs.map +1 -0
  37. package/package.json +16 -2
@@ -0,0 +1,131 @@
1
+ // src/services/eveai-payment.ts
2
+ var EveAIPayment = class {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ /**
7
+ * Calculate Price
8
+ *
9
+ * Calculate final price with platform fee and member discount
10
+ */
11
+ async calculatePrice(baseAmount, tip = 0, isMember = false) {
12
+ const path = "/payment/calculate";
13
+ const uri = new URL(this.client.config.endpoint + path);
14
+ return await this.client.call("post", uri, {
15
+ "content-type": "application/json"
16
+ }, {
17
+ base_amount: baseAmount,
18
+ tip,
19
+ is_member: isMember
20
+ });
21
+ }
22
+ /**
23
+ * Create Payment Intent
24
+ *
25
+ * Create Stripe payment intent for task payment
26
+ */
27
+ async createPaymentIntent(taskId, amount, currency = "usd") {
28
+ const path = "/payment/create-intent";
29
+ const uri = new URL(this.client.config.endpoint + path);
30
+ return await this.client.call("post", uri, {
31
+ "content-type": "application/json"
32
+ }, {
33
+ task_id: taskId,
34
+ amount,
35
+ currency
36
+ });
37
+ }
38
+ /**
39
+ * Confirm Payment
40
+ *
41
+ * Confirm payment and transfer funds
42
+ */
43
+ async confirmPayment(paymentIntentId, taskId) {
44
+ const path = "/payment/confirm";
45
+ const uri = new URL(this.client.config.endpoint + path);
46
+ return await this.client.call("post", uri, {
47
+ "content-type": "application/json"
48
+ }, {
49
+ payment_intent_id: paymentIntentId,
50
+ task_id: taskId
51
+ });
52
+ }
53
+ /**
54
+ * Subscribe to Membership
55
+ *
56
+ * Subscribe user to $25/month membership
57
+ */
58
+ async subscribe(paymentMethodId) {
59
+ const path = "/payment/subscribe";
60
+ const uri = new URL(this.client.config.endpoint + path);
61
+ return await this.client.call("post", uri, {
62
+ "content-type": "application/json"
63
+ }, {
64
+ payment_method_id: paymentMethodId
65
+ });
66
+ }
67
+ /**
68
+ * Cancel Subscription
69
+ *
70
+ * Cancel membership subscription
71
+ */
72
+ async cancelSubscription() {
73
+ const path = "/payment/cancel-subscription";
74
+ const uri = new URL(this.client.config.endpoint + path);
75
+ return await this.client.call("post", uri);
76
+ }
77
+ /**
78
+ * Get Subscription Status
79
+ *
80
+ * Check current subscription status
81
+ */
82
+ async getSubscription() {
83
+ const path = "/payment/subscription";
84
+ const uri = new URL(this.client.config.endpoint + path);
85
+ return await this.client.call("get", uri);
86
+ }
87
+ /**
88
+ * Get Payment History
89
+ *
90
+ * List all payments for user
91
+ */
92
+ async getPaymentHistory(page = 1, pageSize = 20) {
93
+ const path = "/payment/history";
94
+ const uri = new URL(this.client.config.endpoint + path);
95
+ return await this.client.call("get", uri, {}, {
96
+ page,
97
+ page_size: pageSize
98
+ });
99
+ }
100
+ /**
101
+ * Get Earnings
102
+ *
103
+ * Get provider earnings summary
104
+ */
105
+ async getEarnings(startDate, endDate) {
106
+ const path = "/payment/earnings";
107
+ const payload = {};
108
+ if (startDate)
109
+ payload.start_date = startDate;
110
+ if (endDate)
111
+ payload.end_date = endDate;
112
+ const uri = new URL(this.client.config.endpoint + path);
113
+ return await this.client.call("get", uri, {}, payload);
114
+ }
115
+ /**
116
+ * Request Payout
117
+ *
118
+ * Request payout to bank account
119
+ */
120
+ async requestPayout(amount) {
121
+ const path = "/payment/payout";
122
+ const uri = new URL(this.client.config.endpoint + path);
123
+ return await this.client.call("post", uri, {
124
+ "content-type": "application/json"
125
+ }, { amount });
126
+ }
127
+ };
128
+
129
+ export { EveAIPayment };
130
+ //# sourceMappingURL=out.js.map
131
+ //# sourceMappingURL=eveai-payment.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/eveai-payment.ts"],"names":[],"mappings":"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","sourcesContent":["import { Client } from '../client';\n\n/**\n * Eve.AI Payment Service\n * \n * Stripe payment processing, subscriptions, and transaction management\n */\nexport class EveAIPayment {\n client: Client;\n\n constructor(client: Client) {\n this.client = client;\n }\n\n /**\n * Calculate Price\n * \n * Calculate final price with platform fee and member discount\n */\n async calculatePrice(\n baseAmount: number,\n tip: number = 0,\n isMember: boolean = false\n ): Promise<PriceCalculationResponse> {\n const path = '/payment/calculate';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n base_amount: baseAmount,\n tip,\n is_member: isMember\n });\n }\n\n /**\n * Create Payment Intent\n * \n * Create Stripe payment intent for task payment\n */\n async createPaymentIntent(\n taskId: string,\n amount: number,\n currency: string = 'usd'\n ): Promise<PaymentIntentResponse> {\n const path = '/payment/create-intent';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n task_id: taskId,\n amount,\n currency\n });\n }\n\n /**\n * Confirm Payment\n * \n * Confirm payment and transfer funds\n */\n async confirmPayment(\n paymentIntentId: string,\n taskId: string\n ): Promise<PaymentResponse> {\n const path = '/payment/confirm';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n payment_intent_id: paymentIntentId,\n task_id: taskId\n });\n }\n\n /**\n * Subscribe to Membership\n * \n * Subscribe user to $25/month membership\n */\n async subscribe(paymentMethodId: string): Promise<SubscriptionResponse> {\n const path = '/payment/subscribe';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n payment_method_id: paymentMethodId\n });\n }\n\n /**\n * Cancel Subscription\n * \n * Cancel membership subscription\n */\n async cancelSubscription(): Promise<SubscriptionResponse> {\n const path = '/payment/cancel-subscription';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri);\n }\n\n /**\n * Get Subscription Status\n * \n * Check current subscription status\n */\n async getSubscription(): Promise<SubscriptionResponse> {\n const path = '/payment/subscription';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri);\n }\n\n /**\n * Get Payment History\n * \n * List all payments for user\n */\n async getPaymentHistory(\n page: number = 1,\n pageSize: number = 20\n ): Promise<PaymentListResponse> {\n const path = '/payment/history';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, {\n page,\n page_size: pageSize\n });\n }\n\n /**\n * Get Earnings\n * \n * Get provider earnings summary\n */\n async getEarnings(\n startDate?: string,\n endDate?: string\n ): Promise<EarningsResponse> {\n const path = '/payment/earnings';\n const payload: any = {};\n if (startDate) payload.start_date = startDate;\n if (endDate) payload.end_date = endDate;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n\n /**\n * Request Payout\n * \n * Request payout to bank account\n */\n async requestPayout(amount: number): Promise<PayoutResponse> {\n const path = '/payment/payout';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, { amount });\n }\n}\n\n// Types\nexport interface PriceCalculationResponse {\n status_code: number;\n total: number;\n base_amount: number;\n tip: number;\n platform_fee: number;\n discount: number;\n breakdown: {\n subtotal: number;\n platform_fee: number;\n discount: number;\n tip: number;\n total: number;\n };\n}\n\nexport interface PaymentIntentResponse {\n status_code: number;\n client_secret: string;\n payment_intent_id: string;\n}\n\nexport interface PaymentResponse {\n status_code: number;\n status_msg: string;\n payment: Payment;\n}\n\nexport interface Payment {\n id: string;\n task_id: string;\n amount: number;\n status: string;\n created_at: string;\n}\n\nexport interface SubscriptionResponse {\n status_code: number;\n subscription?: Subscription;\n}\n\nexport interface Subscription {\n id: string;\n status: string;\n current_period_end: string;\n cancel_at_period_end: boolean;\n}\n\nexport interface PaymentListResponse {\n status_code: number;\n payments: Payment[];\n total: number;\n}\n\nexport interface EarningsResponse {\n status_code: number;\n total_earnings: number;\n available_balance: number;\n pending_balance: number;\n breakdown: {\n completed_tasks: number;\n total_revenue: number;\n platform_fees: number;\n net_earnings: number;\n };\n}\n\nexport interface PayoutResponse {\n status_code: number;\n payout_id: string;\n amount: number;\n status: string;\n estimated_arrival: string;\n}\n"]}
@@ -0,0 +1,126 @@
1
+ import { Client } from '../client.mjs';
2
+ import '../models.mjs';
3
+ import '../enums/database-type.mjs';
4
+ import '../enums/attribute-status.mjs';
5
+ import '../enums/column-status.mjs';
6
+ import '../enums/index-status.mjs';
7
+ import '../enums/deployment-status.mjs';
8
+ import '../enums/execution-trigger.mjs';
9
+ import '../enums/execution-status.mjs';
10
+ import '../enums/health-antivirus-status.mjs';
11
+ import '../enums/health-check-status.mjs';
12
+ import '../enums/message-status.mjs';
13
+ import '../query.mjs';
14
+
15
+ /**
16
+ * Eve.AI Provider Discovery Service
17
+ *
18
+ * AI-powered provider search and automated outreach
19
+ */
20
+ declare class EveAIProviderDiscovery {
21
+ client: Client;
22
+ constructor(client: Client);
23
+ /**
24
+ * Search Providers for Task
25
+ *
26
+ * Search web for local providers matching task requirements
27
+ */
28
+ searchProvidersForTask(taskId: string, category: string, location: string, radiusMiles?: number, maxResults?: number): Promise<SearchProvidersResponse>;
29
+ /**
30
+ * Contact Providers
31
+ *
32
+ * Send automated outreach to discovered providers
33
+ */
34
+ contactProviders(searchId: string, taskId: string, taskInfo: TaskOutreachInfo, maxProviders?: number): Promise<ContactProvidersResponse>;
35
+ /**
36
+ * Get Search Results
37
+ *
38
+ * Get results of a provider search
39
+ */
40
+ getSearchResults(searchId: string): Promise<SearchResultsResponse>;
41
+ /**
42
+ * Track Provider Response
43
+ *
44
+ * Track when a provider responds to outreach
45
+ */
46
+ trackProviderResponse(attemptId: string, providerId: string, taskId: string, responseType: string, message?: string): Promise<StatusResponse>;
47
+ /**
48
+ * Get Conversion Stats
49
+ *
50
+ * Get provider conversion funnel statistics
51
+ */
52
+ getConversionStats(searchId?: string, startDate?: string, endDate?: string): Promise<ConversionStatsResponse>;
53
+ }
54
+ interface TaskOutreachInfo {
55
+ title: string;
56
+ description: string;
57
+ category: string;
58
+ location: string;
59
+ estimatedPrice: number;
60
+ urgency: string;
61
+ }
62
+ interface SearchProvidersResponse {
63
+ status_code: number;
64
+ status_msg: string;
65
+ search_id: string;
66
+ providers: DiscoveredProvider[];
67
+ }
68
+ interface DiscoveredProvider {
69
+ id: string;
70
+ name: string;
71
+ phone?: string;
72
+ email?: string;
73
+ website?: string;
74
+ address: string;
75
+ rating?: number;
76
+ review_count: number;
77
+ distance?: number;
78
+ source: string;
79
+ }
80
+ interface ContactProvidersResponse {
81
+ status_code: number;
82
+ status_msg: string;
83
+ providers_contacted: number;
84
+ attempts: OutreachAttempt[];
85
+ }
86
+ interface OutreachAttempt {
87
+ id: string;
88
+ provider_id: string;
89
+ method: string;
90
+ status: string;
91
+ }
92
+ interface SearchResultsResponse {
93
+ status_code: number;
94
+ status_msg: string;
95
+ search: SearchResult;
96
+ }
97
+ interface SearchResult {
98
+ id: string;
99
+ task_id: string;
100
+ category: string;
101
+ location: string;
102
+ providers_found: number;
103
+ providers_contacted: number;
104
+ providers_responded: number;
105
+ status: string;
106
+ created_at: string;
107
+ }
108
+ interface StatusResponse {
109
+ status_code: number;
110
+ status_msg: string;
111
+ }
112
+ interface ConversionStatsResponse {
113
+ status_code: number;
114
+ stats: {
115
+ total_searches: number;
116
+ total_providers_found: number;
117
+ total_contacted: number;
118
+ total_clicked: number;
119
+ total_downloaded: number;
120
+ total_registered: number;
121
+ total_active: number;
122
+ conversion_rate: number;
123
+ };
124
+ }
125
+
126
+ export { ContactProvidersResponse, ConversionStatsResponse, DiscoveredProvider, EveAIProviderDiscovery, OutreachAttempt, SearchProvidersResponse, SearchResult, SearchResultsResponse, StatusResponse, TaskOutreachInfo };
@@ -0,0 +1,126 @@
1
+ import { Client } from '../client.js';
2
+ import '../models.js';
3
+ import '../enums/database-type.js';
4
+ import '../enums/attribute-status.js';
5
+ import '../enums/column-status.js';
6
+ import '../enums/index-status.js';
7
+ import '../enums/deployment-status.js';
8
+ import '../enums/execution-trigger.js';
9
+ import '../enums/execution-status.js';
10
+ import '../enums/health-antivirus-status.js';
11
+ import '../enums/health-check-status.js';
12
+ import '../enums/message-status.js';
13
+ import '../query.js';
14
+
15
+ /**
16
+ * Eve.AI Provider Discovery Service
17
+ *
18
+ * AI-powered provider search and automated outreach
19
+ */
20
+ declare class EveAIProviderDiscovery {
21
+ client: Client;
22
+ constructor(client: Client);
23
+ /**
24
+ * Search Providers for Task
25
+ *
26
+ * Search web for local providers matching task requirements
27
+ */
28
+ searchProvidersForTask(taskId: string, category: string, location: string, radiusMiles?: number, maxResults?: number): Promise<SearchProvidersResponse>;
29
+ /**
30
+ * Contact Providers
31
+ *
32
+ * Send automated outreach to discovered providers
33
+ */
34
+ contactProviders(searchId: string, taskId: string, taskInfo: TaskOutreachInfo, maxProviders?: number): Promise<ContactProvidersResponse>;
35
+ /**
36
+ * Get Search Results
37
+ *
38
+ * Get results of a provider search
39
+ */
40
+ getSearchResults(searchId: string): Promise<SearchResultsResponse>;
41
+ /**
42
+ * Track Provider Response
43
+ *
44
+ * Track when a provider responds to outreach
45
+ */
46
+ trackProviderResponse(attemptId: string, providerId: string, taskId: string, responseType: string, message?: string): Promise<StatusResponse>;
47
+ /**
48
+ * Get Conversion Stats
49
+ *
50
+ * Get provider conversion funnel statistics
51
+ */
52
+ getConversionStats(searchId?: string, startDate?: string, endDate?: string): Promise<ConversionStatsResponse>;
53
+ }
54
+ interface TaskOutreachInfo {
55
+ title: string;
56
+ description: string;
57
+ category: string;
58
+ location: string;
59
+ estimatedPrice: number;
60
+ urgency: string;
61
+ }
62
+ interface SearchProvidersResponse {
63
+ status_code: number;
64
+ status_msg: string;
65
+ search_id: string;
66
+ providers: DiscoveredProvider[];
67
+ }
68
+ interface DiscoveredProvider {
69
+ id: string;
70
+ name: string;
71
+ phone?: string;
72
+ email?: string;
73
+ website?: string;
74
+ address: string;
75
+ rating?: number;
76
+ review_count: number;
77
+ distance?: number;
78
+ source: string;
79
+ }
80
+ interface ContactProvidersResponse {
81
+ status_code: number;
82
+ status_msg: string;
83
+ providers_contacted: number;
84
+ attempts: OutreachAttempt[];
85
+ }
86
+ interface OutreachAttempt {
87
+ id: string;
88
+ provider_id: string;
89
+ method: string;
90
+ status: string;
91
+ }
92
+ interface SearchResultsResponse {
93
+ status_code: number;
94
+ status_msg: string;
95
+ search: SearchResult;
96
+ }
97
+ interface SearchResult {
98
+ id: string;
99
+ task_id: string;
100
+ category: string;
101
+ location: string;
102
+ providers_found: number;
103
+ providers_contacted: number;
104
+ providers_responded: number;
105
+ status: string;
106
+ created_at: string;
107
+ }
108
+ interface StatusResponse {
109
+ status_code: number;
110
+ status_msg: string;
111
+ }
112
+ interface ConversionStatsResponse {
113
+ status_code: number;
114
+ stats: {
115
+ total_searches: number;
116
+ total_providers_found: number;
117
+ total_contacted: number;
118
+ total_clicked: number;
119
+ total_downloaded: number;
120
+ total_registered: number;
121
+ total_active: number;
122
+ conversion_rate: number;
123
+ };
124
+ }
125
+
126
+ export { ContactProvidersResponse, ConversionStatsResponse, DiscoveredProvider, EveAIProviderDiscovery, OutreachAttempt, SearchProvidersResponse, SearchResult, SearchResultsResponse, StatusResponse, TaskOutreachInfo };
@@ -0,0 +1,96 @@
1
+ 'use strict';
2
+
3
+ class EveAIProviderDiscovery {
4
+ constructor(client) {
5
+ this.client = client;
6
+ }
7
+ /**
8
+ * Search Providers for Task
9
+ *
10
+ * Search web for local providers matching task requirements
11
+ */
12
+ async searchProvidersForTask(taskId, category, location, radiusMiles = 25, maxResults = 20) {
13
+ const path = "/provider-discovery/search";
14
+ const uri = new URL(this.client.config.endpoint + path);
15
+ return await this.client.call("post", uri, {
16
+ "content-type": "application/json"
17
+ }, {
18
+ task_id: taskId,
19
+ category,
20
+ location,
21
+ radius_miles: radiusMiles,
22
+ max_results: maxResults
23
+ });
24
+ }
25
+ /**
26
+ * Contact Providers
27
+ *
28
+ * Send automated outreach to discovered providers
29
+ */
30
+ async contactProviders(searchId, taskId, taskInfo, maxProviders = 10) {
31
+ const path = "/provider-discovery/contact";
32
+ const uri = new URL(this.client.config.endpoint + path);
33
+ return await this.client.call("post", uri, {
34
+ "content-type": "application/json"
35
+ }, {
36
+ search_id: searchId,
37
+ task_id: taskId,
38
+ task_title: taskInfo.title,
39
+ task_description: taskInfo.description,
40
+ task_category: taskInfo.category,
41
+ task_location: taskInfo.location,
42
+ estimated_price: taskInfo.estimatedPrice,
43
+ urgency: taskInfo.urgency,
44
+ max_providers: maxProviders
45
+ });
46
+ }
47
+ /**
48
+ * Get Search Results
49
+ *
50
+ * Get results of a provider search
51
+ */
52
+ async getSearchResults(searchId) {
53
+ const path = `/provider-discovery/search/${searchId}`;
54
+ const uri = new URL(this.client.config.endpoint + path);
55
+ return await this.client.call("get", uri);
56
+ }
57
+ /**
58
+ * Track Provider Response
59
+ *
60
+ * Track when a provider responds to outreach
61
+ */
62
+ async trackProviderResponse(attemptId, providerId, taskId, responseType, message) {
63
+ const path = "/provider-discovery/track";
64
+ const uri = new URL(this.client.config.endpoint + path);
65
+ return await this.client.call("post", uri, {
66
+ "content-type": "application/json"
67
+ }, {
68
+ attempt_id: attemptId,
69
+ provider_id: providerId,
70
+ task_id: taskId,
71
+ response_type: responseType,
72
+ message
73
+ });
74
+ }
75
+ /**
76
+ * Get Conversion Stats
77
+ *
78
+ * Get provider conversion funnel statistics
79
+ */
80
+ async getConversionStats(searchId, startDate, endDate) {
81
+ const path = "/provider-discovery/stats";
82
+ const payload = {};
83
+ if (searchId)
84
+ payload.search_id = searchId;
85
+ if (startDate)
86
+ payload.start_date = startDate;
87
+ if (endDate)
88
+ payload.end_date = endDate;
89
+ const uri = new URL(this.client.config.endpoint + path);
90
+ return await this.client.call("get", uri, {}, payload);
91
+ }
92
+ }
93
+
94
+ exports.EveAIProviderDiscovery = EveAIProviderDiscovery;
95
+ //# sourceMappingURL=out.js.map
96
+ //# sourceMappingURL=eveai-provider-discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/eveai-provider-discovery.ts"],"names":[],"mappings":"AAOO,MAAM,uBAAuB;AAAA,EAGhC,YAAY,QAAgB;AACxB,SAAK,SAAS;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,uBACF,QACA,UACA,UACA,cAAsB,IACtB,aAAqB,IACW;AAChC,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG;AAAA,MACC,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,aAAa;AAAA,IACjB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,iBACF,UACA,QACA,UACA,eAAuB,IACU;AACjC,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG;AAAA,MACC,WAAW;AAAA,MACX,SAAS;AAAA,MACT,YAAY,SAAS;AAAA,MACrB,kBAAkB,SAAS;AAAA,MAC3B,eAAe,SAAS;AAAA,MACxB,eAAe,SAAS;AAAA,MACxB,iBAAiB,SAAS;AAAA,MAC1B,SAAS,SAAS;AAAA,MAClB,eAAe;AAAA,IACnB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,iBAAiB,UAAkD;AACrE,UAAM,OAAO,8BAA8B,QAAQ;AACnD,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,GAAG;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,sBACF,WACA,YACA,QACA,cACA,SACuB;AACvB,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG;AAAA,MACC,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,SAAS;AAAA,MACT,eAAe;AAAA,MACf;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,mBACF,UACA,WACA,SACgC;AAChC,UAAM,OAAO;AACb,UAAM,UAAe,CAAC;AACtB,QAAI;AAAU,cAAQ,YAAY;AAClC,QAAI;AAAW,cAAQ,aAAa;AACpC,QAAI;AAAS,cAAQ,WAAW;AAEhC,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,CAAC,GAAG,OAAO;AAAA,EACzD;AACJ","sourcesContent":["import { Client } from '../client';\n\n/**\n * Eve.AI Provider Discovery Service\n * \n * AI-powered provider search and automated outreach\n */\nexport class EveAIProviderDiscovery {\n client: Client;\n\n constructor(client: Client) {\n this.client = client;\n }\n\n /**\n * Search Providers for Task\n * \n * Search web for local providers matching task requirements\n */\n async searchProvidersForTask(\n taskId: string,\n category: string,\n location: string,\n radiusMiles: number = 25,\n maxResults: number = 20\n ): Promise<SearchProvidersResponse> {\n const path = '/provider-discovery/search';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n task_id: taskId,\n category,\n location,\n radius_miles: radiusMiles,\n max_results: maxResults\n });\n }\n\n /**\n * Contact Providers\n * \n * Send automated outreach to discovered providers\n */\n async contactProviders(\n searchId: string,\n taskId: string,\n taskInfo: TaskOutreachInfo,\n maxProviders: number = 10\n ): Promise<ContactProvidersResponse> {\n const path = '/provider-discovery/contact';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n search_id: searchId,\n task_id: taskId,\n task_title: taskInfo.title,\n task_description: taskInfo.description,\n task_category: taskInfo.category,\n task_location: taskInfo.location,\n estimated_price: taskInfo.estimatedPrice,\n urgency: taskInfo.urgency,\n max_providers: maxProviders\n });\n }\n\n /**\n * Get Search Results\n * \n * Get results of a provider search\n */\n async getSearchResults(searchId: string): Promise<SearchResultsResponse> {\n const path = `/provider-discovery/search/${searchId}`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri);\n }\n\n /**\n * Track Provider Response\n * \n * Track when a provider responds to outreach\n */\n async trackProviderResponse(\n attemptId: string,\n providerId: string,\n taskId: string,\n responseType: string,\n message?: string\n ): Promise<StatusResponse> {\n const path = '/provider-discovery/track';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n attempt_id: attemptId,\n provider_id: providerId,\n task_id: taskId,\n response_type: responseType,\n message\n });\n }\n\n /**\n * Get Conversion Stats\n * \n * Get provider conversion funnel statistics\n */\n async getConversionStats(\n searchId?: string,\n startDate?: string,\n endDate?: string\n ): Promise<ConversionStatsResponse> {\n const path = '/provider-discovery/stats';\n const payload: any = {};\n if (searchId) payload.search_id = searchId;\n if (startDate) payload.start_date = startDate;\n if (endDate) payload.end_date = endDate;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n}\n\n// Types\nexport interface TaskOutreachInfo {\n title: string;\n description: string;\n category: string;\n location: string;\n estimatedPrice: number;\n urgency: string;\n}\n\nexport interface SearchProvidersResponse {\n status_code: number;\n status_msg: string;\n search_id: string;\n providers: DiscoveredProvider[];\n}\n\nexport interface DiscoveredProvider {\n id: string;\n name: string;\n phone?: string;\n email?: string;\n website?: string;\n address: string;\n rating?: number;\n review_count: number;\n distance?: number;\n source: string;\n}\n\nexport interface ContactProvidersResponse {\n status_code: number;\n status_msg: string;\n providers_contacted: number;\n attempts: OutreachAttempt[];\n}\n\nexport interface OutreachAttempt {\n id: string;\n provider_id: string;\n method: string;\n status: string;\n}\n\nexport interface SearchResultsResponse {\n status_code: number;\n status_msg: string;\n search: SearchResult;\n}\n\nexport interface SearchResult {\n id: string;\n task_id: string;\n category: string;\n location: string;\n providers_found: number;\n providers_contacted: number;\n providers_responded: number;\n status: string;\n created_at: string;\n}\n\nexport interface StatusResponse {\n status_code: number;\n status_msg: string;\n}\n\nexport interface ConversionStatsResponse {\n status_code: number;\n stats: {\n total_searches: number;\n total_providers_found: number;\n total_contacted: number;\n total_clicked: number;\n total_downloaded: number;\n total_registered: number;\n total_active: number;\n conversion_rate: number;\n };\n}\n"]}
@@ -0,0 +1,95 @@
1
+ // src/services/eveai-provider-discovery.ts
2
+ var EveAIProviderDiscovery = class {
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ /**
7
+ * Search Providers for Task
8
+ *
9
+ * Search web for local providers matching task requirements
10
+ */
11
+ async searchProvidersForTask(taskId, category, location, radiusMiles = 25, maxResults = 20) {
12
+ const path = "/provider-discovery/search";
13
+ const uri = new URL(this.client.config.endpoint + path);
14
+ return await this.client.call("post", uri, {
15
+ "content-type": "application/json"
16
+ }, {
17
+ task_id: taskId,
18
+ category,
19
+ location,
20
+ radius_miles: radiusMiles,
21
+ max_results: maxResults
22
+ });
23
+ }
24
+ /**
25
+ * Contact Providers
26
+ *
27
+ * Send automated outreach to discovered providers
28
+ */
29
+ async contactProviders(searchId, taskId, taskInfo, maxProviders = 10) {
30
+ const path = "/provider-discovery/contact";
31
+ const uri = new URL(this.client.config.endpoint + path);
32
+ return await this.client.call("post", uri, {
33
+ "content-type": "application/json"
34
+ }, {
35
+ search_id: searchId,
36
+ task_id: taskId,
37
+ task_title: taskInfo.title,
38
+ task_description: taskInfo.description,
39
+ task_category: taskInfo.category,
40
+ task_location: taskInfo.location,
41
+ estimated_price: taskInfo.estimatedPrice,
42
+ urgency: taskInfo.urgency,
43
+ max_providers: maxProviders
44
+ });
45
+ }
46
+ /**
47
+ * Get Search Results
48
+ *
49
+ * Get results of a provider search
50
+ */
51
+ async getSearchResults(searchId) {
52
+ const path = `/provider-discovery/search/${searchId}`;
53
+ const uri = new URL(this.client.config.endpoint + path);
54
+ return await this.client.call("get", uri);
55
+ }
56
+ /**
57
+ * Track Provider Response
58
+ *
59
+ * Track when a provider responds to outreach
60
+ */
61
+ async trackProviderResponse(attemptId, providerId, taskId, responseType, message) {
62
+ const path = "/provider-discovery/track";
63
+ const uri = new URL(this.client.config.endpoint + path);
64
+ return await this.client.call("post", uri, {
65
+ "content-type": "application/json"
66
+ }, {
67
+ attempt_id: attemptId,
68
+ provider_id: providerId,
69
+ task_id: taskId,
70
+ response_type: responseType,
71
+ message
72
+ });
73
+ }
74
+ /**
75
+ * Get Conversion Stats
76
+ *
77
+ * Get provider conversion funnel statistics
78
+ */
79
+ async getConversionStats(searchId, startDate, endDate) {
80
+ const path = "/provider-discovery/stats";
81
+ const payload = {};
82
+ if (searchId)
83
+ payload.search_id = searchId;
84
+ if (startDate)
85
+ payload.start_date = startDate;
86
+ if (endDate)
87
+ payload.end_date = endDate;
88
+ const uri = new URL(this.client.config.endpoint + path);
89
+ return await this.client.call("get", uri, {}, payload);
90
+ }
91
+ };
92
+
93
+ export { EveAIProviderDiscovery };
94
+ //# sourceMappingURL=out.js.map
95
+ //# sourceMappingURL=eveai-provider-discovery.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/eveai-provider-discovery.ts"],"names":[],"mappings":";AAOO,IAAM,yBAAN,MAA6B;AAAA,EAGhC,YAAY,QAAgB;AACxB,SAAK,SAAS;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,uBACF,QACA,UACA,UACA,cAAsB,IACtB,aAAqB,IACW;AAChC,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG;AAAA,MACC,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,aAAa;AAAA,IACjB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,iBACF,UACA,QACA,UACA,eAAuB,IACU;AACjC,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG;AAAA,MACC,WAAW;AAAA,MACX,SAAS;AAAA,MACT,YAAY,SAAS;AAAA,MACrB,kBAAkB,SAAS;AAAA,MAC3B,eAAe,SAAS;AAAA,MACxB,eAAe,SAAS;AAAA,MACxB,iBAAiB,SAAS;AAAA,MAC1B,SAAS,SAAS;AAAA,MAClB,eAAe;AAAA,IACnB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,iBAAiB,UAAkD;AACrE,UAAM,OAAO,8BAA8B,QAAQ;AACnD,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,GAAG;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,sBACF,WACA,YACA,QACA,cACA,SACuB;AACvB,UAAM,OAAO;AACb,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,QAAQ,KAAK;AAAA,MACvC,gBAAgB;AAAA,IACpB,GAAG;AAAA,MACC,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,SAAS;AAAA,MACT,eAAe;AAAA,MACf;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,mBACF,UACA,WACA,SACgC;AAChC,UAAM,OAAO;AACb,UAAM,UAAe,CAAC;AACtB,QAAI;AAAU,cAAQ,YAAY;AAClC,QAAI;AAAW,cAAQ,aAAa;AACpC,QAAI;AAAS,cAAQ,WAAW;AAEhC,UAAM,MAAM,IAAI,IAAI,KAAK,OAAO,OAAO,WAAW,IAAI;AACtD,WAAO,MAAM,KAAK,OAAO,KAAK,OAAO,KAAK,CAAC,GAAG,OAAO;AAAA,EACzD;AACJ","sourcesContent":["import { Client } from '../client';\n\n/**\n * Eve.AI Provider Discovery Service\n * \n * AI-powered provider search and automated outreach\n */\nexport class EveAIProviderDiscovery {\n client: Client;\n\n constructor(client: Client) {\n this.client = client;\n }\n\n /**\n * Search Providers for Task\n * \n * Search web for local providers matching task requirements\n */\n async searchProvidersForTask(\n taskId: string,\n category: string,\n location: string,\n radiusMiles: number = 25,\n maxResults: number = 20\n ): Promise<SearchProvidersResponse> {\n const path = '/provider-discovery/search';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n task_id: taskId,\n category,\n location,\n radius_miles: radiusMiles,\n max_results: maxResults\n });\n }\n\n /**\n * Contact Providers\n * \n * Send automated outreach to discovered providers\n */\n async contactProviders(\n searchId: string,\n taskId: string,\n taskInfo: TaskOutreachInfo,\n maxProviders: number = 10\n ): Promise<ContactProvidersResponse> {\n const path = '/provider-discovery/contact';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n search_id: searchId,\n task_id: taskId,\n task_title: taskInfo.title,\n task_description: taskInfo.description,\n task_category: taskInfo.category,\n task_location: taskInfo.location,\n estimated_price: taskInfo.estimatedPrice,\n urgency: taskInfo.urgency,\n max_providers: maxProviders\n });\n }\n\n /**\n * Get Search Results\n * \n * Get results of a provider search\n */\n async getSearchResults(searchId: string): Promise<SearchResultsResponse> {\n const path = `/provider-discovery/search/${searchId}`;\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri);\n }\n\n /**\n * Track Provider Response\n * \n * Track when a provider responds to outreach\n */\n async trackProviderResponse(\n attemptId: string,\n providerId: string,\n taskId: string,\n responseType: string,\n message?: string\n ): Promise<StatusResponse> {\n const path = '/provider-discovery/track';\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('post', uri, {\n 'content-type': 'application/json',\n }, {\n attempt_id: attemptId,\n provider_id: providerId,\n task_id: taskId,\n response_type: responseType,\n message\n });\n }\n\n /**\n * Get Conversion Stats\n * \n * Get provider conversion funnel statistics\n */\n async getConversionStats(\n searchId?: string,\n startDate?: string,\n endDate?: string\n ): Promise<ConversionStatsResponse> {\n const path = '/provider-discovery/stats';\n const payload: any = {};\n if (searchId) payload.search_id = searchId;\n if (startDate) payload.start_date = startDate;\n if (endDate) payload.end_date = endDate;\n\n const uri = new URL(this.client.config.endpoint + path);\n return await this.client.call('get', uri, {}, payload);\n }\n}\n\n// Types\nexport interface TaskOutreachInfo {\n title: string;\n description: string;\n category: string;\n location: string;\n estimatedPrice: number;\n urgency: string;\n}\n\nexport interface SearchProvidersResponse {\n status_code: number;\n status_msg: string;\n search_id: string;\n providers: DiscoveredProvider[];\n}\n\nexport interface DiscoveredProvider {\n id: string;\n name: string;\n phone?: string;\n email?: string;\n website?: string;\n address: string;\n rating?: number;\n review_count: number;\n distance?: number;\n source: string;\n}\n\nexport interface ContactProvidersResponse {\n status_code: number;\n status_msg: string;\n providers_contacted: number;\n attempts: OutreachAttempt[];\n}\n\nexport interface OutreachAttempt {\n id: string;\n provider_id: string;\n method: string;\n status: string;\n}\n\nexport interface SearchResultsResponse {\n status_code: number;\n status_msg: string;\n search: SearchResult;\n}\n\nexport interface SearchResult {\n id: string;\n task_id: string;\n category: string;\n location: string;\n providers_found: number;\n providers_contacted: number;\n providers_responded: number;\n status: string;\n created_at: string;\n}\n\nexport interface StatusResponse {\n status_code: number;\n status_msg: string;\n}\n\nexport interface ConversionStatsResponse {\n status_code: number;\n stats: {\n total_searches: number;\n total_providers_found: number;\n total_contacted: number;\n total_clicked: number;\n total_downloaded: number;\n total_registered: number;\n total_active: number;\n conversion_rate: number;\n };\n}\n"]}