@simplysf/simply-data 2.3.16 → 2.3.21
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/LICENSE.txt +1 -1
- package/README.md +11 -6
- package/lib/commands/simply/data/file/upload.d.ts +2 -2
- package/lib/commands/simply/data/file/upload.js +4 -7
- package/lib/commands/simply/data/file/upload.js.map +1 -1
- package/lib/commands/simply/data/files/download.d.ts +2 -2
- package/lib/commands/simply/data/files/download.js +4 -7
- package/lib/commands/simply/data/files/download.js.map +1 -1
- package/lib/commands/simply/data/files/upload.d.ts +2 -2
- package/lib/commands/simply/data/files/upload.js +4 -7
- package/lib/commands/simply/data/files/upload.js.map +1 -1
- package/lib/common/contentVersionTypes.js +1 -1
- package/lib/common/contentVersionUtils.js +1 -1
- package/lib/index.js +1 -1
- package/messages/simply.data.file.upload.md +0 -4
- package/messages/simply.data.files.download.md +0 -4
- package/messages/simply.data.files.upload.md +0 -4
- package/package.json +5 -4
package/LICENSE.txt
CHANGED
package/README.md
CHANGED
|
@@ -19,9 +19,10 @@ This package is part of the [`@simplysf/simply`](https://github.com/SimplySF/sim
|
|
|
19
19
|
## Commands
|
|
20
20
|
|
|
21
21
|
<!-- commands -->
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
|
|
23
|
+
- [`sf simply data file upload`](#sf-simply-data-file-upload)
|
|
24
|
+
- [`sf simply data files download`](#sf-simply-data-files-download)
|
|
25
|
+
- [`sf simply data files upload`](#sf-simply-data-files-upload)
|
|
25
26
|
|
|
26
27
|
## `sf simply data file upload`
|
|
27
28
|
|
|
@@ -55,7 +56,7 @@ EXAMPLES
|
|
|
55
56
|
$ sf simply data file upload --file-path fileToUpload.txt --first-publish-location-id 0019000000DmehK --target-org myTargetOrg
|
|
56
57
|
```
|
|
57
58
|
|
|
58
|
-
_See code: [lib/commands/simply/data/file/upload.js](https://github.com/SimplySF/simply-node/blob/@simplysf/simply-data@2.3.
|
|
59
|
+
_See code: [lib/commands/simply/data/file/upload.js](https://github.com/SimplySF/simply-node/blob/@simplysf/simply-data@2.3.9/packages/simply-data/lib/commands/simply/data/file/upload.js)_
|
|
59
60
|
|
|
60
61
|
## `sf simply data files download`
|
|
61
62
|
|
|
@@ -100,7 +101,7 @@ FLAG DESCRIPTIONS
|
|
|
100
101
|
Provide a WHERE clause to allow the plugin to specify which ContentVersion records should be downloaded.
|
|
101
102
|
```
|
|
102
103
|
|
|
103
|
-
_See code: [lib/commands/simply/data/files/download.js](https://github.com/SimplySF/simply-node/blob/@simplysf/simply-data@2.3.
|
|
104
|
+
_See code: [lib/commands/simply/data/files/download.js](https://github.com/SimplySF/simply-node/blob/@simplysf/simply-data@2.3.9/packages/simply-data/lib/commands/simply/data/files/download.js)_
|
|
104
105
|
|
|
105
106
|
## `sf simply data files upload`
|
|
106
107
|
|
|
@@ -145,5 +146,9 @@ FLAG DESCRIPTIONS
|
|
|
145
146
|
quasi concurrent uploads. Please note that setting this value too high can cause performance issues.
|
|
146
147
|
```
|
|
147
148
|
|
|
148
|
-
_See code: [lib/commands/simply/data/files/upload.js](https://github.com/SimplySF/simply-node/blob/@simplysf/simply-data@2.3.
|
|
149
|
+
_See code: [lib/commands/simply/data/files/upload.js](https://github.com/SimplySF/simply-node/blob/@simplysf/simply-data@2.3.9/packages/simply-data/lib/commands/simply/data/files/upload.js)_
|
|
149
150
|
<!-- commandsstop -->
|
|
151
|
+
|
|
152
|
+
## License
|
|
153
|
+
|
|
154
|
+
Licensed under the [Apache-2.0](https://raw.githubusercontent.com/SimplySF/simply-node/main/LICENSE.txt) license.
|
|
@@ -6,11 +6,11 @@ export default class DataFileUpload extends SfCommand<ContentVersion> {
|
|
|
6
6
|
static readonly description: string;
|
|
7
7
|
static readonly examples: string[];
|
|
8
8
|
static readonly flags: {
|
|
9
|
-
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
9
|
'file-path': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
'first-publish-location-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
11
|
title: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined>;
|
|
13
|
+
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org>;
|
|
14
14
|
'flags-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
};
|
|
16
16
|
/** @returns The created `ContentVersion`. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c) 2026, Clay Chipps
|
|
2
|
+
* Copyright (c) 2026, Clay Chipps.
|
|
3
3
|
*
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { Messages } from '@salesforce/core';
|
|
17
17
|
import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
18
|
+
import { requireConnection, targetOrgFlags } from '@simplysf/simply-plugin-kit';
|
|
18
19
|
import { uploadContentVersion } from '../../../../common/contentVersionUtils.js';
|
|
19
20
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
20
21
|
const messages = Messages.loadMessages('@simplysf/simply-data', 'simply.data.file.upload');
|
|
@@ -25,7 +26,7 @@ export default class DataFileUpload extends SfCommand {
|
|
|
25
26
|
static examples = messages.getMessages('examples');
|
|
26
27
|
static flags = {
|
|
27
28
|
...SfCommand.baseFlags,
|
|
28
|
-
|
|
29
|
+
...targetOrgFlags,
|
|
29
30
|
'file-path': Flags.directory({
|
|
30
31
|
summary: messages.getMessage('flags.file-path.summary'),
|
|
31
32
|
required: true,
|
|
@@ -33,7 +34,6 @@ export default class DataFileUpload extends SfCommand {
|
|
|
33
34
|
'first-publish-location-id': Flags.string({
|
|
34
35
|
summary: messages.getMessage('flags.first-publish-location-id.summary'),
|
|
35
36
|
}),
|
|
36
|
-
'target-org': Flags.requiredOrg(),
|
|
37
37
|
title: Flags.string({
|
|
38
38
|
summary: messages.getMessage('flags.title.summary'),
|
|
39
39
|
}),
|
|
@@ -42,10 +42,7 @@ export default class DataFileUpload extends SfCommand {
|
|
|
42
42
|
async run() {
|
|
43
43
|
const { flags } = await this.parse(DataFileUpload);
|
|
44
44
|
// Authorize to the target org
|
|
45
|
-
const targetOrgConnection =
|
|
46
|
-
if (!targetOrgConnection) {
|
|
47
|
-
throw messages.createError('error.targetOrgConnectionFailed');
|
|
48
|
-
}
|
|
45
|
+
const targetOrgConnection = requireConnection(flags);
|
|
49
46
|
this.spinner.start('Uploading file', '', { stdout: true });
|
|
50
47
|
const contentVersion = await uploadContentVersion(targetOrgConnection, flags['file-path'], flags['title'], flags['first-publish-location-id']);
|
|
51
48
|
this.spinner.stop();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../../src/commands/simply/data/file/upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAGjF,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,uBAAuB,EAAE,yBAAyB,CAAC,CAAC;AAE3F,6EAA6E;AAC7E,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,SAAyB;IAC5D,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;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,SAAS,CAAC,SAAS;QACtB,
|
|
1
|
+
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../../src/commands/simply/data/file/upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAGjF,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,uBAAuB,EAAE,yBAAyB,CAAC,CAAC;AAE3F,6EAA6E;AAC7E,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,SAAyB;IAC5D,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;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,SAAS,CAAC,SAAS;QACtB,GAAG,cAAc;QACjB,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;YAC3B,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,yBAAyB,CAAC;YACvD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,2BAA2B,EAAE,KAAK,CAAC,MAAM,CAAC;YACxC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,yCAAyC,CAAC;SACxE,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;SACpD,CAAC;KACH,CAAC;IAEF,6CAA6C;IACtC,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEnD,8BAA8B;QAC9B,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAE3D,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAC/C,mBAAmB,EACnB,KAAK,CAAC,WAAW,CAAC,EAClB,KAAK,CAAC,OAAO,CAAC,EACd,KAAK,CAAC,2BAA2B,CAAC,CACnC,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEpB,OAAO,cAAc,CAAC;IACxB,CAAC"}
|
|
@@ -12,10 +12,10 @@ export default class DataFilesDownload extends SfCommand<void> {
|
|
|
12
12
|
static readonly description: string;
|
|
13
13
|
static readonly examples: string[];
|
|
14
14
|
static readonly flags: {
|
|
15
|
-
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
15
|
'max-parallel-jobs': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
-
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
16
|
'where-content-version': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined>;
|
|
18
|
+
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org>;
|
|
19
19
|
'flags-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
20
|
};
|
|
21
21
|
run(): Promise<void>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c) 2026, Clay Chipps
|
|
2
|
+
* Copyright (c) 2026, Clay Chipps.
|
|
3
3
|
*
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
@@ -17,6 +17,7 @@ import fs from 'node:fs';
|
|
|
17
17
|
import PQueue from 'p-queue';
|
|
18
18
|
import { Messages } from '@salesforce/core';
|
|
19
19
|
import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
20
|
+
import { requireConnection, targetOrgFlags } from '@simplysf/simply-plugin-kit';
|
|
20
21
|
import { createCsvFileWriter } from '@simplysf/simply-core';
|
|
21
22
|
import { downloadContentVersion } from '../../../../common/contentVersionUtils.js';
|
|
22
23
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
@@ -35,13 +36,12 @@ export default class DataFilesDownload extends SfCommand {
|
|
|
35
36
|
static examples = messages.getMessages('examples');
|
|
36
37
|
static flags = {
|
|
37
38
|
...SfCommand.baseFlags,
|
|
38
|
-
|
|
39
|
+
...targetOrgFlags,
|
|
39
40
|
'max-parallel-jobs': Flags.integer({
|
|
40
41
|
summary: messages.getMessage('flags.max-parallel-jobs.summary'),
|
|
41
42
|
description: messages.getMessage('flags.max-parallel-jobs.description'),
|
|
42
43
|
default: 1,
|
|
43
44
|
}),
|
|
44
|
-
'target-org': Flags.requiredOrg(),
|
|
45
45
|
'where-content-version': Flags.string({
|
|
46
46
|
summary: messages.getMessage('flags.where-content-version.summary'),
|
|
47
47
|
description: messages.getMessage('flags.where-content-version.description'),
|
|
@@ -51,10 +51,7 @@ export default class DataFilesDownload extends SfCommand {
|
|
|
51
51
|
async run() {
|
|
52
52
|
const { flags } = await this.parse(DataFilesDownload);
|
|
53
53
|
// Authorize to the target org
|
|
54
|
-
const targetOrgConnection =
|
|
55
|
-
if (!targetOrgConnection) {
|
|
56
|
-
throw messages.createError('error.targetOrgConnectionFailed');
|
|
57
|
-
}
|
|
54
|
+
const targetOrgConnection = requireConnection(flags);
|
|
58
55
|
this.spinner.start('Querying for files', '\n', { stdout: true });
|
|
59
56
|
const result = await targetOrgConnection.query(`SELECT ContentDocumentId, ContentSize, Description, FileExtension, FileType, FirstPublishLocationId, Id, IsLatest, PathOnClient, Title FROM ContentVersion WHERE ${flags['where-content-version']}`, {
|
|
60
57
|
autoFetch: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download.js","sourceRoot":"","sources":["../../../../../src/commands/simply/data/files/download.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAGnF,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,uBAAuB,EAAE,4BAA4B,CAAC,CAAC;AAE9F;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,SAAe;IACrD,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;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,SAAS,CAAC,SAAS;QACtB,
|
|
1
|
+
{"version":3,"file":"download.js","sourceRoot":"","sources":["../../../../../src/commands/simply/data/files/download.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +13,10 @@ export default class DataFilesUpload extends SfCommand<void> {
|
|
|
13
13
|
static readonly description: string;
|
|
14
14
|
static readonly examples: string[];
|
|
15
15
|
static readonly flags: {
|
|
16
|
-
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
16
|
'file-path': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
17
|
'max-parallel-jobs': import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
-
'
|
|
18
|
+
'api-version': import("@oclif/core/interfaces").OptionFlag<string | undefined>;
|
|
19
|
+
'target-org': import("@oclif/core/interfaces").OptionFlag<import("@salesforce/core").Org>;
|
|
20
20
|
'flags-dir': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
21
|
};
|
|
22
22
|
run(): Promise<void>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c) 2026, Clay Chipps
|
|
2
|
+
* Copyright (c) 2026, Clay Chipps.
|
|
3
3
|
*
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
@@ -18,6 +18,7 @@ import { parse } from 'csv-parse';
|
|
|
18
18
|
import PQueue from 'p-queue';
|
|
19
19
|
import { Messages } from '@salesforce/core';
|
|
20
20
|
import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
|
|
21
|
+
import { requireConnection, targetOrgFlags } from '@simplysf/simply-plugin-kit';
|
|
21
22
|
import { createCsvFileWriter } from '@simplysf/simply-core';
|
|
22
23
|
import { uploadContentVersion } from '../../../../common/contentVersionUtils.js';
|
|
23
24
|
Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
|
|
@@ -37,7 +38,7 @@ export default class DataFilesUpload extends SfCommand {
|
|
|
37
38
|
static examples = messages.getMessages('examples');
|
|
38
39
|
static flags = {
|
|
39
40
|
...SfCommand.baseFlags,
|
|
40
|
-
|
|
41
|
+
...targetOrgFlags,
|
|
41
42
|
'file-path': Flags.directory({
|
|
42
43
|
summary: messages.getMessage('flags.file-path.summary'),
|
|
43
44
|
description: messages.getMessage('flags.file-path.description'),
|
|
@@ -48,15 +49,11 @@ export default class DataFilesUpload extends SfCommand {
|
|
|
48
49
|
description: messages.getMessage('flags.max-parallel-jobs.description'),
|
|
49
50
|
default: 1,
|
|
50
51
|
}),
|
|
51
|
-
'target-org': Flags.requiredOrg(),
|
|
52
52
|
};
|
|
53
53
|
async run() {
|
|
54
54
|
const { flags } = await this.parse(DataFilesUpload);
|
|
55
55
|
// Authorize to the target org
|
|
56
|
-
const targetOrgConnection =
|
|
57
|
-
if (!targetOrgConnection) {
|
|
58
|
-
throw messages.createError('error.targetOrgConnectionFailed');
|
|
59
|
-
}
|
|
56
|
+
const targetOrgConnection = requireConnection(flags);
|
|
60
57
|
this.spinner.start('Initializing file upload', '\n', { stdout: true });
|
|
61
58
|
if (!fs.existsSync('upload')) {
|
|
62
59
|
fs.mkdirSync('upload');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../../src/commands/simply/data/files/upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAGjF,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,CAAC;AAE5F;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,SAAe;IACnD,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;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,SAAS,CAAC,SAAS;QACtB,
|
|
1
|
+
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../../src/commands/simply/data/files/upload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAClC,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAGjF,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,CAAC;AAE5F;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,SAAe;IACnD,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;IAE5D,MAAM,CAAU,KAAK,GAAG;QAC7B,GAAG,SAAS,CAAC,SAAS;QACtB,GAAG,cAAc;QACjB,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC;YAC3B,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,yBAAyB,CAAC;YACvD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,6BAA6B,CAAC;YAC/D,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC;YACjC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,iCAAiC,CAAC;YAC/D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,qCAAqC,CAAC;YACvE,OAAO,EAAE,CAAC;SACX,CAAC;KACH,CAAC;IAEK,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAEpD,8BAA8B;QAC9B,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAErD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAEvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;QAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,oBAAoB,EAAE;YAC9D,cAAc;YACd,OAAO;YACP,wBAAwB;YACxB,mBAAmB;SACpB,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,mBAAmB,CAAC,kBAAkB,EAAE;YAC1D,cAAc;YACd,OAAO;YACP,wBAAwB;YACxB,OAAO;SACR,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEpB,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAE1E,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAEjG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAExE,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,KAAK,WAAW,SAAS,CAAC,IAAI,cAAc,SAAS,CAAC,OAAO,EAAE,CAAC;QACtG,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YAC7B,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,KAAK,WAAW,SAAS,CAAC,IAAI,cAAc,SAAS,CAAC,OAAO,EAAE,CAAC;QACtG,CAAC,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;YAClC,KAAK,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC5B,MAAM,sBAAsB,GAAG,MAAgC,CAAC;gBAChE,IAAI,CAAC;oBACH,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAC/C,mBAAmB,EACnB,sBAAsB,CAAC,YAAY,EACnC,sBAAsB,CAAC,KAAK,EAC5B,sBAAsB,CAAC,sBAAsB,CAC9C,CAAC;oBACF,sBAAsB,CAAC,iBAAiB,GAAG,cAAc,CAAC,iBAAiB,CAAC;oBAC5E,MAAM,aAAa,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBACpD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,sBAAsB,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC7C,MAAM,WAAW,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAE5D,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -23,7 +23,3 @@ Specify the title for the file being uploaded.
|
|
|
23
23
|
- <%= config.bin %> <%= command.id %> --file-path fileToUpload.txt --target-org myTargetOrg
|
|
24
24
|
|
|
25
25
|
- <%= config.bin %> <%= command.id %> --file-path fileToUpload.txt --first-publish-location-id 0019000000DmehK --target-org myTargetOrg
|
|
26
|
-
|
|
27
|
-
# error.targetOrgConnectionFailed
|
|
28
|
-
|
|
29
|
-
Unable to establish connection to the org.
|
|
@@ -27,7 +27,3 @@ Provide a WHERE clause to allow the plugin to specify which ContentVersion recor
|
|
|
27
27
|
- <%= config.bin %> <%= command.id %> --where-content-version "IsLatest=true" --target-org myTargetOrg
|
|
28
28
|
|
|
29
29
|
- <%= config.bin %> <%= command.id %> --where-content-version "IsLatest=true" --max-parallel-jobs 5 --target-org myTargetOrg
|
|
30
|
-
|
|
31
|
-
# error.targetOrgConnectionFailed
|
|
32
|
-
|
|
33
|
-
Unable to establish connection to the org.
|
|
@@ -27,7 +27,3 @@ By default the plugin will only process a single file upload at a time. You can
|
|
|
27
27
|
- <%= config.bin %> <%= command.id %> --file-path filesToUpload.csv --target-org myTargetOrg
|
|
28
28
|
|
|
29
29
|
- <%= config.bin %> <%= command.id %> --file-path filesToUpload.csv --max-parallel-jobs 5 --target-org myTargetOrg
|
|
30
|
-
|
|
31
|
-
# error.targetOrgConnectionFailed
|
|
32
|
-
|
|
33
|
-
Unable to establish connection to the org.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simplysf/simply-data",
|
|
3
3
|
"description": "Utilities for working with data",
|
|
4
|
-
"version": "2.3.
|
|
4
|
+
"version": "2.3.21",
|
|
5
5
|
"author": "@ClayChipps",
|
|
6
6
|
"homepage": "https://github.com/SimplySF/simply-node",
|
|
7
7
|
"bugs": "https://github.com/SimplySF/simply-node/issues",
|
|
@@ -65,7 +65,8 @@
|
|
|
65
65
|
"@salesforce/core": "^8.30.0",
|
|
66
66
|
"@salesforce/kit": "^3.2.6",
|
|
67
67
|
"@salesforce/sf-plugins-core": "^12.2.16",
|
|
68
|
-
"@simplysf/simply-core": "^1.1.
|
|
68
|
+
"@simplysf/simply-core": "^1.1.17",
|
|
69
|
+
"@simplysf/simply-plugin-kit": "^1.0.4",
|
|
69
70
|
"csv-parse": "^7.0.2",
|
|
70
71
|
"form-data": "^4.0.5",
|
|
71
72
|
"got": "14.6.6",
|
|
@@ -89,7 +90,7 @@
|
|
|
89
90
|
"lint": "wireit",
|
|
90
91
|
"test": "wireit",
|
|
91
92
|
"test:coverage": "vitest run --coverage --project simply-data",
|
|
92
|
-
"test:nuts": "vitest run --config vitest.nuts.config.ts --project simply-data",
|
|
93
|
+
"test:nuts": "vitest run --config ../../vitest.nuts.config.ts --project simply-data",
|
|
93
94
|
"test:only": "wireit",
|
|
94
95
|
"test:watch": "vitest watch --project simply-data",
|
|
95
96
|
"version": "oclif readme"
|
|
@@ -215,5 +216,5 @@
|
|
|
215
216
|
"output": []
|
|
216
217
|
}
|
|
217
218
|
},
|
|
218
|
-
"gitHead": "
|
|
219
|
+
"gitHead": "c1134ddedb7cd88cfdd28e5e9596c2d28028b2f3"
|
|
219
220
|
}
|