@jterrats/smart-deployment 1.0.3 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. package/LICENSE +29 -0
  2. package/README.md +6 -0
  3. package/lib/ai/wave-validation-service.d.ts +21 -0
  4. package/lib/ai/wave-validation-service.js +189 -114
  5. package/lib/ai/wave-validation-service.js.map +1 -1
  6. package/lib/analysis/analysis-reporter.d.ts +12 -0
  7. package/lib/analysis/analysis-reporter.js +61 -0
  8. package/lib/analysis/analysis-reporter.js.map +1 -1
  9. package/lib/analysis/analyze-artifact-service.d.ts +25 -0
  10. package/lib/analysis/analyze-artifact-service.js +50 -0
  11. package/lib/analysis/analyze-artifact-service.js.map +1 -0
  12. package/lib/analysis/analyze-context-service.d.ts +25 -0
  13. package/lib/analysis/analyze-context-service.js +28 -0
  14. package/lib/analysis/analyze-context-service.js.map +1 -0
  15. package/lib/analysis/project-analysis-service.d.ts +48 -0
  16. package/lib/analysis/project-analysis-service.js +134 -0
  17. package/lib/analysis/project-analysis-service.js.map +1 -0
  18. package/lib/commands/analyze.d.ts +0 -2
  19. package/lib/commands/analyze.js +31 -162
  20. package/lib/commands/analyze.js.map +1 -1
  21. package/lib/commands/config.d.ts +0 -4
  22. package/lib/commands/config.js +25 -95
  23. package/lib/commands/config.js.map +1 -1
  24. package/lib/commands/resume.js +6 -16
  25. package/lib/commands/resume.js.map +1 -1
  26. package/lib/commands/start.d.ts +0 -11
  27. package/lib/commands/start.js +38 -550
  28. package/lib/commands/start.js.map +1 -1
  29. package/lib/commands/status.js +36 -12
  30. package/lib/commands/status.js.map +1 -1
  31. package/lib/commands/validate.d.ts +3 -0
  32. package/lib/commands/validate.js +5 -7
  33. package/lib/commands/validate.js.map +1 -1
  34. package/lib/config/config-mutation-service.d.ts +21 -0
  35. package/lib/config/config-mutation-service.js +61 -0
  36. package/lib/config/config-mutation-service.js.map +1 -0
  37. package/lib/dependencies/circular-dependency-detector.d.ts +5 -0
  38. package/lib/dependencies/circular-dependency-detector.js +67 -72
  39. package/lib/dependencies/circular-dependency-detector.js.map +1 -1
  40. package/lib/dependencies/dependency-depth-calculator.d.ts +28 -0
  41. package/lib/dependencies/dependency-depth-calculator.js +86 -39
  42. package/lib/dependencies/dependency-depth-calculator.js.map +1 -1
  43. package/lib/dependencies/dependency-graph-builder.d.ts +45 -13
  44. package/lib/dependencies/dependency-graph-builder.js +228 -123
  45. package/lib/dependencies/dependency-graph-builder.js.map +1 -1
  46. package/lib/dependencies/dependency-impact-analyzer.d.ts +13 -0
  47. package/lib/dependencies/dependency-impact-analyzer.js +146 -102
  48. package/lib/dependencies/dependency-impact-analyzer.js.map +1 -1
  49. package/lib/dependencies/dependency-merger.d.ts +10 -0
  50. package/lib/dependencies/dependency-merger.js +123 -61
  51. package/lib/dependencies/dependency-merger.js.map +1 -1
  52. package/lib/dependencies/dependency-resolver.d.ts +34 -9
  53. package/lib/dependencies/dependency-resolver.js +181 -112
  54. package/lib/dependencies/dependency-resolver.js.map +1 -1
  55. package/lib/dependencies/dependency-semantics.d.ts +20 -0
  56. package/lib/dependencies/dependency-semantics.js +55 -0
  57. package/lib/dependencies/dependency-semantics.js.map +1 -0
  58. package/lib/dependencies/graph-visualizer.d.ts +6 -1
  59. package/lib/dependencies/graph-visualizer.js +38 -4
  60. package/lib/dependencies/graph-visualizer.js.map +1 -1
  61. package/lib/dependencies/heuristic-inference.d.ts +2 -53
  62. package/lib/dependencies/heuristic-inference.js +8 -317
  63. package/lib/dependencies/heuristic-inference.js.map +1 -1
  64. package/lib/dependencies/heuristic-patterns.d.ts +14 -0
  65. package/lib/dependencies/heuristic-patterns.js +247 -0
  66. package/lib/dependencies/heuristic-patterns.js.map +1 -0
  67. package/lib/deployment/cycle-remediation-runner.d.ts +36 -0
  68. package/lib/deployment/cycle-remediation-runner.js +262 -0
  69. package/lib/deployment/cycle-remediation-runner.js.map +1 -0
  70. package/lib/deployment/deployment-context-service.d.ts +24 -0
  71. package/lib/deployment/deployment-context-service.js +17 -0
  72. package/lib/deployment/deployment-context-service.js.map +1 -0
  73. package/lib/deployment/deployment-runner.d.ts +37 -0
  74. package/lib/deployment/deployment-runner.js +94 -0
  75. package/lib/deployment/deployment-runner.js.map +1 -0
  76. package/lib/deployment/deployment-status-service.d.ts +5 -0
  77. package/lib/deployment/deployment-status-service.js +39 -18
  78. package/lib/deployment/deployment-status-service.js.map +1 -1
  79. package/lib/deployment/deployment-validation-service.d.ts +5 -2
  80. package/lib/deployment/deployment-validation-service.js +48 -45
  81. package/lib/deployment/deployment-validation-service.js.map +1 -1
  82. package/lib/deployment/resume-deployment-service.d.ts +14 -0
  83. package/lib/deployment/resume-deployment-service.js +25 -0
  84. package/lib/deployment/resume-deployment-service.js.map +1 -0
  85. package/lib/deployment/start-execution-service.d.ts +44 -0
  86. package/lib/deployment/start-execution-service.js +94 -0
  87. package/lib/deployment/start-execution-service.js.map +1 -0
  88. package/lib/deployment/test-executor.d.ts +60 -1
  89. package/lib/deployment/test-executor.js +180 -12
  90. package/lib/deployment/test-executor.js.map +1 -1
  91. package/lib/deployment/test-plan-service.d.ts +8 -0
  92. package/lib/deployment/test-plan-service.js +26 -0
  93. package/lib/deployment/test-plan-service.js.map +1 -0
  94. package/lib/deployment/wave-manifest-service.d.ts +11 -0
  95. package/lib/deployment/wave-manifest-service.js +41 -0
  96. package/lib/deployment/wave-manifest-service.js.map +1 -0
  97. package/lib/parsers/apex-class-parser.js +180 -98
  98. package/lib/parsers/apex-class-parser.js.map +1 -1
  99. package/lib/parsers/apex-trigger-parser.js +56 -7
  100. package/lib/parsers/apex-trigger-parser.js.map +1 -1
  101. package/lib/parsers/aura-parser.js +2 -2
  102. package/lib/parsers/aura-parser.js.map +1 -1
  103. package/lib/parsers/bot-parser.js +31 -4
  104. package/lib/parsers/bot-parser.js.map +1 -1
  105. package/lib/parsers/custom-metadata-parser.js +37 -3
  106. package/lib/parsers/custom-metadata-parser.js.map +1 -1
  107. package/lib/parsers/custom-object-parser.js +284 -150
  108. package/lib/parsers/custom-object-parser.js.map +1 -1
  109. package/lib/parsers/email-template-parser.js +115 -58
  110. package/lib/parsers/email-template-parser.js.map +1 -1
  111. package/lib/parsers/flexipage-parser.js +41 -16
  112. package/lib/parsers/flexipage-parser.js.map +1 -1
  113. package/lib/parsers/flow-parser.js +73 -63
  114. package/lib/parsers/flow-parser.js.map +1 -1
  115. package/lib/parsers/genai-prompt-parser.js +16 -4
  116. package/lib/parsers/genai-prompt-parser.js.map +1 -1
  117. package/lib/parsers/layout-parser.d.ts +11 -0
  118. package/lib/parsers/layout-parser.js +143 -68
  119. package/lib/parsers/layout-parser.js.map +1 -1
  120. package/lib/parsers/lwc-parser.d.ts +0 -9
  121. package/lib/parsers/lwc-parser.js +245 -100
  122. package/lib/parsers/lwc-parser.js.map +1 -1
  123. package/lib/parsers/parser-utils.d.ts +3 -0
  124. package/lib/parsers/parser-utils.js +16 -0
  125. package/lib/parsers/parser-utils.js.map +1 -0
  126. package/lib/parsers/permission-set-parser.d.ts +6 -0
  127. package/lib/parsers/permission-set-parser.js +31 -40
  128. package/lib/parsers/permission-set-parser.js.map +1 -1
  129. package/lib/parsers/profile-parser.d.ts +13 -0
  130. package/lib/parsers/profile-parser.js +39 -34
  131. package/lib/parsers/profile-parser.js.map +1 -1
  132. package/lib/parsers/visualforce-parser.js +2 -1
  133. package/lib/parsers/visualforce-parser.js.map +1 -1
  134. package/lib/presentation/analyze-command-presenter.d.ts +10 -0
  135. package/lib/presentation/analyze-command-presenter.js +30 -0
  136. package/lib/presentation/analyze-command-presenter.js.map +1 -0
  137. package/lib/presentation/config-command-presenter.d.ts +15 -0
  138. package/lib/presentation/config-command-presenter.js +50 -0
  139. package/lib/presentation/config-command-presenter.js.map +1 -0
  140. package/lib/presentation/project-analysis-presenter.d.ts +9 -0
  141. package/lib/presentation/project-analysis-presenter.js +9 -0
  142. package/lib/presentation/project-analysis-presenter.js.map +1 -0
  143. package/lib/presentation/resume-command-presenter.d.ts +7 -0
  144. package/lib/presentation/resume-command-presenter.js +12 -0
  145. package/lib/presentation/resume-command-presenter.js.map +1 -0
  146. package/lib/presentation/start-command-presenter.d.ts +15 -0
  147. package/lib/presentation/start-command-presenter.js +29 -0
  148. package/lib/presentation/start-command-presenter.js.map +1 -0
  149. package/lib/presentation/status-command-presenter.d.ts +7 -0
  150. package/lib/presentation/status-command-presenter.js +16 -0
  151. package/lib/presentation/status-command-presenter.js.map +1 -0
  152. package/lib/presentation/validate-command-presenter.d.ts +9 -0
  153. package/lib/presentation/validate-command-presenter.js +50 -0
  154. package/lib/presentation/validate-command-presenter.js.map +1 -0
  155. package/lib/services/metadata-scanner-service.d.ts +8 -12
  156. package/lib/services/metadata-scanner-service.js +55 -533
  157. package/lib/services/metadata-scanner-service.js.map +1 -1
  158. package/lib/services/scanners/automation-ai-metadata-scanner.d.ts +4 -0
  159. package/lib/services/scanners/automation-ai-metadata-scanner.js +61 -0
  160. package/lib/services/scanners/automation-ai-metadata-scanner.js.map +1 -0
  161. package/lib/services/scanners/code-metadata-scanner.d.ts +23 -0
  162. package/lib/services/scanners/code-metadata-scanner.js +149 -0
  163. package/lib/services/scanners/code-metadata-scanner.js.map +1 -0
  164. package/lib/services/scanners/data-metadata-scanner.d.ts +3 -0
  165. package/lib/services/scanners/data-metadata-scanner.js +82 -0
  166. package/lib/services/scanners/data-metadata-scanner.js.map +1 -0
  167. package/lib/services/scanners/experience-metadata-scanner.d.ts +5 -0
  168. package/lib/services/scanners/experience-metadata-scanner.js +123 -0
  169. package/lib/services/scanners/experience-metadata-scanner.js.map +1 -0
  170. package/lib/services/scanners/scanner-runtime.d.ts +11 -0
  171. package/lib/services/scanners/scanner-runtime.js +115 -0
  172. package/lib/services/scanners/scanner-runtime.js.map +1 -0
  173. package/lib/services/scanners/security-metadata-scanner.d.ts +3 -0
  174. package/lib/services/scanners/security-metadata-scanner.js +71 -0
  175. package/lib/services/scanners/security-metadata-scanner.js.map +1 -0
  176. package/lib/types/dependency.d.ts +11 -1
  177. package/lib/types/metadata.d.ts +17 -0
  178. package/lib/types/salesforce/flow/actions.d.ts +108 -0
  179. package/lib/types/salesforce/flow/actions.js +2 -0
  180. package/lib/types/salesforce/flow/actions.js.map +1 -0
  181. package/lib/types/salesforce/flow/common.d.ts +36 -0
  182. package/lib/types/salesforce/flow/common.js +5 -0
  183. package/lib/types/salesforce/flow/common.js.map +1 -0
  184. package/lib/types/salesforce/flow/metadata.d.ts +37 -0
  185. package/lib/types/salesforce/flow/metadata.js +2 -0
  186. package/lib/types/salesforce/flow/metadata.js.map +1 -0
  187. package/lib/types/salesforce/flow/records.d.ts +38 -0
  188. package/lib/types/salesforce/flow/records.js +2 -0
  189. package/lib/types/salesforce/flow/records.js.map +1 -0
  190. package/lib/types/salesforce/flow/resources.d.ts +44 -0
  191. package/lib/types/salesforce/flow/resources.js +2 -0
  192. package/lib/types/salesforce/flow/resources.js.map +1 -0
  193. package/lib/types/salesforce/flow/screens.d.ts +56 -0
  194. package/lib/types/salesforce/flow/screens.js +2 -0
  195. package/lib/types/salesforce/flow/screens.js.map +1 -0
  196. package/lib/types/salesforce/flow/start.d.ts +24 -0
  197. package/lib/types/salesforce/flow/start.js +2 -0
  198. package/lib/types/salesforce/flow/start.js.map +1 -0
  199. package/lib/types/salesforce/flow.d.ts +9 -514
  200. package/lib/types/salesforce/flow.js +1 -1
  201. package/lib/types/salesforce/object/core.d.ts +68 -0
  202. package/lib/types/salesforce/object/core.js +5 -0
  203. package/lib/types/salesforce/object/core.js.map +1 -0
  204. package/lib/types/salesforce/object/field.d.ts +155 -0
  205. package/lib/types/salesforce/object/field.js +5 -0
  206. package/lib/types/salesforce/object/field.js.map +1 -0
  207. package/lib/types/salesforce/object/filter.d.ts +16 -0
  208. package/lib/types/salesforce/object/filter.js +5 -0
  209. package/lib/types/salesforce/object/filter.js.map +1 -0
  210. package/lib/types/salesforce/object/policy.d.ts +27 -0
  211. package/lib/types/salesforce/object/policy.js +5 -0
  212. package/lib/types/salesforce/object/policy.js.map +1 -0
  213. package/lib/types/salesforce/object/record.d.ts +44 -0
  214. package/lib/types/salesforce/object/record.js +5 -0
  215. package/lib/types/salesforce/object/record.js.map +1 -0
  216. package/lib/types/salesforce/object/view.d.ts +71 -0
  217. package/lib/types/salesforce/object/view.js +5 -0
  218. package/lib/types/salesforce/object/view.js.map +1 -0
  219. package/lib/types/salesforce/object/weblink.d.ts +70 -0
  220. package/lib/types/salesforce/object/weblink.js +5 -0
  221. package/lib/types/salesforce/object/weblink.js.map +1 -0
  222. package/lib/types/salesforce/object.d.ts +7 -423
  223. package/lib/types/salesforce/object.js +7 -1
  224. package/lib/types/salesforce/object.js.map +1 -1
  225. package/lib/utils/cache-manager.d.ts +16 -15
  226. package/lib/utils/cache-manager.js +290 -188
  227. package/lib/utils/cache-manager.js.map +1 -1
  228. package/lib/utils/logger.d.ts +8 -0
  229. package/lib/utils/logger.js +82 -69
  230. package/lib/utils/logger.js.map +1 -1
  231. package/lib/validators/xml/xml-reference-rules.d.ts +3 -0
  232. package/lib/validators/xml/xml-reference-rules.js +173 -0
  233. package/lib/validators/xml/xml-reference-rules.js.map +1 -0
  234. package/lib/validators/xml/xml-report-formatter.d.ts +2 -0
  235. package/lib/validators/xml/xml-report-formatter.js +47 -0
  236. package/lib/validators/xml/xml-report-formatter.js.map +1 -0
  237. package/lib/validators/xml/xml-schema-rules.d.ts +3 -0
  238. package/lib/validators/xml/xml-schema-rules.js +75 -0
  239. package/lib/validators/xml/xml-schema-rules.js.map +1 -0
  240. package/lib/validators/xml/xml-validation-types.d.ts +25 -0
  241. package/lib/validators/xml/xml-validation-types.js +2 -0
  242. package/lib/validators/xml/xml-validation-types.js.map +1 -0
  243. package/lib/validators/xml-metadata-validator.d.ts +2 -63
  244. package/lib/validators/xml-metadata-validator.js +7 -338
  245. package/lib/validators/xml-metadata-validator.js.map +1 -1
  246. package/lib/waves/test-optimizer.d.ts +13 -0
  247. package/lib/waves/test-optimizer.js +124 -63
  248. package/lib/waves/test-optimizer.js.map +1 -1
  249. package/lib/waves/wave-builder.d.ts +17 -21
  250. package/lib/waves/wave-builder.js +199 -135
  251. package/lib/waves/wave-builder.js.map +1 -1
  252. package/lib/waves/wave-splitter.d.ts +12 -8
  253. package/lib/waves/wave-splitter.js +156 -115
  254. package/lib/waves/wave-splitter.js.map +1 -1
  255. package/npm-shrinkwrap.json +2 -2
  256. package/oclif.manifest.json +1 -1
  257. package/package.json +1 -1
@@ -0,0 +1,24 @@
1
+ import type { FlowComparisonOperator, FlowConnector, FlowElementReferenceOrValue } from './common.js';
2
+ export type FlowRecordFilter = {
3
+ field: string;
4
+ operator: FlowComparisonOperator;
5
+ value: FlowElementReferenceOrValue;
6
+ };
7
+ export type FlowRecordTriggerType = 'Create' | 'Update' | 'CreateAndUpdate' | 'Delete';
8
+ export type FlowScheduleFrequency = 'Once' | 'Daily' | 'Weekly';
9
+ export type FlowSchedule = {
10
+ frequency: FlowScheduleFrequency;
11
+ startDate?: string;
12
+ startTime?: string;
13
+ };
14
+ export type FlowTriggerType = 'Scheduled' | 'RecordBeforeSave' | 'RecordAfterSave' | 'PlatformEvent';
15
+ export type FlowStart = {
16
+ locationX: number;
17
+ locationY: number;
18
+ connector?: FlowConnector;
19
+ filters?: FlowRecordFilter[];
20
+ object?: string;
21
+ recordTriggerType?: FlowRecordTriggerType;
22
+ schedule?: FlowSchedule;
23
+ triggerType?: FlowTriggerType;
24
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=start.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../../src/types/salesforce/flow/start.ts"],"names":[],"mappings":""}
@@ -1,516 +1,11 @@
1
1
  /**
2
2
  * Type definitions for Salesforce Flow metadata
3
- * Represents Flow-meta.xml structures
4
- */
5
- /**
6
- * Flow metadata (Flow-meta.xml)
7
- */
8
- export type FlowMetadata = {
9
- apiVersion?: string;
10
- description?: string;
11
- label: string;
12
- processType: FlowProcessType;
13
- status: FlowStatus;
14
- interviewLabel?: string;
15
- isTemplate?: boolean;
16
- processMetadataValues?: FlowMetadataValue[];
17
- start?: FlowStart;
18
- actionCalls?: FlowActionCall[];
19
- apexPluginCalls?: FlowApexPluginCall[];
20
- assignments?: FlowAssignment[];
21
- decisions?: FlowDecision[];
22
- loops?: FlowLoop[];
23
- recordCreates?: FlowRecordCreate[];
24
- recordDeletes?: FlowRecordDelete[];
25
- recordLookups?: FlowRecordLookup[];
26
- recordUpdates?: FlowRecordUpdate[];
27
- screens?: FlowScreen[];
28
- subflows?: FlowSubflow[];
29
- variables?: FlowVariable[];
30
- constants?: FlowConstant[];
31
- formulas?: FlowFormula[];
32
- dynamicChoiceSets?: FlowDynamicChoiceSet[];
33
- textTemplates?: FlowTextTemplate[];
34
- stages?: FlowStage[];
35
- transforms?: FlowTransform[];
36
- waits?: FlowWait[];
37
- };
38
- /**
39
- * Flow process type
40
- */
41
- export type FlowProcessType = 'AutoLaunchedFlow' | 'Flow' | 'Workflow' | 'CustomEvent' | 'InvocableProcess' | 'LoginFlow' | 'ActionPlan' | 'JourneyBuilderIntegration' | 'UserProvisioningFlow' | 'Survey' | 'SurveyEnrich' | 'Appointments' | 'FSCLending' | 'DigitalForm' | 'FieldServiceMobile' | 'OrchestrationFlow' | 'FieldServiceWeb' | 'TransactionSecurityFlow' | 'ContactRequestFlow' | 'ActionCadenceFlow' | 'ManagedContentFlow' | 'CheckoutFlow' | 'CartAsyncFlow' | 'SalesEntryExperienceFlow' | 'CustomerLifecycle' | 'Journey' | 'RecommendationStrategy' | 'Orchestrator' | 'RoutingFlow' | 'ServiceCatalogItemFlow' | 'EvaluationFlow' | 'ActionCadenceAutolaunchedFlow' | 'ActionCadenceStepFlow' | 'IndividualObjectLinkingFlow';
42
- /**
43
- * Flow status
44
- */
45
- export type FlowStatus = 'Active' | 'Draft' | 'Obsolete' | 'InvalidDraft';
46
- /**
47
- * Flow metadata value
48
- */
49
- export type FlowMetadataValue = {
50
- name: string;
51
- value: FlowElementReferenceOrValue;
52
- };
53
- /**
54
- * Flow element reference or value
55
- */
56
- export type FlowElementReferenceOrValue = {
57
- stringValue?: string;
58
- numberValue?: number;
59
- booleanValue?: boolean;
60
- dateValue?: string;
61
- dateTimeValue?: string;
62
- elementReference?: string;
63
- };
64
- /**
65
- * Flow start element
66
- */
67
- export type FlowStart = {
68
- locationX: number;
69
- locationY: number;
70
- connector?: FlowConnector;
71
- filters?: FlowRecordFilter[];
72
- object?: string;
73
- recordTriggerType?: FlowRecordTriggerType;
74
- schedule?: FlowSchedule;
75
- triggerType?: FlowTriggerType;
76
- };
77
- /**
78
- * Flow connector
79
- */
80
- export type FlowConnector = {
81
- targetReference: string;
82
- };
83
- /**
84
- * Flow record filter
85
- */
86
- export type FlowRecordFilter = {
87
- field: string;
88
- operator: FlowComparisonOperator;
89
- value: FlowElementReferenceOrValue;
90
- };
91
- /**
92
- * Flow comparison operator
93
- */
94
- export type FlowComparisonOperator = 'EqualTo' | 'NotEqualTo' | 'GreaterThan' | 'LessThan' | 'GreaterThanOrEqualTo' | 'LessThanOrEqualTo' | 'StartsWith' | 'EndsWith' | 'Contains' | 'IsNull' | 'IsChanged' | 'WasSelected' | 'WasSet';
95
- /**
96
- * Flow record trigger type
97
- */
98
- export type FlowRecordTriggerType = 'Create' | 'Update' | 'CreateAndUpdate' | 'Delete';
99
- /**
100
- * Flow schedule
101
- */
102
- export type FlowSchedule = {
103
- frequency: FlowScheduleFrequency;
104
- startDate?: string;
105
- startTime?: string;
106
- };
107
- /**
108
- * Flow schedule frequency
109
- */
110
- export type FlowScheduleFrequency = 'Once' | 'Daily' | 'Weekly';
111
- /**
112
- * Flow trigger type
113
- */
114
- export type FlowTriggerType = 'Scheduled' | 'RecordBeforeSave' | 'RecordAfterSave' | 'PlatformEvent';
115
- /**
116
- * Flow action call
117
- */
118
- export type FlowActionCall = FlowNode & {
119
- actionName: string;
120
- actionType: FlowActionType;
121
- inputParameters?: FlowActionCallInputParameter[];
122
- outputParameters?: FlowActionCallOutputParameter[];
123
- storeOutputAutomatically?: boolean;
124
- };
125
- /**
126
- * Flow node (base for all flow elements)
127
- */
128
- export type FlowNode = {
129
- name: string;
130
- label?: string;
131
- locationX: number;
132
- locationY: number;
133
- connector?: FlowConnector;
134
- faultConnector?: FlowConnector;
135
- };
136
- /**
137
- * Flow action type
138
- */
139
- export type FlowActionType = 'apex' | 'emailAlert' | 'quickAction' | 'submit' | 'thanks' | 'chatterPost' | 'component' | 'contentWorkspaceEnableFolders' | 'customNotificationAction' | 'emailSimple' | 'externalService';
140
- /**
141
- * Flow action call input parameter
142
- */
143
- export type FlowActionCallInputParameter = {
144
- name: string;
145
- value: FlowElementReferenceOrValue;
146
- };
147
- /**
148
- * Flow action call output parameter
149
- */
150
- export type FlowActionCallOutputParameter = {
151
- assignToReference: string;
152
- name: string;
153
- };
154
- /**
155
- * Flow apex plugin call
156
- */
157
- export type FlowApexPluginCall = FlowNode & {
158
- apexClass: string;
159
- inputParameters?: FlowApexPluginCallInputParameter[];
160
- outputParameters?: FlowApexPluginCallOutputParameter[];
161
- };
162
- /**
163
- * Flow apex plugin call input parameter
164
- */
165
- export type FlowApexPluginCallInputParameter = {
166
- name: string;
167
- value: FlowElementReferenceOrValue;
168
- };
169
- /**
170
- * Flow apex plugin call output parameter
171
- */
172
- export type FlowApexPluginCallOutputParameter = {
173
- assignToReference: string;
174
- name: string;
175
- };
176
- /**
177
- * Flow assignment
178
- */
179
- export type FlowAssignment = FlowNode & {
180
- assignmentItems: FlowAssignmentItem[];
181
- };
182
- /**
183
- * Flow assignment item
184
- */
185
- export type FlowAssignmentItem = {
186
- assignToReference: string;
187
- operator: FlowAssignmentOperator;
188
- value: FlowElementReferenceOrValue;
189
- };
190
- /**
191
- * Flow assignment operator
192
- */
193
- export type FlowAssignmentOperator = 'Assign' | 'Add' | 'Subtract' | 'AddItem' | 'RemoveFirst' | 'RemoveBeforeFirst' | 'RemoveAfterFirst' | 'RemoveAll';
194
- /**
195
- * Flow decision
196
- */
197
- export type FlowDecision = FlowNode & {
198
- defaultConnector?: FlowConnector;
199
- defaultConnectorLabel?: string;
200
- rules: FlowRule[];
201
- };
202
- /**
203
- * Flow rule
204
- */
205
- export type FlowRule = {
206
- name: string;
207
- conditionLogic?: string;
208
- conditions: FlowCondition[];
209
- connector?: FlowConnector;
210
- label: string;
211
- };
212
- /**
213
- * Flow condition
214
- */
215
- export type FlowCondition = {
216
- leftValueReference: string;
217
- operator: FlowComparisonOperator;
218
- rightValue?: FlowElementReferenceOrValue;
219
- };
220
- /**
221
- * Flow loop
222
- */
223
- export type FlowLoop = FlowNode & {
224
- collectionReference: string;
225
- iterationOrder?: FlowIterationOrder;
226
- nextValueConnector?: FlowConnector;
227
- noMoreValuesConnector?: FlowConnector;
228
- };
229
- /**
230
- * Flow iteration order
231
- */
232
- export type FlowIterationOrder = 'Asc' | 'Desc';
233
- /**
234
- * Flow record create
235
- */
236
- export type FlowRecordCreate = FlowNode & {
237
- object: string;
238
- inputAssignments?: FlowInputFieldAssignment[];
239
- inputReference?: string;
240
- storeOutputAutomatically?: boolean;
241
- };
242
- /**
243
- * Flow input field assignment
244
- */
245
- export type FlowInputFieldAssignment = {
246
- field: string;
247
- value: FlowElementReferenceOrValue;
248
- };
249
- /**
250
- * Flow record delete
251
- */
252
- export type FlowRecordDelete = FlowNode & {
253
- filters?: FlowRecordFilter[];
254
- inputReference?: string;
255
- object?: string;
256
- };
257
- /**
258
- * Flow record lookup
259
- */
260
- export type FlowRecordLookup = FlowNode & {
261
- object: string;
262
- filters?: FlowRecordFilter[];
263
- getFirstRecordOnly?: boolean;
264
- outputAssignments?: FlowOutputFieldAssignment[];
265
- outputReference?: string;
266
- queriedFields?: string[];
267
- sortField?: string;
268
- sortOrder?: FlowSortOrder;
269
- storeOutputAutomatically?: boolean;
270
- };
271
- /**
272
- * Flow output field assignment
273
- */
274
- export type FlowOutputFieldAssignment = {
275
- assignToReference: string;
276
- field: string;
277
- };
278
- /**
279
- * Flow sort order
280
- */
281
- export type FlowSortOrder = 'Asc' | 'Desc';
282
- /**
283
- * Flow record update
284
- */
285
- export type FlowRecordUpdate = FlowNode & {
286
- filters?: FlowRecordFilter[];
287
- inputAssignments?: FlowInputFieldAssignment[];
288
- inputReference?: string;
289
- object?: string;
290
- };
291
- /**
292
- * Flow screen
293
- */
294
- export type FlowScreen = FlowNode & {
295
- allowBack?: boolean;
296
- allowFinish?: boolean;
297
- allowPause?: boolean;
298
- fields?: FlowScreenField[];
299
- helpText?: string;
300
- pausedText?: string;
301
- rules?: FlowScreenRule[];
302
- showFooter?: boolean;
303
- showHeader?: boolean;
304
- };
305
- /**
306
- * Flow screen field
307
- */
308
- export type FlowScreenField = {
309
- name: string;
310
- fieldType: FlowScreenFieldType;
311
- dataType?: FlowDataType;
312
- defaultValue?: FlowElementReferenceOrValue;
313
- extensionName?: string;
314
- fieldText?: string;
315
- helpText?: string;
316
- inputParameters?: FlowScreenFieldInputParameter[];
317
- isRequired?: boolean;
318
- outputParameters?: FlowScreenFieldOutputParameter[];
319
- scale?: number;
320
- validationRule?: FlowInputValidationRule;
321
- visibilityRule?: FlowVisibilityRule;
322
- };
323
- /**
324
- * Flow screen field type
325
- */
326
- export type FlowScreenFieldType = 'DisplayText' | 'InputField' | 'LargeTextArea' | 'PasswordField' | 'RadioButtons' | 'DropdownBox' | 'MultiSelectCheckboxes' | 'MultiSelectPicklist' | 'ComponentInstance';
327
- /**
328
- * Flow data type
329
- */
330
- export type FlowDataType = 'Boolean' | 'Currency' | 'Date' | 'DateTime' | 'Number' | 'String' | 'Picklist' | 'MultiPicklist' | 'SObject' | 'Apex';
331
- /**
332
- * Flow screen field input parameter
333
- */
334
- export type FlowScreenFieldInputParameter = {
335
- name: string;
336
- value: FlowElementReferenceOrValue;
337
- };
338
- /**
339
- * Flow screen field output parameter
340
- */
341
- export type FlowScreenFieldOutputParameter = {
342
- assignToReference: string;
343
- name: string;
344
- };
345
- /**
346
- * Flow input validation rule
347
- */
348
- export type FlowInputValidationRule = {
349
- errorMessage: string;
350
- formulaExpression: string;
351
- };
352
- /**
353
- * Flow visibility rule
354
- */
355
- export type FlowVisibilityRule = {
356
- conditionLogic?: string;
357
- conditions: FlowCondition[];
358
- };
359
- /**
360
- * Flow screen rule
361
- */
362
- export type FlowScreenRule = {
363
- name: string;
364
- conditionLogic?: string;
365
- conditions: FlowCondition[];
366
- label: string;
367
- ruleActions: FlowScreenRuleAction[];
368
- };
369
- /**
370
- * Flow screen rule action
371
- */
372
- export type FlowScreenRuleAction = {
373
- attribute: string;
374
- fieldReference: string;
375
- value: FlowElementReferenceOrValue;
376
- };
377
- /**
378
- * Flow subflow
379
- */
380
- export type FlowSubflow = FlowNode & {
381
- flowName: string;
382
- inputAssignments?: FlowSubflowInputAssignment[];
383
- outputAssignments?: FlowSubflowOutputAssignment[];
384
- storeOutputAutomatically?: boolean;
385
- };
386
- /**
387
- * Flow subflow input assignment
388
- */
389
- export type FlowSubflowInputAssignment = {
390
- name: string;
391
- value: FlowElementReferenceOrValue;
392
- };
393
- /**
394
- * Flow subflow output assignment
395
- */
396
- export type FlowSubflowOutputAssignment = {
397
- assignToReference: string;
398
- name: string;
399
- };
400
- /**
401
- * Flow variable
402
- */
403
- export type FlowVariable = {
404
- name: string;
405
- dataType: FlowDataType;
406
- isCollection?: boolean;
407
- isInput?: boolean;
408
- isOutput?: boolean;
409
- objectType?: string;
410
- scale?: number;
411
- value?: FlowElementReferenceOrValue;
412
- };
413
- /**
414
- * Flow constant
415
- */
416
- export type FlowConstant = {
417
- name: string;
418
- dataType: FlowDataType;
419
- value: FlowElementReferenceOrValue;
420
- };
421
- /**
422
- * Flow formula
423
- */
424
- export type FlowFormula = {
425
- name: string;
426
- dataType: FlowDataType;
427
- expression: string;
428
- scale?: number;
429
- };
430
- /**
431
- * Flow dynamic choice set
432
- */
433
- export type FlowDynamicChoiceSet = {
434
- name: string;
435
- dataType: FlowDataType;
436
- displayField: string;
437
- object: string;
438
- outputAssignments?: FlowOutputFieldAssignment[];
439
- picklistField?: string;
440
- picklistObject?: string;
441
- sortField?: string;
442
- sortOrder?: FlowSortOrder;
443
- valueField?: string;
444
- };
445
- /**
446
- * Flow text template
447
- */
448
- export type FlowTextTemplate = {
449
- name: string;
450
- text: string;
451
- };
452
- /**
453
- * Flow stage
454
- */
455
- export type FlowStage = {
456
- name: string;
457
- label: string;
458
- isActive: boolean;
459
- };
460
- /**
461
- * Flow transform
462
- */
463
- export type FlowTransform = FlowNode & {
464
- apexClass: string;
465
- inputParameters?: FlowTransformInputParameter[];
466
- outputParameters?: FlowTransformOutputParameter[];
467
- };
468
- /**
469
- * Flow transform input parameter
470
- */
471
- export type FlowTransformInputParameter = {
472
- name: string;
473
- value: FlowElementReferenceOrValue;
474
- };
475
- /**
476
- * Flow transform output parameter
477
- */
478
- export type FlowTransformOutputParameter = {
479
- assignToReference: string;
480
- name: string;
481
- };
482
- /**
483
- * Flow wait
484
- */
485
- export type FlowWait = FlowNode & {
486
- waitEvents: FlowWaitEvent[];
487
- defaultConnector?: FlowConnector;
488
- defaultConnectorLabel?: string;
489
- };
490
- /**
491
- * Flow wait event
492
- */
493
- export type FlowWaitEvent = {
494
- name: string;
495
- label: string;
496
- conditionLogic?: string;
497
- conditions: FlowCondition[];
498
- connector?: FlowConnector;
499
- eventType: string;
500
- inputParameters?: FlowWaitEventInputParameter[];
501
- outputParameters?: FlowWaitEventOutputParameter[];
502
- };
503
- /**
504
- * Flow wait event input parameter
505
- */
506
- export type FlowWaitEventInputParameter = {
507
- name: string;
508
- value: FlowElementReferenceOrValue;
509
- };
510
- /**
511
- * Flow wait event output parameter
512
- */
513
- export type FlowWaitEventOutputParameter = {
514
- assignToReference: string;
515
- name: string;
516
- };
3
+ * Stable barrel for Flow-related subdomain types.
4
+ */
5
+ export type * from './flow/common.js';
6
+ export type * from './flow/start.js';
7
+ export type * from './flow/actions.js';
8
+ export type * from './flow/records.js';
9
+ export type * from './flow/screens.js';
10
+ export type * from './flow/resources.js';
11
+ export type * from './flow/metadata.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Type definitions for Salesforce Flow metadata
3
- * Represents Flow-meta.xml structures
3
+ * Stable barrel for Flow-related subdomain types.
4
4
  */
5
5
  export {};
6
6
  //# sourceMappingURL=flow.js.map
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Core Custom Object metadata types for Salesforce Object metadata.
3
+ */
4
+ import type { CustomField, FieldSet } from './field.js';
5
+ import type { ListView, SearchLayouts } from './view.js';
6
+ import type { RecordType } from './record.js';
7
+ import type { SharingReason, SharingRecalculation, ValidationRule } from './policy.js';
8
+ import type { ActionOverride, WebLink } from './weblink.js';
9
+ /**
10
+ * Custom Object metadata (.object-meta.xml)
11
+ */
12
+ export type CustomObjectMetadata = {
13
+ actionOverrides?: ActionOverride[];
14
+ allowInChatterGroups?: boolean;
15
+ compactLayoutAssignment?: string;
16
+ customHelpPage?: string;
17
+ deploymentStatus?: DeploymentStatus;
18
+ deprecated?: boolean;
19
+ description?: string;
20
+ enableActivities?: boolean;
21
+ enableBulkApi?: boolean;
22
+ enableChangeDataCapture?: boolean;
23
+ enableEnhancedLookup?: boolean;
24
+ enableFeeds?: boolean;
25
+ enableHistory?: boolean;
26
+ enableReports?: boolean;
27
+ enableSearch?: boolean;
28
+ enableSharing?: boolean;
29
+ enableStreamingApi?: boolean;
30
+ externalSharingModel?: SharingModel;
31
+ fields?: CustomField[];
32
+ fieldSets?: FieldSet[];
33
+ gender?: Gender;
34
+ household?: boolean;
35
+ label: string;
36
+ listViews?: ListView[];
37
+ nameField?: CustomField;
38
+ pluralLabel: string;
39
+ recordTypes?: RecordType[];
40
+ searchLayouts?: SearchLayouts;
41
+ sharingModel?: SharingModel;
42
+ sharingReasons?: SharingReason[];
43
+ sharingRecalculations?: SharingRecalculation[];
44
+ startsWith?: StartsWith;
45
+ validationRules?: ValidationRule[];
46
+ visibility?: SetupObjectVisibility;
47
+ webLinks?: WebLink[];
48
+ };
49
+ /**
50
+ * Deployment status
51
+ */
52
+ export type DeploymentStatus = 'Deployed' | 'InDevelopment';
53
+ /**
54
+ * Sharing model
55
+ */
56
+ export type SharingModel = 'Private' | 'Read' | 'ReadWrite' | 'ReadWriteTransfer' | 'FullAccess' | 'ControlledByParent' | 'ControlledByCampaign' | 'ControlledByLeadOrContact';
57
+ /**
58
+ * Gender
59
+ */
60
+ export type Gender = 'Neuter' | 'Masculine' | 'Feminine' | 'AnimateMasculine' | 'ClassI' | 'ClassIII';
61
+ /**
62
+ * Starts with
63
+ */
64
+ export type StartsWith = 'Consonant' | 'Vowel' | 'Special';
65
+ /**
66
+ * Setup object visibility
67
+ */
68
+ export type SetupObjectVisibility = 'Public' | 'Protected' | 'PackageProtected';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Core Custom Object metadata types for Salesforce Object metadata.
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/types/salesforce/object/core.ts"],"names":[],"mappings":"AAAA;;GAEG"}