@esri/solution-common 5.2.2 → 5.2.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.
- package/dist/cjs/formHelpers.d.ts +41 -0
- package/dist/cjs/formHelpers.js +78 -0
- package/dist/cjs/formHelpers.js.map +1 -0
- package/dist/cjs/generalHelpers.d.ts +23 -2
- package/dist/cjs/generalHelpers.js +33 -3
- package/dist/cjs/generalHelpers.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/interfaces.d.ts +18 -0
- package/dist/cjs/interfaces.js.map +1 -1
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/templatization.js +4 -2
- package/dist/cjs/templatization.js.map +1 -1
- package/dist/cjs/workflowHelpers.js +2 -7
- package/dist/cjs/workflowHelpers.js.map +1 -1
- package/dist/cjs/zip-utils.d.ts +35 -24
- package/dist/cjs/zip-utils.js +77 -53
- package/dist/cjs/zip-utils.js.map +1 -1
- package/dist/esm/formHelpers.d.ts +41 -0
- package/dist/esm/formHelpers.js +71 -0
- package/dist/esm/formHelpers.js.map +1 -0
- package/dist/esm/generalHelpers.d.ts +23 -2
- package/dist/esm/generalHelpers.js +30 -3
- package/dist/esm/generalHelpers.js.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/interfaces.d.ts +18 -0
- package/dist/esm/interfaces.js.map +1 -1
- package/dist/esm/package.json +3 -0
- package/dist/esm/templatization.js +5 -3
- package/dist/esm/templatization.js.map +1 -1
- package/dist/esm/workflowHelpers.js +2 -7
- package/dist/esm/workflowHelpers.js.map +1 -1
- package/dist/esm/zip-utils.d.ts +35 -24
- package/dist/esm/zip-utils.js +69 -47
- package/dist/esm/zip-utils.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templatization.js","sourceRoot":"","sources":["../../src/templatization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"templatization.js","sourceRoot":"","sources":["../../src/templatization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAG5E,wHAAwH;AAExH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAW,eAAe,CAAC;AAEnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAC/B,0CAA0C,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,0DAA0D,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAW,uCAAuC,CAAC;AAE9E;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAC5B,2CAA2C,CAAC;AAE9C,MAAM,CAAC,MAAM,UAAU,GAAQ;IAC7B,oBAAoB,CAAC,GAAW,EAAE,GAAQ;QACxC,yGAAyG;QACzG,mGAAmG;QACnG,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,mBAAmB,IAAI,CAAC;IACzD,CAAC;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,QAAa;IAC1D,MAAM,YAAY,GAAG,yBAAyB,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3E,YAAY,CAAC,IAAI,GAAG;QAClB,GAAG,YAAY,CAAC,IAAI;QACpB,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,SAAS,EAAE,QAAQ,CAAC,SAAS;KAC9B,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,QAAa;IACzD,MAAM,YAAY,GAAG,yBAAyB,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3E,YAAY,CAAC,IAAI,GAAG;QAClB,GAAG,YAAY,CAAC,IAAI;QACpB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;QAC7C,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC;QAClC,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,gBAAgB,EAAE,SAAS;QAC3B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,GAAG,EAAE,QAAQ,CAAC,GAAG;KAClB,CAAC;IACF,IAAI,OAAO,QAAQ,CAAC,SAAS,KAAK,WAAW,EAAE;QAC7C,YAAY,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;KAC7C;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACvC,EAAU,EACV,IAAI,GAAG,EAAE;IAET,OAAO;QACL,MAAM,EAAE,EAAE;QACV,IAAI;QACJ,GAAG,EAAE,aAAa,EAAE;QACpB,IAAI,EAAE;YACJ,EAAE;YACF,IAAI;SACL;QACD,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,EAAE;QAChB,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,6BAA6B,EAAE,CAAC;KACjC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAA2B;IAChE,IAAI,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACpD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,CAAC,CAAC;KACV;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAClD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;KACrC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAA0B,EAC1B,EAAU;IAEV,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,OAAO,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;QACpC,OAAO,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAA0B,EAC1B,EAAU;IAEV,MAAM,SAAS,GAAG,uBAAuB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACzD,OAAO,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAS;IAC9C,MAAM,aAAa,GAAG,CAAC,CAAM,EAAE,EAAE;QAC/B,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,CAAC,CAAC;IACF,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,SAA0B;IAC9D,OAAO,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAa;IAC5C,MAAM,GAAG,GAAQ,QAAQ,CAAC,MAAM,CAAC;IACjC,OAAO,GAAG,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,wBAAwB,CAAC;AAC/B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,SAA0B,EAAE,EAAU;IACnE,MAAM,CAAC,GAAG,uBAAuB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,EAAE;QACV,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KACxB;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAa,EAAE,YAAiB;IAChE,OAAO,KAAK,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC7B,SAA0B,EAC1B,EAAU,EACV,QAAuB;IAEvB,MAAM,CAAC,GAAG,uBAAuB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,EAAE;QACV,SAAS,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;QACxB,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,OAAe,EACf,IAAY,EACZ,MAAM,GAAG,EAAE;IAEX,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,OAAO,CAAC;KAChB;IACD,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACtC,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,KAAa;IACnE,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;SAAM;QACL,OAAO,MAAM,CACX,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CACtE,CAAC;KACH;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAQ,EACR,MAAa,EACb,QAAgB,EAChB,iBAA0B,KAAK;IAE/B,IAAI,SAAS,GAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACrB,IAAI,UAAU,GAAW,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACrE,IAAI,CAAC,cAAc,EAAE;YACnB,UAAU,IAAI,QAAQ,CAAC;SACxB;QACD,SAAS,GAAG,SAAS,CAAC,OAAO;QAC3B,wDAAwD;QACxD,mIAAmI;QACnI,IAAI,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,EAC3B,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,CACtD,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,GAAQ;IACpC,2BAA2B;IAC3B,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAEpC,WAAW;IACX,MAAM,MAAM,GAAW,iBAAiB,CAAC;IACzC,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QACjC,iBAAiB;QACjB,MAAM,GAAG,GAAa,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACf,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACnC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;KAC7B;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -13,11 +13,6 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
/**
|
|
17
|
-
* Provides common functions compressing and decompressing workflow configurations.
|
|
18
|
-
*
|
|
19
|
-
* @module workflowHelpers
|
|
20
|
-
*/
|
|
21
16
|
import * as zipUtils from "./zip-utils";
|
|
22
17
|
import { createMimeTypedFile } from "./resources/copyDataIntoItem";
|
|
23
18
|
import { getAgoIdRegEx } from "./generalHelpers";
|
|
@@ -48,7 +43,7 @@ export async function compressWorkflowIntoZipFile(workflowConfig) {
|
|
|
48
43
|
* @returns Promise resolving with a workflow configuration as JSON object, with each file being a key
|
|
49
44
|
*/
|
|
50
45
|
export async function extractWorkflowFromZipFile(zipFile) {
|
|
51
|
-
const zippedFiles = await zipUtils.
|
|
46
|
+
const zippedFiles = await zipUtils.getZipObjectContents(await zipUtils.blobToZipObject(zipFile));
|
|
52
47
|
const workflowConfig = {};
|
|
53
48
|
zippedFiles.forEach((zippedFile) => {
|
|
54
49
|
workflowConfig[zippedFile.file] = zippedFile.content;
|
|
@@ -68,7 +63,7 @@ export async function extractAndTemplatizeWorkflowFromZipFile(zipFile) {
|
|
|
68
63
|
let workflowConfigStr = JSON.stringify(workflowConfig);
|
|
69
64
|
const matches = workflowConfigStr.match(getAgoIdRegEx()) || [];
|
|
70
65
|
matches.forEach((match) => {
|
|
71
|
-
workflowConfigStr = workflowConfigStr.replace(match, `{{${match}}}`);
|
|
66
|
+
workflowConfigStr = workflowConfigStr.replace(new RegExp(match, "g"), `{{${match}}}`);
|
|
72
67
|
});
|
|
73
68
|
return Promise.resolve(JSON.parse(workflowConfigStr));
|
|
74
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflowHelpers.js","sourceRoot":"","sources":["../../src/workflowHelpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"workflowHelpers.js","sourceRoot":"","sources":["../../src/workflowHelpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AASH,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,wHAAwH;AAExH;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,cAAmB;IAEnB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;IACxB,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE;QAClD,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,mBAAmB,CAAC;QAClC,IAAI,EAAE,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC/C,QAAQ,EAAE,4BAA4B;QACtC,QAAQ,EAAE,iBAAiB;KAC5B,CAAC,CAAA;IAEF,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAa;IAEb,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,oBAAoB,CAAC,MAAM,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjG,MAAM,cAAc,GAAQ,EAAE,CAAC;IAC/B,WAAW,CAAC,OAAO,CAAC,CAAC,UAA4C,EAAE,EAAE;QACnE,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAC3D,OAAa;IAEb,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAEjE,4CAA4C;IAC5C,IAAI,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,CAAC;IAC/D,OAAO,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,EAAE;QAChC,iBAAiB,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACxD,CAAC"}
|
package/dist/esm/zip-utils.d.ts
CHANGED
|
@@ -14,52 +14,63 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import JSZip from "jszip";
|
|
17
|
-
import
|
|
18
|
-
|
|
19
|
-
* Relative path and string contents of a file in a zip file.
|
|
20
|
-
*/
|
|
21
|
-
export interface IZipFileContent {
|
|
22
|
-
file: string;
|
|
23
|
-
content: string;
|
|
24
|
-
}
|
|
17
|
+
import * as interfaces from "./interfaces";
|
|
18
|
+
import { UserSession } from "./interfaces";
|
|
25
19
|
/**
|
|
26
20
|
* Converts a blob to a zip file.
|
|
27
21
|
*
|
|
28
22
|
* @param blob Blob to convert
|
|
29
|
-
* @returns Promise resolving to zip
|
|
23
|
+
* @returns Promise resolving to zip object
|
|
24
|
+
*/
|
|
25
|
+
export declare function blobToZipObject(blob: Blob): Promise<JSZip>;
|
|
26
|
+
/**
|
|
27
|
+
* Fetches a zip object.
|
|
28
|
+
*
|
|
29
|
+
* @param formZipFilePath Path to the zip file
|
|
30
|
+
* @param authentication Credentials to zip file
|
|
31
|
+
* @returns Promise resolving to zip object
|
|
32
|
+
*/
|
|
33
|
+
export declare function fetchZipObject(formZipFilePath: string, authentication: UserSession): Promise<JSZip>;
|
|
34
|
+
/**
|
|
35
|
+
* Gets the contents of the files in the zip.
|
|
36
|
+
*
|
|
37
|
+
* @param zip Zip file
|
|
38
|
+
* @param filesOfInterest Array of file names to extract from the zip file. If empty, all files are extracted.
|
|
39
|
+
* @returns Promise that resolves to an array of objects containing the file name and contents
|
|
30
40
|
*/
|
|
31
|
-
export declare function
|
|
41
|
+
export declare function getZipObjectContents(zipObject: JSZip, filesOfInterest?: string[]): Promise<interfaces.IZipObjectContentItem[]>;
|
|
32
42
|
/**
|
|
33
|
-
* Converts a JSON object to a zip.
|
|
43
|
+
* Converts a JSON object to a zip object.
|
|
34
44
|
*
|
|
35
45
|
* @param zippedFileName Name of the file in the zip
|
|
36
46
|
* @param zippedFileJson JSON object to convert
|
|
37
|
-
* @returns Promise resolving to zip
|
|
47
|
+
* @returns Promise resolving to zip object
|
|
38
48
|
*/
|
|
39
|
-
export declare function
|
|
49
|
+
export declare function jsonToZipObject(zippedFileName: string, zippedFileJson: any): Promise<JSZip>;
|
|
40
50
|
/**
|
|
41
51
|
* Converts a JSON object to a zip file.
|
|
42
52
|
*
|
|
43
53
|
* @param zippedFileName Name of the file in the zip file
|
|
44
54
|
* @param zippedFileJson JSON object to convert
|
|
55
|
+
* @param filename Name to use for zip file; ".zip" added if missing
|
|
45
56
|
* @returns Promise resolving to zip file
|
|
46
57
|
*/
|
|
47
58
|
export declare function jsonToZipFile(zippedFileName: string, zippedFileJson: any, filename: string): Promise<File>;
|
|
48
59
|
/**
|
|
49
|
-
*
|
|
60
|
+
* Extracts files of interest from a zip object, calls a supplied function to modify them, and
|
|
61
|
+
* restores the files into the zip object.
|
|
50
62
|
*
|
|
51
|
-
* @param
|
|
63
|
+
* @param modificationCallback Function that modifies the specified files
|
|
64
|
+
* @param zip Zip file that contains the files to modify; modified in place
|
|
52
65
|
* @param filesOfInterest Array of file names to extract from the zip file. If empty, all files are extracted.
|
|
53
|
-
* @returns Promise that resolves to
|
|
66
|
+
* @returns Promise that resolves to the modified zip file if the swizzle was successful
|
|
54
67
|
*/
|
|
55
|
-
export declare function
|
|
68
|
+
export declare function modifyFilesinZipObject(modificationCallback: (zipContentStr: interfaces.IZipObjectContentItem) => string, zipObject: JSZip, filesOfInterest?: string[]): Promise<JSZip>;
|
|
56
69
|
/**
|
|
57
|
-
*
|
|
70
|
+
* Converts a zip object to a zip file.
|
|
58
71
|
*
|
|
59
|
-
* @param
|
|
60
|
-
* @param
|
|
61
|
-
* @
|
|
62
|
-
* @param filesOfInterest Array of file names to extract from the zip file. If empty, all files are extracted.
|
|
63
|
-
* @returns Promise that resolves to the update item response
|
|
72
|
+
* @param zipObject Zip object
|
|
73
|
+
* @param filename Name to use for zip file; ".zip" added if missing
|
|
74
|
+
* @returns Promise resolving to zip file
|
|
64
75
|
*/
|
|
65
|
-
export declare function
|
|
76
|
+
export declare function zipObjectToZipFile(zipObject: JSZip, filename: string): Promise<File>;
|
package/dist/esm/zip-utils.js
CHANGED
|
@@ -15,50 +15,33 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import JSZip from "jszip";
|
|
17
17
|
import { createMimeTypedFile } from "./resources/copyDataIntoItem";
|
|
18
|
-
import {
|
|
18
|
+
import { getBlob } from "./resources/get-blob";
|
|
19
19
|
// ------------------------------------------------------------------------------------------------------------------ //
|
|
20
20
|
/**
|
|
21
21
|
* Converts a blob to a zip file.
|
|
22
22
|
*
|
|
23
23
|
* @param blob Blob to convert
|
|
24
|
-
* @returns Promise resolving to zip
|
|
24
|
+
* @returns Promise resolving to zip object
|
|
25
25
|
*/
|
|
26
|
-
export async function
|
|
27
|
-
const
|
|
28
|
-
return
|
|
29
|
-
.then(async (
|
|
30
|
-
return Promise.resolve(
|
|
26
|
+
export async function blobToZipObject(blob) {
|
|
27
|
+
const zipObject = new JSZip();
|
|
28
|
+
return zipObject.loadAsync(blob)
|
|
29
|
+
.then(async (zipObject) => {
|
|
30
|
+
return Promise.resolve(zipObject);
|
|
31
31
|
})
|
|
32
32
|
.catch(() => {
|
|
33
33
|
return Promise.reject();
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
* @param zippedFileName Name of the file in the zip
|
|
40
|
-
* @param zippedFileJson JSON object to convert
|
|
41
|
-
* @returns Promise resolving to zip
|
|
42
|
-
*/
|
|
43
|
-
export async function jsonToZip(zippedFileName, zippedFileJson) {
|
|
44
|
-
const zip = new JSZip();
|
|
45
|
-
zip.file(zippedFileName, JSON.stringify(zippedFileJson));
|
|
46
|
-
return Promise.resolve(zip);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Converts a JSON object to a zip file.
|
|
37
|
+
* Fetches a zip object.
|
|
50
38
|
*
|
|
51
|
-
* @param
|
|
52
|
-
* @param
|
|
53
|
-
* @returns Promise resolving to zip
|
|
39
|
+
* @param formZipFilePath Path to the zip file
|
|
40
|
+
* @param authentication Credentials to zip file
|
|
41
|
+
* @returns Promise resolving to zip object
|
|
54
42
|
*/
|
|
55
|
-
export async function
|
|
56
|
-
|
|
57
|
-
return createMimeTypedFile({
|
|
58
|
-
blob: await zip.generateAsync({ type: "blob" }),
|
|
59
|
-
filename: `${filename}.zip`,
|
|
60
|
-
mimeType: "application/zip"
|
|
61
|
-
});
|
|
43
|
+
export async function fetchZipObject(formZipFilePath, authentication) {
|
|
44
|
+
return blobToZipObject(await getBlob(formZipFilePath, authentication));
|
|
62
45
|
}
|
|
63
46
|
/**
|
|
64
47
|
* Gets the contents of the files in the zip.
|
|
@@ -67,10 +50,10 @@ export async function jsonToZipFile(zippedFileName, zippedFileJson, filename) {
|
|
|
67
50
|
* @param filesOfInterest Array of file names to extract from the zip file. If empty, all files are extracted.
|
|
68
51
|
* @returns Promise that resolves to an array of objects containing the file name and contents
|
|
69
52
|
*/
|
|
70
|
-
export async function
|
|
53
|
+
export async function getZipObjectContents(zipObject, filesOfInterest = []) {
|
|
71
54
|
const extractedZipFiles = [];
|
|
72
55
|
const fileContentsRetrievalPromises = [];
|
|
73
|
-
|
|
56
|
+
zipObject.forEach((relativePath, file) => {
|
|
74
57
|
const getContents = async () => {
|
|
75
58
|
if (filesOfInterest.length === 0 || filesOfInterest.includes(relativePath)) {
|
|
76
59
|
const fileContentsFetch = file.async('string');
|
|
@@ -87,23 +70,62 @@ export async function getZipFileContents(zip, filesOfInterest = []) {
|
|
|
87
70
|
return extractedZipFiles;
|
|
88
71
|
}
|
|
89
72
|
/**
|
|
90
|
-
*
|
|
73
|
+
* Converts a JSON object to a zip object.
|
|
91
74
|
*
|
|
92
|
-
* @param
|
|
93
|
-
* @param
|
|
94
|
-
* @
|
|
75
|
+
* @param zippedFileName Name of the file in the zip
|
|
76
|
+
* @param zippedFileJson JSON object to convert
|
|
77
|
+
* @returns Promise resolving to zip object
|
|
78
|
+
*/
|
|
79
|
+
export async function jsonToZipObject(zippedFileName, zippedFileJson) {
|
|
80
|
+
const zipObject = new JSZip();
|
|
81
|
+
zipObject.file(zippedFileName, JSON.stringify(zippedFileJson));
|
|
82
|
+
return Promise.resolve(zipObject);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Converts a JSON object to a zip file.
|
|
86
|
+
*
|
|
87
|
+
* @param zippedFileName Name of the file in the zip file
|
|
88
|
+
* @param zippedFileJson JSON object to convert
|
|
89
|
+
* @param filename Name to use for zip file; ".zip" added if missing
|
|
90
|
+
* @returns Promise resolving to zip file
|
|
91
|
+
*/
|
|
92
|
+
export async function jsonToZipFile(zippedFileName, zippedFileJson, filename) {
|
|
93
|
+
const zipObject = await jsonToZipObject(zippedFileName, zippedFileJson);
|
|
94
|
+
return zipObjectToZipFile(zipObject, filename);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Extracts files of interest from a zip object, calls a supplied function to modify them, and
|
|
98
|
+
* restores the files into the zip object.
|
|
99
|
+
*
|
|
100
|
+
* @param modificationCallback Function that modifies the specified files
|
|
101
|
+
* @param zip Zip file that contains the files to modify; modified in place
|
|
95
102
|
* @param filesOfInterest Array of file names to extract from the zip file. If empty, all files are extracted.
|
|
96
|
-
* @returns Promise that resolves to the
|
|
103
|
+
* @returns Promise that resolves to the modified zip file if the swizzle was successful
|
|
97
104
|
*/
|
|
98
|
-
export async function
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
};
|
|
107
|
-
return
|
|
105
|
+
export async function modifyFilesinZipObject(modificationCallback, zipObject, filesOfInterest = []) {
|
|
106
|
+
// Get the contents of the form.json file
|
|
107
|
+
const extractedZipFiles = await getZipObjectContents(zipObject, filesOfInterest);
|
|
108
|
+
extractedZipFiles.forEach((extractedZipFile) => {
|
|
109
|
+
// Run the modification callback
|
|
110
|
+
const content = modificationCallback(extractedZipFile);
|
|
111
|
+
// Update the zip file
|
|
112
|
+
zipObject.file(extractedZipFile.file, content);
|
|
113
|
+
});
|
|
114
|
+
return Promise.resolve(zipObject);
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Converts a zip object to a zip file.
|
|
118
|
+
*
|
|
119
|
+
* @param zipObject Zip object
|
|
120
|
+
* @param filename Name to use for zip file; ".zip" added if missing
|
|
121
|
+
* @returns Promise resolving to zip file
|
|
122
|
+
*/
|
|
123
|
+
export async function zipObjectToZipFile(zipObject, filename) {
|
|
124
|
+
const completeFilename = filename.endsWith(".zip") ? filename : `${filename}.zip`;
|
|
125
|
+
return createMimeTypedFile({
|
|
126
|
+
blob: await zipObject.generateAsync({ type: "blob" }),
|
|
127
|
+
filename: completeFilename,
|
|
128
|
+
mimeType: "application/zip"
|
|
129
|
+
});
|
|
108
130
|
}
|
|
109
131
|
//# sourceMappingURL=zip-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip-utils.js","sourceRoot":"","sources":["../../src/zip-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"zip-utils.js","sourceRoot":"","sources":["../../src/zip-utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@esri/solution-common",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.4",
|
|
4
4
|
"description": "Provides general helper functions for @esri/solution.js.",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"@esri/arcgis-rest-portal": "^3.7.0",
|
|
24
24
|
"@esri/arcgis-rest-request": "^3.7.0",
|
|
25
25
|
"@esri/arcgis-rest-service-admin": "^3.7.0",
|
|
26
|
-
"@esri/hub-common": "^14.
|
|
26
|
+
"@esri/hub-common": "^14.97.0",
|
|
27
27
|
"@esri/hub-initiatives": "^14.0.0",
|
|
28
28
|
"@esri/hub-sites": "^14.2.2",
|
|
29
29
|
"@esri/hub-teams": "^14.1.0",
|
|
@@ -92,5 +92,5 @@
|
|
|
92
92
|
"esri",
|
|
93
93
|
"ES6"
|
|
94
94
|
],
|
|
95
|
-
"gitHead": "
|
|
95
|
+
"gitHead": "c3329c6814c1d7b898eb130bf3a7feeda12f074f"
|
|
96
96
|
}
|