@salesforce/plugin-data 3.0.22 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +119 -20
  2. package/lib/api/data/tree/exportApi.js.map +1 -1
  3. package/lib/api/data/tree/functions.js +12 -0
  4. package/lib/api/data/tree/functions.js.map +1 -0
  5. package/lib/api/data/tree/importApi.js.map +1 -1
  6. package/lib/api/data/tree/importCommon.js +46 -0
  7. package/lib/api/data/tree/importCommon.js.map +1 -0
  8. package/lib/api/data/tree/importFiles.js +55 -0
  9. package/lib/api/data/tree/importFiles.js.map +1 -0
  10. package/lib/api/data/tree/importPlan.js +164 -0
  11. package/lib/api/data/tree/importPlan.js.map +1 -0
  12. package/lib/api/data/tree/importTypes.js +2 -0
  13. package/lib/api/data/tree/importTypes.js.map +1 -0
  14. package/lib/bulkDataRequestCache.js +26 -15
  15. package/lib/bulkDataRequestCache.js.map +1 -1
  16. package/lib/bulkUtils.js +1 -2
  17. package/lib/bulkUtils.js.map +1 -1
  18. package/lib/commands/data/export/beta/tree.js +55 -0
  19. package/lib/commands/data/export/beta/tree.js.map +1 -0
  20. package/lib/commands/data/export/tree.js +1 -0
  21. package/lib/commands/data/export/tree.js.map +1 -1
  22. package/lib/commands/data/import/beta/tree.js +52 -0
  23. package/lib/commands/data/import/beta/tree.js.map +1 -0
  24. package/lib/commands/data/import/tree.js +4 -0
  25. package/lib/commands/data/import/tree.js.map +1 -1
  26. package/lib/dataSoqlQueryTypes.js +7 -0
  27. package/lib/dataSoqlQueryTypes.js.map +1 -1
  28. package/lib/export.js +249 -0
  29. package/lib/export.js.map +1 -0
  30. package/lib/flags.js +7 -0
  31. package/lib/flags.js.map +1 -1
  32. package/lib/reporters.js +0 -35
  33. package/lib/reporters.js.map +1 -1
  34. package/messages/importApi.md +32 -0
  35. package/messages/tree.export.md +5 -1
  36. package/messages/tree.import.beta.md +43 -0
  37. package/messages/tree.import.md +8 -0
  38. package/oclif.lock +344 -338
  39. package/oclif.manifest.json +267 -2
  40. package/package.json +7 -7
@@ -0,0 +1,164 @@
1
+ /*
2
+ * Copyright (c) 2023, salesforce.com, inc.
3
+ * All rights reserved.
4
+ * Licensed under the BSD 3-Clause license.
5
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
6
+ */
7
+ import path from 'node:path';
8
+ import { EOL } from 'node:os';
9
+ import { fileURLToPath } from 'node:url';
10
+ import fs from 'node:fs';
11
+ import { createHash } from 'node:crypto';
12
+ import { isString } from '@salesforce/ts-types';
13
+ import { Logger, SchemaValidator, SfError, Messages } from '@salesforce/core';
14
+ import { getResultsIfNoError, parseDataFileContents, sendSObjectTreeRequest, treeSaveErrorHandler, } from './importCommon.js';
15
+ import { isUnresolvedRef } from './functions.js';
16
+ import { hasUnresolvedRefs } from './functions.js';
17
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
18
+ const messages = Messages.loadMessages('@salesforce/plugin-data', 'importApi');
19
+ const TREE_API_LIMIT = 200;
20
+ const refRegex = (object) => new RegExp(`^@${object}Ref\\d+$`);
21
+ export const importFromPlan = async (conn, planFilePath) => {
22
+ const resolvedPlanPath = path.resolve(process.cwd(), planFilePath);
23
+ const logger = Logger.childFromRoot('data:import:tree:importFromPlan');
24
+ const planContents = await Promise.all((await validatePlanContents(logger)(resolvedPlanPath, (await JSON.parse(fs.readFileSync(resolvedPlanPath, 'utf8')))))
25
+ // there *shouldn't* be multiple files for the same sobject in a plan, but the legacy code allows that
26
+ .flatMap((dpp) => dpp.files.map((f) => ({ ...dpp, filePath: path.resolve(path.dirname(resolvedPlanPath), f) })))
27
+ .map(async (i) => ({
28
+ ...i,
29
+ records: parseDataFileContents(i.filePath)(await fs.promises.readFile(i.filePath, 'utf-8')),
30
+ })));
31
+ // using recursion to sequentially send the requests so we get refs back from each round
32
+ const { results } = await getResults(conn)(logger)({ results: [], fingerprints: new Set() })(planContents);
33
+ return results;
34
+ };
35
+ /** recursively splits files (for size or unresolved refs) and makes API calls, storing results for subsequent calls */
36
+ const getResults = (conn) => (logger) => (resultsSoFar) => async (planParts) => {
37
+ const newResultWithFingerPrints = addFingerprint(resultsSoFar)(planParts);
38
+ const [head, ...tail] = planParts;
39
+ if (!head.records.length) {
40
+ return tail.length ? getResults(conn)(logger)(newResultWithFingerPrints)(tail) : resultsSoFar;
41
+ }
42
+ const partWithRefsReplaced = { ...head, records: replaceRefs(resultsSoFar.results)(head.records) };
43
+ const { ready, notReady } = replaceRefsInTheSameFile(partWithRefsReplaced);
44
+ if (notReady) {
45
+ logger.debug(`Not all refs are resolved yet. Splitting ${partWithRefsReplaced.filePath} into two`);
46
+ // Do the ones with all refs resolved to ID, then the rest, then the other files. Essentially, we split the file into 2 parts and start over
47
+ return getResults(conn)(logger)(newResultWithFingerPrints)([ready, notReady, ...tail]);
48
+ }
49
+ // We could have refs to records in a file we haven't loaded yet.
50
+ const { resolved, unresolved } = filterUnresolved(partWithRefsReplaced.records);
51
+ if (unresolved.length) {
52
+ logger.debug(`Not all refs are resolved yet. Splitting ${partWithRefsReplaced.filePath} into two with the unresolved refs last`);
53
+ return getResults(conn)(logger)(newResultWithFingerPrints)([
54
+ { ...head, records: resolved },
55
+ ...tail,
56
+ { ...head, records: unresolved, filePath: `${head.filePath}` },
57
+ ]);
58
+ }
59
+ if (partWithRefsReplaced.records.length > TREE_API_LIMIT) {
60
+ logger.debug(`There are more than ${TREE_API_LIMIT} records in ${partWithRefsReplaced.filePath}. Will split into multiple requests.`);
61
+ return getResults(conn)(logger)(newResultWithFingerPrints)([...fileSplitter(partWithRefsReplaced), ...tail]);
62
+ }
63
+ logger.debug(`Sending ${partWithRefsReplaced.filePath} (${partWithRefsReplaced.records.length} records for ${partWithRefsReplaced.sobject}) to the API`);
64
+ try {
65
+ const contents = JSON.stringify({ records: partWithRefsReplaced.records });
66
+ const newResults = getResultsIfNoError(partWithRefsReplaced.filePath)(await sendSObjectTreeRequest(conn)(partWithRefsReplaced.sobject)(contents));
67
+ const output = {
68
+ ...newResultWithFingerPrints,
69
+ results: [
70
+ ...newResultWithFingerPrints.results,
71
+ ...newResults.map((r) => ({ refId: r.referenceId, type: partWithRefsReplaced.sobject, id: r.id })),
72
+ ],
73
+ };
74
+ return tail.length ? await getResults(conn)(logger)(output)(tail) : output;
75
+ }
76
+ catch (e) {
77
+ return treeSaveErrorHandler(e);
78
+ }
79
+ };
80
+ /** if the file has more than TREE_API_LIMIT records, split it into multiple files */
81
+ export const fileSplitter = (planPart) => {
82
+ const head = planPart.records.slice(0, TREE_API_LIMIT);
83
+ const tail = planPart.records.slice(TREE_API_LIMIT);
84
+ return tail.length ? [{ ...planPart, records: head }, ...fileSplitter({ ...planPart, records: tail })] : [planPart];
85
+ };
86
+ /**
87
+ * it's possible that a file has records that refer to each other (ex: account/parentId). So they're not in refs yet.
88
+ * so we'll parse the JSON and split the records into 2 sets: those with refs and those without, if necessary
89
+ */
90
+ export const replaceRefsInTheSameFile = (planPart) => {
91
+ const unresolvedRefRegex = refRegex(planPart.sobject);
92
+ const refRecords = planPart.records.filter((r) => Object.values(r).some(matchesRefFilter(unresolvedRefRegex)));
93
+ return refRecords.length
94
+ ? {
95
+ ready: {
96
+ ...planPart,
97
+ // have no refs, so they can go in immediately
98
+ records: planPart.records.filter((r) => !Object.values(r).some(matchesRefFilter(unresolvedRefRegex))),
99
+ },
100
+ notReady: { ...planPart, records: refRecords },
101
+ }
102
+ : { ready: planPart };
103
+ };
104
+ /** recursively replace the `@ref` with the id, using the accumulated results objects */
105
+ export const replaceRefs = (results) => (records) => {
106
+ if (results.length === 0)
107
+ return records;
108
+ const [head, ...tail] = results;
109
+ const updatedRecords = records.map(replaceRefWithId(head));
110
+ return tail.length ? replaceRefs(tail)(updatedRecords) : updatedRecords;
111
+ };
112
+ /** replace 1 record with 1 ref for all of its fields */
113
+ const replaceRefWithId = (ref) => (record) => Object.fromEntries(Object.entries(record).map(([k, v]) => [k, v === `@${ref.refId}` ? ref.id : v]));
114
+ export const validatePlanContents = (logger) => async (planPath, planContents) => {
115
+ const childLogger = logger.child('validatePlanContents');
116
+ const planSchema = path.join(path.dirname(fileURLToPath(import.meta.url)), '..', '..', '..', '..', 'schema', 'dataImportPlanSchema.json');
117
+ const val = new SchemaValidator(childLogger, planSchema);
118
+ try {
119
+ await val.validate(planContents);
120
+ const output = planContents;
121
+ if (hasRefs(output)) {
122
+ childLogger.warn("The plan contains the 'saveRefs' and/or 'resolveRefs' properties. These properties will be ignored and can be removed.");
123
+ }
124
+ if (!hasOnlySimpleFiles(output)) {
125
+ throw messages.createError('error.NonStringFiles');
126
+ }
127
+ return planContents;
128
+ }
129
+ catch (err) {
130
+ if (err instanceof Error && err.name === 'ValidationSchemaFieldError') {
131
+ throw messages.createError('error.InvalidDataImport', [planPath, err.message]);
132
+ }
133
+ else if (err instanceof Error) {
134
+ throw SfError.wrap(err);
135
+ }
136
+ throw err;
137
+ }
138
+ };
139
+ const matchesRefFilter = (unresolvedRefRegex) => (v) => typeof v === 'string' && unresolvedRefRegex.test(v);
140
+ const hasOnlySimpleFiles = (planParts) => planParts.every((p) => p.files.every((f) => typeof f === 'string'));
141
+ const hasRefs = (planParts) => planParts.some((p) => p.saveRefs !== undefined || p.resolveRefs !== undefined);
142
+ // TODO: change this implementation to use Object.groupBy when it's on all supported node versions
143
+ const filterUnresolved = (records) => ({
144
+ resolved: records.filter((r) => !hasUnresolvedRefs([r])),
145
+ unresolved: records.filter((r) => hasUnresolvedRefs([r])),
146
+ });
147
+ /** given the 2 parameters that can change, break the recursion if asked to do an operation that's already been done */
148
+ const addFingerprint = (resultsSoFar) => (planParts) => {
149
+ const fingerprint = hashObject({ resultsSoFar, planParts });
150
+ if (resultsSoFar.fingerprints.has(fingerprint)) {
151
+ const unresolved = planParts[0].records.map(Object.values).flat().filter(isString).filter(isUnresolvedRef);
152
+ const e = messages.createError('error.UnresolvableRefs', [
153
+ planParts[0].filePath,
154
+ unresolved.map((s) => `- ${s}`).join(EOL),
155
+ ]);
156
+ e.setData(resultsSoFar.results);
157
+ throw e;
158
+ }
159
+ return { ...resultsSoFar, fingerprints: resultsSoFar.fingerprints.add(fingerprint) };
160
+ };
161
+ const hashObject = (obj) => createHash('sha256')
162
+ .update(Buffer.from(JSON.stringify(obj)))
163
+ .digest('hex');
164
+ //# sourceMappingURL=importPlan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importPlan.js","sourceRoot":"","sources":["../../../../src/api/data/tree/importPlan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=importTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importTypes.js","sourceRoot":"","sources":["../../../../src/api/data/tree/importTypes.ts"],"names":[],"mappings":""}
@@ -40,33 +40,44 @@ export class BulkDataRequestCache extends TTLConfig {
40
40
  if (!useMostRecent && !bulkJobId) {
41
41
  throw messages.createError('bulkRequestIdRequiredWhenNotUsingMostRecent');
42
42
  }
43
- const resumeOptions = {
44
- options: {
45
- operation: 'query',
46
- query: '',
47
- pollingOptions: { pollTimeout: 0, pollInterval: 0 },
48
- },
43
+ const resumeOptionsOptions = {
44
+ operation: 'query',
45
+ query: '',
46
+ pollingOptions: { pollTimeout: 0, pollInterval: 0 },
49
47
  };
50
48
  if (useMostRecent) {
51
49
  const key = this.getLatestKey();
52
50
  if (key) {
51
+ // key definitely exists because it came from the cache
53
52
  const entry = this.get(key);
54
- resumeOptions.options.connection = (await Org.create({ aliasOrUsername: entry.username })).getConnection(apiVersion);
55
- resumeOptions.jobInfo = { id: entry.jobId };
56
- return resumeOptions;
53
+ return {
54
+ jobInfo: { id: entry.jobId },
55
+ options: {
56
+ ...resumeOptionsOptions,
57
+ connection: (await Org.create({ aliasOrUsername: entry.username })).getConnection(apiVersion),
58
+ },
59
+ };
57
60
  }
58
61
  }
59
62
  if (bulkJobId) {
60
63
  const entry = this.get(bulkJobId);
61
64
  if (entry) {
62
- resumeOptions.options.connection = (await Org.create({ aliasOrUsername: entry.username })).getConnection(apiVersion);
63
- resumeOptions.jobInfo = { id: entry.jobId };
64
- return resumeOptions;
65
+ return {
66
+ jobInfo: { id: entry.jobId },
67
+ options: {
68
+ ...resumeOptionsOptions,
69
+ connection: (await Org.create({ aliasOrUsername: entry.username })).getConnection(apiVersion),
70
+ },
71
+ };
65
72
  }
66
73
  else if (org) {
67
- resumeOptions.options.connection = org.getConnection(apiVersion);
68
- resumeOptions.jobInfo = { id: bulkJobId };
69
- return resumeOptions;
74
+ return {
75
+ jobInfo: { id: bulkJobId },
76
+ options: {
77
+ ...resumeOptionsOptions,
78
+ connection: org.getConnection(apiVersion),
79
+ },
80
+ };
70
81
  }
71
82
  else {
72
83
  throw messages.createError('cannotCreateResumeOptionsWithoutAnOrg');
@@ -1 +1 @@
1
- {"version":3,"file":"bulkDataRequestCache.js","sourceRoot":"","sources":["../src/bulkDataRequestCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bulkDataRequestCache.js","sourceRoot":"","sources":["../src/bulkDataRequestCache.ts"],"names":[],"mappings":"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"}
package/lib/bulkUtils.js CHANGED
@@ -7,9 +7,8 @@
7
7
  import { Messages } from '@salesforce/core';
8
8
  Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
9
9
  const messages = Messages.loadMessages('@salesforce/plugin-data', 'messages');
10
- export const POLL_FREQUENCY_MS = 5000;
10
+ const POLL_FREQUENCY_MS = 5000;
11
11
  export const isBulkV2RequestDone = (jobInfo) => ['Aborted', 'Failed', 'JobComplete'].includes(jobInfo.state);
12
- export const didBulkV2RequestJobFail = (jobInfo) => ['Aborted', 'Failed'].includes(jobInfo.state);
13
12
  export const transformResults = (results) => ({
14
13
  successfulResults: results.successfulResults.map((record) => record),
15
14
  failedResults: results.failedResults.map((record) => record),
@@ -1 +1 @@
1
- {"version":3,"file":"bulkUtils.js","sourceRoot":"","sources":["../src/bulkUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAc,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGxD,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAkB,EAAW,EAAE,CACjE,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAkB,EAAW,EAAE,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEtH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAmC,EAAiB,EAAE,CAAC,CAAC;IACvF,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAA0C,CAAC;IACxG,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAA0C,CAAC;IAChG,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAA0C,CAAC;CAC3G,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,WAAmB,EAAE,UAAsB,EAAiB,EAAE;IACtG,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;IACnD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,GAAyC,EAAE,IAAY,EAAiB,EAAE;IAC5G,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACb,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,MAAM,aAAa,GAAG,CAAC,aAAa,IAAI,iBAAiB,CAAC,CAAC;YAC3D,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC/D,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,YAAY,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"bulkUtils.js","sourceRoot":"","sources":["../src/bulkUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAc,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAGxD,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,UAAU,CAAC,CAAC;AAE9E,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAkB,EAAW,EAAE,CACjE,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAmC,EAAiB,EAAE,CAAC,CAAC;IACvF,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAA0C,CAAC;IACxG,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAA0C,CAAC;IAChG,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAA0C,CAAC;CAC3G,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,WAAmB,EAAE,UAAsB,EAAiB,EAAE;IACtG,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;IACnD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,GAAyC,EAAE,IAAY,EAAiB,EAAE;IAC5G,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACb,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,MAAM,aAAa,GAAG,CAAC,aAAa,IAAI,iBAAiB,CAAC,CAAC;YAC3D,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC/D,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,YAAY,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,55 @@
1
+ /*
2
+ * Copyright (c) 2020, salesforce.com, inc.
3
+ * All rights reserved.
4
+ * Licensed under the BSD 3-Clause license.
5
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
6
+ */
7
+ import { Messages } from '@salesforce/core';
8
+ import { SfCommand, Flags, Ux } from '@salesforce/sf-plugins-core';
9
+ import { orgFlags, prefixValidation } from '../../../../flags.js';
10
+ import { runExport } from '../../../../export.js';
11
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
12
+ const messages = Messages.loadMessages('@salesforce/plugin-data', 'tree.export');
13
+ export default class Export extends SfCommand {
14
+ static summary = messages.getMessage('summary');
15
+ static description = messages.getMessage('description');
16
+ static examples = messages.getMessages('examples');
17
+ // TODO: when you remove the beta state, put the force: aliases back in
18
+ static state = 'beta';
19
+ static flags = {
20
+ ...orgFlags,
21
+ query: Flags.string({
22
+ char: 'q',
23
+ summary: messages.getMessage('flags.query.summary'),
24
+ required: true,
25
+ }),
26
+ plan: Flags.boolean({
27
+ char: 'p',
28
+ summary: messages.getMessage('flags.plan.summary'),
29
+ }),
30
+ prefix: Flags.string({
31
+ char: 'x',
32
+ summary: messages.getMessage('flags.prefix.summary'),
33
+ parse: prefixValidation,
34
+ }),
35
+ 'output-dir': Flags.directory({
36
+ char: 'd',
37
+ summary: messages.getMessage('flags.output-dir.summary'),
38
+ aliases: ['outputdir'],
39
+ deprecateAliases: true,
40
+ }),
41
+ };
42
+ async run() {
43
+ const { flags } = await this.parse(Export);
44
+ const exportConfig = {
45
+ outputDir: flags['output-dir'],
46
+ plan: flags.plan,
47
+ prefix: flags.prefix,
48
+ query: flags.query,
49
+ conn: flags['target-org'].getConnection(flags['api-version']),
50
+ ux: new Ux({ jsonEnabled: this.jsonEnabled() }),
51
+ };
52
+ return runExport(exportConfig);
53
+ }
54
+ }
55
+ //# sourceMappingURL=tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../../src/commands/data/export/beta/tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAgB,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGhE,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;AAEjF,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAmD;IAC9E,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACnE,uEAAuE;IAChE,MAAM,CAAU,KAAK,GAAG,MAAM,CAAC;IAE/B,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,QAAQ;QACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACnD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;SACnD,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,sBAAsB,CAAC;YACpD,KAAK,EAAE,gBAAgB;SACxB,CAAC;QACF,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;YAC5B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;YACxD,OAAO,EAAE,CAAC,WAAW,CAAC;YACtB,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,YAAY,GAAiB;YACjC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC7D,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;SAChD,CAAC;QACF,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC"}
@@ -39,6 +39,7 @@ export default class Export extends SfCommand {
39
39
  }),
40
40
  };
41
41
  async run() {
42
+ this.info('Try the the new "sf data export beta tree" command. It support SOQL queries with up to 5 levels of objects!');
42
43
  const { flags } = await this.parse(Export);
43
44
  const ux = new Ux({ jsonEnabled: this.jsonEnabled() });
44
45
  const exportApi = new ExportApi(flags['target-org'], ux);
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../src/commands/data/export/tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAgB,MAAM,qCAAqC,CAAC;AAG9E,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;AAEjF,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAmD;IAC9E,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,CAAU,OAAO,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACrD,MAAM,CAAU,gBAAgB,GAAG,IAAI,CAAC;IAExC,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,QAAQ;QACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACnD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;SACnD,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,sBAAsB,CAAC;SACrD,CAAC;QACF,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;YAC5B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;YACxD,OAAO,EAAE,CAAC,WAAW,CAAC;YACtB,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,YAAY,GAAiB;YACjC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;QACF,OAAO,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC"}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../src/commands/data/export/tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAgB,MAAM,qCAAqC,CAAC;AAG9E,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;AAEjF,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAmD;IAC9E,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,CAAU,OAAO,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACrD,MAAM,CAAU,gBAAgB,GAAG,IAAI,CAAC;IAExC,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,QAAQ;QACX,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACnD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;SACnD,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,sBAAsB,CAAC;SACrD,CAAC;QACF,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;YAC5B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,0BAA0B,CAAC;YACxD,OAAO,EAAE,CAAC,WAAW,CAAC;YACtB,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,IAAI,CAAC,IAAI,CACP,8GAA8G,CAC/G,CAAC;QAEF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,YAAY,GAAiB;YACjC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;QACF,OAAO,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC"}
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Copyright (c) 2020, salesforce.com, inc.
3
+ * All rights reserved.
4
+ * Licensed under the BSD 3-Clause license.
5
+ * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause
6
+ */
7
+ import { Messages } from '@salesforce/core';
8
+ import { SfCommand, Flags, arrayWithDeprecation } from '@salesforce/sf-plugins-core';
9
+ import { importFromPlan } from '../../../../api/data/tree/importPlan.js';
10
+ import { importFromFiles } from '../../../../api/data/tree/importFiles.js';
11
+ import { orgFlags } from '../../../../flags.js';
12
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
13
+ const messages = Messages.loadMessages('@salesforce/plugin-data', 'tree.import.beta');
14
+ /**
15
+ * Command that provides data import capability via the SObject Tree Save API.
16
+ */
17
+ export default class Import extends SfCommand {
18
+ static summary = messages.getMessage('summary');
19
+ static description = messages.getMessage('description');
20
+ static examples = messages.getMessages('examples');
21
+ // TODO: when you remove the beta state, put the force: aliases back in
22
+ static state = 'beta';
23
+ static flags = {
24
+ ...orgFlags,
25
+ files: arrayWithDeprecation({
26
+ char: 'f',
27
+ summary: messages.getMessage('flags.files.summary'),
28
+ exactlyOne: ['files', 'plan'],
29
+ aliases: ['sobjecttreefiles'],
30
+ deprecateAliases: true,
31
+ }),
32
+ plan: Flags.file({
33
+ char: 'p',
34
+ summary: messages.getMessage('flags.plan.summary'),
35
+ exactlyOne: ['files', 'plan'],
36
+ exists: true,
37
+ }),
38
+ };
39
+ async run() {
40
+ const { flags } = await this.parse(Import);
41
+ const conn = flags['target-org'].getConnection(flags['api-version']);
42
+ const results = flags.plan ? await importFromPlan(conn, flags.plan) : await importFromFiles(conn, flags.files);
43
+ this.styledHeader('Import Results');
44
+ this.table(results, {
45
+ refId: { header: 'Reference ID' },
46
+ type: { header: 'Type' },
47
+ id: { header: 'ID' },
48
+ });
49
+ return results;
50
+ }
51
+ }
52
+ //# sourceMappingURL=tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../../src/commands/data/import/beta/tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,kBAAkB,CAAC,CAAC;AAEtF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAyB;IACpD,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAEnE,uEAAuE;IAChE,MAAM,CAAU,KAAK,GAAG,MAAM,CAAC;IAE/B,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,QAAQ;QACX,KAAK,EAAE,oBAAoB,CAAC;YAC1B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACnD,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;YAC7B,OAAO,EAAE,CAAC,kBAAkB,CAAC;YAC7B,gBAAgB,EAAE,IAAI;SACvB,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAClD,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;YAC7B,MAAM,EAAE,IAAI;SACb,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE3C,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/G,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAClB,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;YACjC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;YACxB,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;SACrB,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC"}
@@ -40,12 +40,15 @@ export default class Import extends SfCommand {
40
40
  hidden: true,
41
41
  aliases: ['contenttype'],
42
42
  deprecateAliases: true,
43
+ deprecated: { message: messages.getMessage('flags.content-type.deprecation') },
43
44
  }),
44
45
  // displays the schema for a data import plan
45
46
  'config-help': Flags.boolean({
46
47
  summary: messages.getMessage('flags.config-help.summary'),
47
48
  aliases: ['confighelp'],
48
49
  deprecateAliases: true,
50
+ hidden: true,
51
+ deprecated: { message: messages.getMessage('flags.config-help.deprecation') },
49
52
  }),
50
53
  };
51
54
  async run() {
@@ -73,6 +76,7 @@ export default class Import extends SfCommand {
73
76
  type: { header: 'Type' },
74
77
  id: { header: 'ID' },
75
78
  });
79
+ this.info('Be sure to check out the new "sf data import beta tree". It handles more records and objects with lookups to the same object (ex: parent account)');
76
80
  return processedResult;
77
81
  }
78
82
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../src/commands/data/import/tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAW,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EAAE,SAAS,EAAgB,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC5D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;AAQjF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAmC;IAC9D,MAAM,CAAU,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,CAAU,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IACjE,MAAM,CAAU,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,CAAU,OAAO,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACrD,MAAM,CAAU,gBAAgB,GAAG,IAAI,CAAC;IAExC,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,QAAQ;QACX,KAAK,EAAE,oBAAoB,CAAC;YAC1B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;YACnD,SAAS,EAAE,CAAC,MAAM,CAAC;YACnB,OAAO,EAAE,CAAC,kBAAkB,CAAC;YAC7B,gBAAgB,EAAE,IAAI;SACvB,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAClD,MAAM,EAAE,IAAI;SACb,CAAC;QACF,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC;YAC3B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,4BAA4B,CAAC;YAC1D,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,CAAC,aAAa,CAAC;YACxB,gBAAgB,EAAE,IAAI;SACvB,CAAC;QACF,6CAA6C;QAC7C,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC;YAC3B,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,2BAA2B,CAAC;YACzD,OAAO,EAAE,CAAC,YAAY,CAAC;YACvB,gBAAgB,EAAE,IAAI;SACvB,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,SAAS,CAC7B,KAAK,CAAC,YAAY,CAAC,EACnB,IAAI,CAAC,MAAM,CAAC,GAAG,EACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,IAAI,GAAG,CAC9C,CAAC;QAEF,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YACzB,iCAAiC;YACjC,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;YAE7C,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,YAAY,GAAiB;YACjC,gBAAgB,EAAE,KAAK,CAAC,KAAK;YAC7B,WAAW,EAAE,KAAK,CAAC,cAAc,CAAC;YAClC,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC;QAEF,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAE3D,MAAM,eAAe,GAAmB,CAAC,aAAa,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACrF,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC/E,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;YAC1B,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;YACjC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;YACxB,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;SACrB,CAAC,CAAC;QACH,OAAO,eAAe,CAAC;IACzB,CAAC"}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../src/commands/data/import/tree.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,13 @@ export var FieldType;
10
10
  FieldType[FieldType["subqueryField"] = 1] = "subqueryField";
11
11
  FieldType[FieldType["functionField"] = 2] = "functionField";
12
12
  })(FieldType || (FieldType = {}));
13
+ /** element: a field value from the sobject. Empty arrays return true */
13
14
  export const hasNestedRecords = (element) => Array.isArray(element?.records);
15
+ /** element: a field value from the sobject. Empty arrays return false */
16
+ export const hasNonEmptyNestedRecords = (element) => hasNestedRecords(element) && element.records.length > 0;
17
+ /** convenience method for filtering Object.entries array */
18
+ export const hasNestedRecordsFilter = (entry) => typeof entry[0] === 'string' && hasNonEmptyNestedRecords(entry[1]);
14
19
  export const isAttributesElement = (element) => !!element.referenceId && !!element.type;
20
+ /** convenience method for filtering Object.entries array */
21
+ export const isAttributesEntry = (entry) => entry[0] === 'attributes' && isAttributesElement(entry[1]);
15
22
  //# sourceMappingURL=dataSoqlQueryTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataSoqlQueryTypes.js","sourceRoot":"","sources":["../src/dataSoqlQueryTypes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,2CAAK,CAAA;IACL,2DAAa,CAAA;IACb,2DAAa,CAAA;AACf,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAoDD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAI,OAAgB,EAA+B,EAAE,CACnF,KAAK,CAAC,OAAO,CAAE,OAA4B,EAAE,OAAO,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAA6C,EAAE,CACjG,CAAC,CAAE,OAA0C,CAAC,WAAW,IAAI,CAAC,CAAE,OAA0C,CAAC,IAAI,CAAC"}
1
+ {"version":3,"file":"dataSoqlQueryTypes.js","sourceRoot":"","sources":["../src/dataSoqlQueryTypes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,2CAAK,CAAA;IACL,2DAAa,CAAA;IACb,2DAAa,CAAA;AACf,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAkDD,yEAAyE;AACzE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAI,OAAgB,EAAoC,EAAE,CACxF,KAAK,CAAC,OAAO,CAAE,OAAiC,EAAE,OAAO,CAAC,CAAC;AAE7D,0EAA0E;AAC1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAI,OAAgB,EAAoC,EAAE,CAChG,gBAAgB,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AAE1D,4DAA4D;AAC5D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAI,KAAwB,EAA4C,EAAE,CAC9G,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAErE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAgB,EAA6C,EAAE,CACjG,CAAC,CAAE,OAA0C,CAAC,WAAW,IAAI,CAAC,CAAE,OAA0C,CAAC,IAAI,CAAC;AAElH,4DAA4D;AAC5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAwB,EAA2D,EAAE,CACrH,KAAK,CAAC,CAAC,CAAC,KAAK,YAAY,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}