@elevasis/ui 2.27.0 → 2.28.1
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/api/index.js +2 -2
- package/dist/app/index.d.ts +6 -12
- package/dist/app/index.js +4 -4
- package/dist/charts/index.js +3 -3
- package/dist/{chunk-YO2YORW4.js → chunk-3HCTCMAS.js} +3 -3
- package/dist/{chunk-LWKZ3BCC.js → chunk-5R27NFOI.js} +4 -4
- package/dist/{chunk-JPGX3533.js → chunk-AYSO5A3R.js} +2 -2
- package/dist/{chunk-ONFKASZI.js → chunk-CT5IR4ZA.js} +1 -1
- package/dist/{chunk-RIFTUOPE.js → chunk-GJXAAYZ3.js} +1 -1
- package/dist/{chunk-OGXKOMUT.js → chunk-HNN3QALL.js} +2 -2
- package/dist/{chunk-KEFWANZY.js → chunk-JCGD4GM6.js} +5 -1
- package/dist/chunk-JS7VBTC4.js +250 -0
- package/dist/{chunk-G66QFZXD.js → chunk-K4Q5QUHZ.js} +15 -9
- package/dist/{chunk-UPMX5GJI.js → chunk-M6OJ43NL.js} +32 -5
- package/dist/{chunk-WUVR4QY6.js → chunk-MCRKFDKB.js} +4 -4
- package/dist/{chunk-ZFLM2YVW.js → chunk-MJMFIWEB.js} +1 -1
- package/dist/{chunk-G26INIF3.js → chunk-MZCDRBSI.js} +1 -1
- package/dist/{chunk-YHBPR67D.js → chunk-N63RKL3L.js} +4 -4
- package/dist/{chunk-W2ZTLH7Y.js → chunk-NU5FNTOB.js} +29 -21
- package/dist/{chunk-OHXU5WWK.js → chunk-PBNIW7KV.js} +12 -6
- package/dist/{chunk-QD4X4H5A.js → chunk-SRNIHB7Y.js} +1 -1
- package/dist/{chunk-XZSEPJZQ.js → chunk-TVJROM2V.js} +5 -5
- package/dist/{chunk-JKBGDFX2.js → chunk-UOHOKDKL.js} +378 -254
- package/dist/{chunk-UY5I2KOZ.js → chunk-YNYGUVGW.js} +8 -8
- package/dist/{chunk-SGS4CQ2B.js → chunk-ZPXV5KI3.js} +1 -1
- package/dist/components/index.d.ts +16 -14
- package/dist/components/index.js +25 -25
- package/dist/features/auth/index.d.ts +6 -12
- package/dist/features/auth/index.js +1 -0
- package/dist/features/crm/index.d.ts +16 -14
- package/dist/features/crm/index.js +9 -9
- package/dist/features/dashboard/index.d.ts +16 -3
- package/dist/features/dashboard/index.js +10 -10
- package/dist/features/delivery/index.d.ts +6 -12
- package/dist/features/delivery/index.js +9 -9
- package/dist/features/knowledge/index.js +20 -12
- package/dist/features/lead-gen/index.d.ts +171 -24
- package/dist/features/lead-gen/index.js +10 -10
- package/dist/features/monitoring/index.js +11 -11
- package/dist/features/monitoring/requests/index.js +8 -8
- package/dist/features/operations/index.d.ts +16 -3
- package/dist/features/operations/index.js +15 -15
- package/dist/features/settings/index.d.ts +6 -12
- package/dist/features/settings/index.js +9 -9
- package/dist/hooks/delivery/index.d.ts +6 -12
- package/dist/hooks/delivery/index.js +2 -2
- package/dist/hooks/index.d.ts +110 -28
- package/dist/hooks/index.js +8 -8
- package/dist/hooks/published.d.ts +110 -28
- package/dist/hooks/published.js +8 -8
- package/dist/index.d.ts +148 -28
- package/dist/index.js +8 -8
- package/dist/initialization/index.d.ts +6 -12
- package/dist/knowledge/index.d.ts +43 -0
- package/dist/knowledge/index.js +49 -12
- package/dist/profile/index.d.ts +6 -12
- package/dist/provider/index.d.ts +44 -12
- package/dist/provider/index.js +6 -6
- package/dist/provider/published.d.ts +44 -12
- package/dist/provider/published.js +5 -5
- package/dist/supabase/index.d.ts +12 -24
- package/dist/test-utils/index.js +2 -2
- package/dist/typeform/index.d.ts +5 -1
- package/dist/typeform/index.js +52 -7
- package/dist/types/index.d.ts +7 -13
- package/dist/utils/index.js +1 -1
- package/package.json +5 -5
- package/dist/chunk-4KTLOK7K.js +0 -230
package/dist/typeform/index.js
CHANGED
|
@@ -1326,7 +1326,14 @@ function useTypeformContext() {
|
|
|
1326
1326
|
}
|
|
1327
1327
|
return context;
|
|
1328
1328
|
}
|
|
1329
|
-
function TypeformSurvey({
|
|
1329
|
+
function TypeformSurvey({
|
|
1330
|
+
config,
|
|
1331
|
+
className,
|
|
1332
|
+
styles,
|
|
1333
|
+
hideProgress,
|
|
1334
|
+
mode = "paginated",
|
|
1335
|
+
renderPageSection
|
|
1336
|
+
}) {
|
|
1330
1337
|
const typeform = useTypeform(config);
|
|
1331
1338
|
const {
|
|
1332
1339
|
currentPage,
|
|
@@ -1614,6 +1621,7 @@ function TypeformSurvey({ config, className, styles, hideProgress }) {
|
|
|
1614
1621
|
const handleKeyDown = useCallback(
|
|
1615
1622
|
(e) => {
|
|
1616
1623
|
if (isComplete) return;
|
|
1624
|
+
if (mode === "all") return;
|
|
1617
1625
|
if (e.key === "Enter" && !e.shiftKey) {
|
|
1618
1626
|
const activeElement = document.activeElement;
|
|
1619
1627
|
if (activeElement?.tagName === "TEXTAREA") return;
|
|
@@ -1663,7 +1671,19 @@ function TypeformSurvey({ config, className, styles, hideProgress }) {
|
|
|
1663
1671
|
}
|
|
1664
1672
|
}
|
|
1665
1673
|
},
|
|
1666
|
-
[
|
|
1674
|
+
[
|
|
1675
|
+
currentPage,
|
|
1676
|
+
answers,
|
|
1677
|
+
isLastPage,
|
|
1678
|
+
isComplete,
|
|
1679
|
+
canProceed,
|
|
1680
|
+
isMultiQuestion,
|
|
1681
|
+
mode,
|
|
1682
|
+
next,
|
|
1683
|
+
submit,
|
|
1684
|
+
setAnswer,
|
|
1685
|
+
mergedTheme
|
|
1686
|
+
]
|
|
1667
1687
|
);
|
|
1668
1688
|
useEffect(() => {
|
|
1669
1689
|
window.addEventListener("keydown", handleKeyDown);
|
|
@@ -1671,8 +1691,9 @@ function TypeformSurvey({ config, className, styles, hideProgress }) {
|
|
|
1671
1691
|
}, [handleKeyDown]);
|
|
1672
1692
|
useEffect(() => {
|
|
1673
1693
|
if (typeof window === "undefined") return;
|
|
1694
|
+
if (mode === "all") return;
|
|
1674
1695
|
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
|
|
1675
|
-
}, [currentPageIndex]);
|
|
1696
|
+
}, [currentPageIndex, mode]);
|
|
1676
1697
|
if (isComplete) {
|
|
1677
1698
|
return /* @__PURE__ */ jsx(Box, { className, style: styles?.container, children: /* @__PURE__ */ jsx(
|
|
1678
1699
|
Center,
|
|
@@ -1720,9 +1741,33 @@ function TypeformSurvey({ config, className, styles, hideProgress }) {
|
|
|
1720
1741
|
...styles?.container
|
|
1721
1742
|
},
|
|
1722
1743
|
children: [
|
|
1723
|
-
!hideProgress && /* @__PURE__ */ jsx(TypeformProgress, { current: currentPageIndex + 1, total: pages.length, usePortal: true }),
|
|
1744
|
+
!hideProgress && mode !== "all" && /* @__PURE__ */ jsx(TypeformProgress, { current: currentPageIndex + 1, total: pages.length, usePortal: true }),
|
|
1724
1745
|
errors._form && /* @__PURE__ */ jsx(Box, { px: "xl", pt: "md", children: /* @__PURE__ */ jsx(Alert, { color: "red", variant: "light", title: "Submission Error", children: errors._form }) }),
|
|
1725
|
-
|
|
1746
|
+
mode === "all" ? /* @__PURE__ */ jsx(Fragment, { children: pages.map((page, idx) => {
|
|
1747
|
+
const wrapper = /* @__PURE__ */ jsx(
|
|
1748
|
+
TypeformPageWrapper,
|
|
1749
|
+
{
|
|
1750
|
+
page,
|
|
1751
|
+
pageNumber: idx + 1,
|
|
1752
|
+
isActive: true,
|
|
1753
|
+
direction: "forward",
|
|
1754
|
+
theme: mergedTheme,
|
|
1755
|
+
compact: isCompact,
|
|
1756
|
+
styles: {
|
|
1757
|
+
// Override minHeight so each section doesn't force full viewport height
|
|
1758
|
+
question: { minHeight: "auto", paddingTop: "var(--mantine-spacing-xl)", ...styles?.question },
|
|
1759
|
+
questionNumber: styles?.questionNumber,
|
|
1760
|
+
questionTitle: styles?.questionTitle,
|
|
1761
|
+
questionDescription: styles?.questionDescription,
|
|
1762
|
+
error: styles?.error
|
|
1763
|
+
},
|
|
1764
|
+
errors,
|
|
1765
|
+
renderField
|
|
1766
|
+
},
|
|
1767
|
+
page.id
|
|
1768
|
+
);
|
|
1769
|
+
return renderPageSection ? renderPageSection(page, wrapper) : wrapper;
|
|
1770
|
+
}) }) : currentPage && /* @__PURE__ */ jsx(
|
|
1726
1771
|
TypeformPageWrapper,
|
|
1727
1772
|
{
|
|
1728
1773
|
page: currentPage,
|
|
@@ -1748,9 +1793,9 @@ function TypeformSurvey({ config, className, styles, hideProgress }) {
|
|
|
1748
1793
|
onBack: back,
|
|
1749
1794
|
onNext: next,
|
|
1750
1795
|
onSubmit: submit,
|
|
1751
|
-
canGoBack: !isFirstPage,
|
|
1796
|
+
canGoBack: mode === "all" ? false : !isFirstPage,
|
|
1752
1797
|
canGoNext: canProceed,
|
|
1753
|
-
isLastQuestion: isLastPage,
|
|
1798
|
+
isLastQuestion: mode === "all" ? true : isLastPage,
|
|
1754
1799
|
isSubmitting,
|
|
1755
1800
|
terminationAction: config.terminationAction,
|
|
1756
1801
|
onTerminate: terminateAndSubmit
|
package/dist/types/index.d.ts
CHANGED
|
@@ -600,7 +600,7 @@ type Database = {
|
|
|
600
600
|
name: string;
|
|
601
601
|
num_employees: number | null;
|
|
602
602
|
organization_id: string;
|
|
603
|
-
|
|
603
|
+
processing_state: Json;
|
|
604
604
|
qualification_rubric_key: string | null;
|
|
605
605
|
qualification_score: number | null;
|
|
606
606
|
qualification_signals: Json | null;
|
|
@@ -626,7 +626,7 @@ type Database = {
|
|
|
626
626
|
name: string;
|
|
627
627
|
num_employees?: number | null;
|
|
628
628
|
organization_id: string;
|
|
629
|
-
|
|
629
|
+
processing_state?: Json;
|
|
630
630
|
qualification_rubric_key?: string | null;
|
|
631
631
|
qualification_score?: number | null;
|
|
632
632
|
qualification_signals?: Json | null;
|
|
@@ -652,7 +652,7 @@ type Database = {
|
|
|
652
652
|
name?: string;
|
|
653
653
|
num_employees?: number | null;
|
|
654
654
|
organization_id?: string;
|
|
655
|
-
|
|
655
|
+
processing_state?: Json;
|
|
656
656
|
qualification_rubric_key?: string | null;
|
|
657
657
|
qualification_score?: number | null;
|
|
658
658
|
qualification_signals?: Json | null;
|
|
@@ -691,7 +691,7 @@ type Database = {
|
|
|
691
691
|
nurture: boolean;
|
|
692
692
|
opening_line: string | null;
|
|
693
693
|
organization_id: string;
|
|
694
|
-
|
|
694
|
+
processing_state: Json;
|
|
695
695
|
qualification_rubric_key: string | null;
|
|
696
696
|
qualification_score: number | null;
|
|
697
697
|
qualification_signals: Json | null;
|
|
@@ -719,7 +719,7 @@ type Database = {
|
|
|
719
719
|
nurture?: boolean;
|
|
720
720
|
opening_line?: string | null;
|
|
721
721
|
organization_id: string;
|
|
722
|
-
|
|
722
|
+
processing_state?: Json;
|
|
723
723
|
qualification_rubric_key?: string | null;
|
|
724
724
|
qualification_score?: number | null;
|
|
725
725
|
qualification_signals?: Json | null;
|
|
@@ -747,7 +747,7 @@ type Database = {
|
|
|
747
747
|
nurture?: boolean;
|
|
748
748
|
opening_line?: string | null;
|
|
749
749
|
organization_id?: string;
|
|
750
|
-
|
|
750
|
+
processing_state?: Json;
|
|
751
751
|
qualification_rubric_key?: string | null;
|
|
752
752
|
qualification_score?: number | null;
|
|
753
753
|
qualification_signals?: Json | null;
|
|
@@ -1143,7 +1143,6 @@ type Database = {
|
|
|
1143
1143
|
id: string;
|
|
1144
1144
|
list_id: string;
|
|
1145
1145
|
pipeline_key: string;
|
|
1146
|
-
processing_state: Json;
|
|
1147
1146
|
source_execution_id: string | null;
|
|
1148
1147
|
source_input_hash: string | null;
|
|
1149
1148
|
source_resource_id: string | null;
|
|
@@ -1158,7 +1157,6 @@ type Database = {
|
|
|
1158
1157
|
id?: string;
|
|
1159
1158
|
list_id: string;
|
|
1160
1159
|
pipeline_key?: string;
|
|
1161
|
-
processing_state?: Json;
|
|
1162
1160
|
source_execution_id?: string | null;
|
|
1163
1161
|
source_input_hash?: string | null;
|
|
1164
1162
|
source_resource_id?: string | null;
|
|
@@ -1173,7 +1171,6 @@ type Database = {
|
|
|
1173
1171
|
id?: string;
|
|
1174
1172
|
list_id?: string;
|
|
1175
1173
|
pipeline_key?: string;
|
|
1176
|
-
processing_state?: Json;
|
|
1177
1174
|
source_execution_id?: string | null;
|
|
1178
1175
|
source_input_hash?: string | null;
|
|
1179
1176
|
source_resource_id?: string | null;
|
|
@@ -1252,7 +1249,6 @@ type Database = {
|
|
|
1252
1249
|
id: string;
|
|
1253
1250
|
list_id: string;
|
|
1254
1251
|
pipeline_key: string;
|
|
1255
|
-
processing_state: Json;
|
|
1256
1252
|
source_execution_id: string | null;
|
|
1257
1253
|
source_input_hash: string | null;
|
|
1258
1254
|
source_resource_id: string | null;
|
|
@@ -1267,7 +1263,6 @@ type Database = {
|
|
|
1267
1263
|
id?: string;
|
|
1268
1264
|
list_id: string;
|
|
1269
1265
|
pipeline_key?: string;
|
|
1270
|
-
processing_state?: Json;
|
|
1271
1266
|
source_execution_id?: string | null;
|
|
1272
1267
|
source_input_hash?: string | null;
|
|
1273
1268
|
source_resource_id?: string | null;
|
|
@@ -1282,7 +1277,6 @@ type Database = {
|
|
|
1282
1277
|
id?: string;
|
|
1283
1278
|
list_id?: string;
|
|
1284
1279
|
pipeline_key?: string;
|
|
1285
|
-
processing_state?: Json;
|
|
1286
1280
|
source_execution_id?: string | null;
|
|
1287
1281
|
source_input_hash?: string | null;
|
|
1288
1282
|
source_resource_id?: string | null;
|
|
@@ -3534,7 +3528,7 @@ interface DealContact {
|
|
|
3534
3528
|
title: string | null;
|
|
3535
3529
|
headline: string | null;
|
|
3536
3530
|
linkedin_url: string | null;
|
|
3537
|
-
|
|
3531
|
+
processing_state: Record<string, unknown> | null;
|
|
3538
3532
|
enrichment_data: Record<string, unknown> | null;
|
|
3539
3533
|
company: {
|
|
3540
3534
|
id: string;
|
package/dist/utils/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { APIClientError, API_URL, DEBOUNCE_FILTER, DEBOUNCE_SLIDER, GC_TIME_LONG, GC_TIME_MEDIUM, GC_TIME_SHORT, LIMIT_ACTIVITY_FEED, OAUTH_FLOW_TIMEOUT, OAUTH_POPUP_CHECK_INTERVAL, PAGE_SIZE_DEFAULT, REFETCH_INTERVAL_DASHBOARD, REFETCH_INTERVAL_REALTIME, REFETCH_INTERVAL_RUNNING, REFETCH_INTERVAL_RUNNING_FAST, SSE_CLOSE_GRACE_PERIOD, SSE_TOKEN_REFRESH_DELAY, STALE_TIME_ADMIN, STALE_TIME_DEFAULT, STALE_TIME_MONITORING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, debounce, formatChartAxisDate, formatDate, formatDateTime, formatErrorMessage, formatRelativeTime, formatTimeAgo, getErrorInfo, getErrorTitle, getResourceColor, getResourceIcon, getTimeRangeDates, getTimeRangeLabel, isAPIClientError, restoreConsole, setupBrowserMocks, suppressKnownWarnings, validateEmail } from '../chunk-
|
|
1
|
+
export { APIClientError, API_URL, DEBOUNCE_FILTER, DEBOUNCE_SLIDER, GC_TIME_LONG, GC_TIME_MEDIUM, GC_TIME_SHORT, LIMIT_ACTIVITY_FEED, OAUTH_FLOW_TIMEOUT, OAUTH_POPUP_CHECK_INTERVAL, PAGE_SIZE_DEFAULT, REFETCH_INTERVAL_DASHBOARD, REFETCH_INTERVAL_REALTIME, REFETCH_INTERVAL_RUNNING, REFETCH_INTERVAL_RUNNING_FAST, SSE_CLOSE_GRACE_PERIOD, SSE_TOKEN_REFRESH_DELAY, STALE_TIME_ADMIN, STALE_TIME_DEFAULT, STALE_TIME_MONITORING, WS_MAX_RETRIES_BEFORE_ERROR, WS_RECONNECT_BASE_DELAY, WS_RECONNECT_MAX_DELAY, debounce, formatChartAxisDate, formatDate, formatDateTime, formatErrorMessage, formatRelativeTime, formatTimeAgo, getErrorInfo, getErrorTitle, getResourceColor, getResourceIcon, getTimeRangeDates, getTimeRangeLabel, isAPIClientError, restoreConsole, setupBrowserMocks, suppressKnownWarnings, validateEmail } from '../chunk-SRNIHB7Y.js';
|
|
2
2
|
export { ResourceStatusColors } from '../chunk-KRWALB24.js';
|
|
3
3
|
import '../chunk-I2KLQ2HA.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elevasis/ui",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.28.1",
|
|
4
4
|
"description": "UI components and platform-aware hooks for building custom frontends on the Elevasis platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -247,11 +247,11 @@
|
|
|
247
247
|
"@testing-library/jest-dom": "^6.9.1",
|
|
248
248
|
"msw": "^2.11.0",
|
|
249
249
|
"vitest": "^3.2.4",
|
|
250
|
-
"@elevasis/sdk": "1.
|
|
250
|
+
"@elevasis/sdk": "1.18.0",
|
|
251
|
+
"@repo/core": "0.19.0",
|
|
251
252
|
"@repo/typescript-config": "0.0.0",
|
|
252
|
-
"@repo/
|
|
253
|
-
"@repo/elevasis-core": "1.0.0"
|
|
254
|
-
"@repo/eslint-config": "0.0.0"
|
|
253
|
+
"@repo/eslint-config": "0.0.0",
|
|
254
|
+
"@repo/elevasis-core": "1.0.0"
|
|
255
255
|
},
|
|
256
256
|
"dependencies": {
|
|
257
257
|
"@dagrejs/dagre": "^1.1.4",
|
package/dist/chunk-4KTLOK7K.js
DELETED
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
import { DisplayMetadataSchema, ModelIdSchema, DescriptionSchema } from './chunk-W2ZTLH7Y.js';
|
|
2
|
-
import { z } from 'zod';
|
|
3
|
-
|
|
4
|
-
var ProspectingLifecycleStageSchema = DisplayMetadataSchema.extend({
|
|
5
|
-
id: ModelIdSchema,
|
|
6
|
-
order: z.number().int().min(0)
|
|
7
|
-
});
|
|
8
|
-
var ProspectingBuildTemplateStepSchema = DisplayMetadataSchema.extend({
|
|
9
|
-
id: ModelIdSchema,
|
|
10
|
-
primaryEntity: z.enum(["company", "contact"]),
|
|
11
|
-
outputs: z.array(z.enum(["company", "contact", "export"])).min(1),
|
|
12
|
-
stageKey: ModelIdSchema,
|
|
13
|
-
dependsOn: z.array(ModelIdSchema).optional(),
|
|
14
|
-
dependencyMode: z.literal("per-record-eligibility"),
|
|
15
|
-
capabilityKey: ModelIdSchema,
|
|
16
|
-
defaultBatchSize: z.number().int().positive(),
|
|
17
|
-
maxBatchSize: z.number().int().positive()
|
|
18
|
-
}).refine((step) => step.defaultBatchSize <= step.maxBatchSize, {
|
|
19
|
-
message: "defaultBatchSize must be less than or equal to maxBatchSize",
|
|
20
|
-
path: ["defaultBatchSize"]
|
|
21
|
-
});
|
|
22
|
-
var ProspectingBuildTemplateSchema = DisplayMetadataSchema.extend({
|
|
23
|
-
id: ModelIdSchema,
|
|
24
|
-
steps: z.array(ProspectingBuildTemplateStepSchema).min(1)
|
|
25
|
-
});
|
|
26
|
-
var OrganizationModelProspectingSchema = z.object({
|
|
27
|
-
listEntityId: ModelIdSchema,
|
|
28
|
-
companyEntityId: ModelIdSchema,
|
|
29
|
-
contactEntityId: ModelIdSchema,
|
|
30
|
-
description: DescriptionSchema.optional(),
|
|
31
|
-
companyStages: z.array(ProspectingLifecycleStageSchema).min(1),
|
|
32
|
-
contactStages: z.array(ProspectingLifecycleStageSchema).min(1),
|
|
33
|
-
defaultBuildTemplateId: ModelIdSchema,
|
|
34
|
-
buildTemplates: z.array(ProspectingBuildTemplateSchema).min(1)
|
|
35
|
-
});
|
|
36
|
-
var DEFAULT_ORGANIZATION_MODEL_PROSPECTING = {
|
|
37
|
-
listEntityId: "leadgen.list",
|
|
38
|
-
companyEntityId: "leadgen.company",
|
|
39
|
-
contactEntityId: "leadgen.contact",
|
|
40
|
-
companyStages: [
|
|
41
|
-
{ id: "populated", label: "Populated", order: 1 },
|
|
42
|
-
{ id: "extracted", label: "Extracted", order: 2 },
|
|
43
|
-
{ id: "qualified", label: "Qualified", order: 3 }
|
|
44
|
-
],
|
|
45
|
-
contactStages: [
|
|
46
|
-
{ id: "discovered", label: "Discovered", order: 1 },
|
|
47
|
-
{ id: "verified", label: "Verified", order: 2 },
|
|
48
|
-
{ id: "personalized", label: "Personalized", order: 3 },
|
|
49
|
-
{ id: "uploaded", label: "Uploaded", order: 4 }
|
|
50
|
-
],
|
|
51
|
-
defaultBuildTemplateId: "local-services",
|
|
52
|
-
buildTemplates: [
|
|
53
|
-
{
|
|
54
|
-
id: "local-services",
|
|
55
|
-
label: "Local Services Prospecting",
|
|
56
|
-
description: "Curated local-services list build using company sourcing, website analysis, qualification, contact discovery, verification, personalization, and review.",
|
|
57
|
-
steps: [
|
|
58
|
-
{
|
|
59
|
-
id: "source-companies",
|
|
60
|
-
label: "Source companies",
|
|
61
|
-
primaryEntity: "company",
|
|
62
|
-
outputs: ["company"],
|
|
63
|
-
stageKey: "populated",
|
|
64
|
-
dependencyMode: "per-record-eligibility",
|
|
65
|
-
capabilityKey: "lead-gen.company.source",
|
|
66
|
-
defaultBatchSize: 100,
|
|
67
|
-
maxBatchSize: 250
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
id: "analyze-websites",
|
|
71
|
-
label: "Analyze websites",
|
|
72
|
-
primaryEntity: "company",
|
|
73
|
-
outputs: ["company"],
|
|
74
|
-
stageKey: "extracted",
|
|
75
|
-
dependsOn: ["source-companies"],
|
|
76
|
-
dependencyMode: "per-record-eligibility",
|
|
77
|
-
capabilityKey: "lead-gen.company.website-extract",
|
|
78
|
-
defaultBatchSize: 50,
|
|
79
|
-
maxBatchSize: 100
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
id: "qualify-companies",
|
|
83
|
-
label: "Qualify companies",
|
|
84
|
-
primaryEntity: "company",
|
|
85
|
-
outputs: ["company"],
|
|
86
|
-
stageKey: "qualified",
|
|
87
|
-
dependsOn: ["analyze-websites"],
|
|
88
|
-
dependencyMode: "per-record-eligibility",
|
|
89
|
-
capabilityKey: "lead-gen.company.qualify",
|
|
90
|
-
defaultBatchSize: 100,
|
|
91
|
-
maxBatchSize: 250
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
id: "find-contacts",
|
|
95
|
-
label: "Find contacts",
|
|
96
|
-
primaryEntity: "contact",
|
|
97
|
-
outputs: ["contact"],
|
|
98
|
-
stageKey: "discovered",
|
|
99
|
-
dependsOn: ["qualify-companies"],
|
|
100
|
-
dependencyMode: "per-record-eligibility",
|
|
101
|
-
capabilityKey: "lead-gen.contact.discover",
|
|
102
|
-
defaultBatchSize: 50,
|
|
103
|
-
maxBatchSize: 100
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
id: "verify-emails",
|
|
107
|
-
label: "Verify emails",
|
|
108
|
-
primaryEntity: "contact",
|
|
109
|
-
outputs: ["contact"],
|
|
110
|
-
stageKey: "verified",
|
|
111
|
-
dependsOn: ["find-contacts"],
|
|
112
|
-
dependencyMode: "per-record-eligibility",
|
|
113
|
-
capabilityKey: "lead-gen.contact.verify-email",
|
|
114
|
-
defaultBatchSize: 100,
|
|
115
|
-
maxBatchSize: 500
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
id: "personalize",
|
|
119
|
-
label: "Personalize",
|
|
120
|
-
primaryEntity: "contact",
|
|
121
|
-
outputs: ["contact"],
|
|
122
|
-
stageKey: "personalized",
|
|
123
|
-
dependsOn: ["verify-emails"],
|
|
124
|
-
dependencyMode: "per-record-eligibility",
|
|
125
|
-
capabilityKey: "lead-gen.contact.personalize",
|
|
126
|
-
defaultBatchSize: 25,
|
|
127
|
-
maxBatchSize: 100
|
|
128
|
-
},
|
|
129
|
-
{
|
|
130
|
-
id: "review",
|
|
131
|
-
label: "Review",
|
|
132
|
-
primaryEntity: "contact",
|
|
133
|
-
outputs: ["export"],
|
|
134
|
-
stageKey: "uploaded",
|
|
135
|
-
dependsOn: ["personalize"],
|
|
136
|
-
dependencyMode: "per-record-eligibility",
|
|
137
|
-
capabilityKey: "lead-gen.review.outreach-ready",
|
|
138
|
-
defaultBatchSize: 25,
|
|
139
|
-
maxBatchSize: 100
|
|
140
|
-
}
|
|
141
|
-
]
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
id: "dtc-subscription-apollo-clickup",
|
|
145
|
-
label: "DTC Subscription Apollo Export",
|
|
146
|
-
description: "Prospecting pipeline for DTC subscription or subscription-ready brands where Apollo is the source and contact-enrichment layer, Elevasis handles company research and fit scoring, and approved leads export as an approved lead list.",
|
|
147
|
-
steps: [
|
|
148
|
-
{
|
|
149
|
-
id: "import-apollo-search",
|
|
150
|
-
label: "Import Apollo search",
|
|
151
|
-
description: "Pull companies and seed contact data from a predefined Apollo search or list.",
|
|
152
|
-
primaryEntity: "company",
|
|
153
|
-
outputs: ["company", "contact"],
|
|
154
|
-
stageKey: "populated",
|
|
155
|
-
dependencyMode: "per-record-eligibility",
|
|
156
|
-
capabilityKey: "lead-gen.company.apollo-import",
|
|
157
|
-
defaultBatchSize: 250,
|
|
158
|
-
maxBatchSize: 1e3
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
id: "analyze-websites",
|
|
162
|
-
label: "Analyze websites",
|
|
163
|
-
description: "Extract subscription, product, retention, and tech-stack signals from each brand website.",
|
|
164
|
-
primaryEntity: "company",
|
|
165
|
-
outputs: ["company"],
|
|
166
|
-
stageKey: "extracted",
|
|
167
|
-
dependsOn: ["import-apollo-search"],
|
|
168
|
-
dependencyMode: "per-record-eligibility",
|
|
169
|
-
capabilityKey: "lead-gen.company.website-extract",
|
|
170
|
-
defaultBatchSize: 50,
|
|
171
|
-
maxBatchSize: 100
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
id: "score-dtc-fit",
|
|
175
|
-
label: "Score DTC fit",
|
|
176
|
-
description: "Classify subscription potential, consumable-product fit, retention maturity, and disqualifiers.",
|
|
177
|
-
primaryEntity: "company",
|
|
178
|
-
outputs: ["company"],
|
|
179
|
-
stageKey: "qualified",
|
|
180
|
-
dependsOn: ["analyze-websites"],
|
|
181
|
-
dependencyMode: "per-record-eligibility",
|
|
182
|
-
capabilityKey: "lead-gen.company.dtc-subscription-qualify",
|
|
183
|
-
defaultBatchSize: 100,
|
|
184
|
-
maxBatchSize: 250
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
id: "enrich-decision-makers",
|
|
188
|
-
label: "Enrich decision-makers",
|
|
189
|
-
description: "Use Apollo to find qualified contacts such as founders, retention leads, lifecycle leads, and marketing owners.",
|
|
190
|
-
primaryEntity: "contact",
|
|
191
|
-
outputs: ["contact"],
|
|
192
|
-
stageKey: "discovered",
|
|
193
|
-
dependsOn: ["score-dtc-fit"],
|
|
194
|
-
dependencyMode: "per-record-eligibility",
|
|
195
|
-
capabilityKey: "lead-gen.contact.apollo-decision-maker-enrich",
|
|
196
|
-
defaultBatchSize: 100,
|
|
197
|
-
maxBatchSize: 250
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
id: "verify-emails",
|
|
201
|
-
label: "Verify emails",
|
|
202
|
-
description: "Verify deliverability before the QC and handoff step.",
|
|
203
|
-
primaryEntity: "contact",
|
|
204
|
-
outputs: ["contact"],
|
|
205
|
-
stageKey: "verified",
|
|
206
|
-
dependsOn: ["enrich-decision-makers"],
|
|
207
|
-
dependencyMode: "per-record-eligibility",
|
|
208
|
-
capabilityKey: "lead-gen.contact.verify-email",
|
|
209
|
-
defaultBatchSize: 250,
|
|
210
|
-
maxBatchSize: 500
|
|
211
|
-
},
|
|
212
|
-
{
|
|
213
|
-
id: "review-and-export",
|
|
214
|
-
label: "Review and export",
|
|
215
|
-
description: "Operator QC approves or rejects leads, then approved records are exported as a lead list.",
|
|
216
|
-
primaryEntity: "company",
|
|
217
|
-
outputs: ["export"],
|
|
218
|
-
stageKey: "uploaded",
|
|
219
|
-
dependsOn: ["verify-emails"],
|
|
220
|
-
dependencyMode: "per-record-eligibility",
|
|
221
|
-
capabilityKey: "lead-gen.export.list",
|
|
222
|
-
defaultBatchSize: 100,
|
|
223
|
-
maxBatchSize: 250
|
|
224
|
-
}
|
|
225
|
-
]
|
|
226
|
-
}
|
|
227
|
-
]
|
|
228
|
-
};
|
|
229
|
-
|
|
230
|
-
export { DEFAULT_ORGANIZATION_MODEL_PROSPECTING, OrganizationModelProspectingSchema };
|