@agnostack/next-shopify 1.15.0-beta.2 → 1.15.0-beta.3
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/CHANGELOG.md +7 -0
- package/dist/shared/display.d.ts +0 -2
- package/dist/shared/display.d.ts.map +1 -1
- package/dist/shared/display.js +0 -4
- package/dist/shared/display.js.map +1 -1
- package/dist/shared/index.d.ts +1 -0
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +1 -0
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/request.d.ts.map +1 -1
- package/dist/shared/request.js.map +1 -1
- package/dist/shared/uuid.d.ts +3 -0
- package/dist/shared/uuid.d.ts.map +1 -0
- package/dist/shared/uuid.js +5 -0
- package/dist/shared/uuid.js.map +1 -0
- package/dist/umd/shared/display.d.ts +0 -2
- package/dist/umd/shared/display.d.ts.map +1 -1
- package/dist/umd/shared/index.d.ts +1 -0
- package/dist/umd/shared/index.d.ts.map +1 -1
- package/dist/umd/shared/request.d.ts.map +1 -1
- package/dist/umd/shared/uuid.d.ts +3 -0
- package/dist/umd/shared/uuid.d.ts.map +1 -0
- package/dist/umd/{umd-verification.js → verification.js} +3 -3
- package/dist/umd/verification.js.map +1 -0
- package/package.json +2 -3
- package/dist/umd/umd-verification.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
# [1.15.0-beta.3](https://github.com/agnostack/next-shopify/compare/v1.15.0-beta.2...v1.15.0-beta.3) (2023-12-08)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* bundled and cleaned some stuff ([376e767](https://github.com/agnostack/next-shopify/commit/376e7675565fba8912b3ef7145201484695f0426))
|
|
7
|
+
|
|
1
8
|
# [1.15.0-beta.2](https://github.com/agnostack/next-shopify/compare/v1.15.0-beta.1...v1.15.0-beta.2) (2023-12-08)
|
|
2
9
|
|
|
3
10
|
|
package/dist/shared/display.d.ts
CHANGED
|
@@ -97,6 +97,4 @@ export function querystringToObject(queryString: any): {
|
|
|
97
97
|
export function arrayIncludesAll(_values: any, comparison: any): boolean;
|
|
98
98
|
export function arraysMatch(array1: any, array2: any): boolean;
|
|
99
99
|
export function appendQuery(_basePath: any, queryString: any): string;
|
|
100
|
-
export function getGUID(): any;
|
|
101
|
-
export function getInteger(): any;
|
|
102
100
|
//# sourceMappingURL=display.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/shared/display.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/shared/display.js"],"names":[],"mappings":"AAIO;;;;;EAmCN;AAEM,2DAGN;AAEM,4DAeN;AAEM,gEAmBN;AAEM,mDAEN;AAEM,6CAGN;AAEM,2CAGN;AAEM,uDAGN;AAEM,+DAwBN;AAEM,0CAON;AAEM,sDAeN;AAEM,kDAEN;AAGM,sDAGN;AAEM,uDAGN;AAEM,uDAGN;AAEM,wDAGN;AAEM,mDAIN;AAEM,wDAIN;AAGM,mDAEN;AAEM,uDAEN;AAGM,4DAEN;AAEM;;;WAQN;AAEM,kDAGN;AAEM,uDAEN;AAEM,8EAGN;AAEM,iFAGN;AAEM,qFAEN;AAEM,+CAEN;AAGM,kDAEN;AAEM,qDAEN;AAEM,2CAIN;AAEM,6DAEN;AAOM,0FAqBN;AAMM,6DAGN;AAEM,0DAEN;AAEM,yDAGN;AAEM,sDAEN;AAOM,0EAEN;AAEM,kEAUN;AAEM,6EAEN;AAEM,8EAKN;AAEM,yCAEN;AAEM,0EAEN;AAEM,sEAIN;AAgBM,gEAQN;AAEM,2CAEN;AAEM,sEAEN;AAEM,4CAEN;AAEM,uEAEN;AAEM,+CAEN;AAEM,sEAIN;AAEM,6CAEN;AAEM,gDAGN;AAEM,+CASN;AAEM,gEA6DN;AAEM,wDAEN;AAEM,iEAEN;AAGM,yDAEN;AAEM,gEAEN;AAEM,wDAEN;AAEM,yDAEN;AAEM,kEAQN;AAEM,yEAON;AAEM,+CAWN;AAEM,kDAUN;AAEM,oEAON;AAEM,6DAKN;AAEM,wDAGN;AAGM,wEASN;AAEM,+DAcN;AAEM;;;;;EAWN;AAEM;;;;;;;;KAkBN;AAMM;;EAON;AAEM,yEAKN;AAEM,+DAEN;AAEM,sEAMN"}
|
package/dist/shared/display.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/* eslint-disable no-use-before-define */
|
|
2
|
-
import { v4 as uuidV4 } from 'uuid';
|
|
3
2
|
// #region lib-core
|
|
4
3
|
// TODO!!!: keep in sync between next-shopify and lib-core (and lib-utils-js at bottom)
|
|
5
4
|
export const normalizeShopifyId = (shopifyData) => {
|
|
@@ -399,7 +398,4 @@ export const appendQuery = (_basePath, queryString) => {
|
|
|
399
398
|
}
|
|
400
399
|
return `${basePath}${basePath.includes('?') ? '&' : '?'}${queryString}`;
|
|
401
400
|
};
|
|
402
|
-
// #endregion lib-utils-js
|
|
403
|
-
export const getGUID = () => (uuidV4());
|
|
404
|
-
export const getInteger = () => (getGUID().replace(/\D/g, ''));
|
|
405
401
|
//# sourceMappingURL=display.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/shared/display.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/shared/display.js"],"names":[],"mappings":"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"}
|
package/dist/shared/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA;AACtB,cAAc,gBAAgB,CAAA"}
|
package/dist/shared/index.js
CHANGED
package/dist/shared/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA;AACtB,cAAc,gBAAgB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/shared/request.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/shared/request.js"],"names":[],"mappings":"AAUA,iDAAiD;;;;AAK1C,kEAIN;AAEM;;;;QAmBN;AAgBM;;;;cAeN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/shared/request.js"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,SAAS,GACV,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/shared/request.js"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,SAAS,GACV,MAAM,WAAW,CAAA;AAElB,MAAM,aAAa,GAAG,SAAS,CAAA;AAC/B,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAAA;AACjD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,gBAAgB,EAAE,kBAAkB;CACrC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAChD,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAEjD,OAAO,SAAS,CAAC,MAAM,CAAC,CAAA;AAC1B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAwE,EAAE,EAAE,EAAE;QAA9E,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,OAA0B,EAArB,cAAc,cAAnE,6BAAqE,CAAF;IACvG,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAE/C,MAAM,OAAO,mBACX,CAAC,mBAAmB,CAAC,EAAE,aAAa,CAAC,gBAAgB,IAClD,OAAO,CACX,CAAA;IAED,IAAI,IAAI,GAAG,KAAK,CAAA;IAChB,IAAI,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE;QACnF,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;KACvC;IAED,qCACE,MAAM;QACN,OAAO,IACJ,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GACxC,cAAc,EAClB;AACH,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,EAAE;IAC3B,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE;QACpB,OAAO,SAAS,CAAA;KACjB;IAED,MAAM,aAAa,GAAG,mBAAmB,CAAA;IAEzC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC5B,OAAO,IAAI,GAAG,CAAC,WAAW,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;KACrE;IAED,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,EAAE;IACvC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;IACnC,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,SAAS,CAAA;KACjB;IAED,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAEnE,uCACK,CAAC,SAAS,CAAC,QAAQ,KAAK,aAAa,CAAC,IAAI;QAC3C,MAAM,EAAE,SAAS,CAAC,MAAM;KACzB,KACD,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAC5B,MAAM,EAAE,SAAS,CAAC,MAAM,IACzB;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../src/shared/uuid.js"],"names":[],"mappings":"AAIO,+BAEN;AAEM,kCAEN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../src/shared/uuid.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,0BAA0B;AAE1B,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAC3B,MAAM,EAAE,CACT,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,CAC9B,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,EAAC,EAAE,CAAC,CAC5B,CAAA"}
|
|
@@ -97,6 +97,4 @@ export function querystringToObject(queryString: any): {
|
|
|
97
97
|
export function arrayIncludesAll(_values: any, comparison: any): boolean;
|
|
98
98
|
export function arraysMatch(array1: any, array2: any): boolean;
|
|
99
99
|
export function appendQuery(_basePath: any, queryString: any): string;
|
|
100
|
-
export function getGUID(): any;
|
|
101
|
-
export function getInteger(): any;
|
|
102
100
|
//# sourceMappingURL=display.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/shared/display.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../src/shared/display.js"],"names":[],"mappings":"AAIO;;;;;EAmCN;AAEM,2DAGN;AAEM,4DAeN;AAEM,gEAmBN;AAEM,mDAEN;AAEM,6CAGN;AAEM,2CAGN;AAEM,uDAGN;AAEM,+DAwBN;AAEM,0CAON;AAEM,sDAeN;AAEM,kDAEN;AAGM,sDAGN;AAEM,uDAGN;AAEM,uDAGN;AAEM,wDAGN;AAEM,mDAIN;AAEM,wDAIN;AAGM,mDAEN;AAEM,uDAEN;AAGM,4DAEN;AAEM;;;WAQN;AAEM,kDAGN;AAEM,uDAEN;AAEM,8EAGN;AAEM,iFAGN;AAEM,qFAEN;AAEM,+CAEN;AAGM,kDAEN;AAEM,qDAEN;AAEM,2CAIN;AAEM,6DAEN;AAOM,0FAqBN;AAMM,6DAGN;AAEM,0DAEN;AAEM,yDAGN;AAEM,sDAEN;AAOM,0EAEN;AAEM,kEAUN;AAEM,6EAEN;AAEM,8EAKN;AAEM,yCAEN;AAEM,0EAEN;AAEM,sEAIN;AAgBM,gEAQN;AAEM,2CAEN;AAEM,sEAEN;AAEM,4CAEN;AAEM,uEAEN;AAEM,+CAEN;AAEM,sEAIN;AAEM,6CAEN;AAEM,gDAGN;AAEM,+CASN;AAEM,gEA6DN;AAEM,wDAEN;AAEM,iEAEN;AAGM,yDAEN;AAEM,gEAEN;AAEM,wDAEN;AAEM,yDAEN;AAEM,kEAQN;AAEM,yEAON;AAEM,+CAWN;AAEM,kDAUN;AAEM,oEAON;AAEM,6DAKN;AAEM,wDAGN;AAGM,wEASN;AAEM,+DAcN;AAEM;;;;;EAWN;AAEM;;;;;;;;KAkBN;AAMM;;EAON;AAEM,yEAKN;AAEM,+DAEN;AAEM,sEAMN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shared/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA;AACtB,cAAc,gBAAgB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/shared/request.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/shared/request.js"],"names":[],"mappings":"AAUA,iDAAiD;;;;AAK1C,kEAIN;AAEM;;;;QAmBN;AAgBM;;;;cAeN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../src/shared/uuid.js"],"names":[],"mappings":"AAIO,+BAEN;AAEM,kCAEN"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports'
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global["@agnostack/next-shopify/umd-verification"] = {}));
|
|
5
5
|
})(this, (function (exports) { 'use strict';
|
|
6
6
|
|
|
@@ -965,4 +965,4 @@
|
|
|
965
965
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
966
966
|
|
|
967
967
|
}));
|
|
968
|
-
//# sourceMappingURL=
|
|
968
|
+
//# sourceMappingURL=verification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verification.js","sources":["../../node_modules/browser-monads-ts/dist/browser-monads-ts.es.js","../../src/shared/display.js","../../src/shared/subtlecrypto.js","../../src/shared/request.js","../../node_modules/raw-body/index.js","../../src/verification/rawbody.js","../../src/verification/errors.js","../../src/verification/verification.js"],"sourcesContent":["var n,r=((n=function(){return r}).toString=n.toLocaleString=n[Symbol.toPrimitive]=function(){return \"\"},n.valueOf=function(){return !1},new Proxy(Object.freeze(n),{get:function(n,t){return n.hasOwnProperty(t)?n[t]:r}})),u=function(n){return n===r};\n\nlet win = global.window;\nlet doc = global.document;\nlet nav = global.navigator;\nlet document = typeof doc !== \"undefined\" ? doc : r;\nlet exists = (variable) => !u(variable);\nlet navigator = typeof nav !== \"undefined\" ? nav : r;\nlet window = typeof win !== \"undefined\" ? win : r;\n\nexport { document, exists, navigator, window };\n//# sourceMappingURL=browser-monads-ts.es.js.map\n","/* eslint-disable no-use-before-define */\n\n// #region lib-core\n// TODO!!!: keep in sync between next-shopify and lib-core (and lib-utils-js at bottom)\nexport const normalizeShopifyId = (shopifyData) => {\n const isString = isType(shopifyData, 'string')\n if (isString && !shopifyData.startsWith('gid:')) {\n if (!isNumericOnly(shopifyData)) {\n return {}\n }\n\n return {\n id: `${shopifyData}`,\n }\n }\n\n const { id: _entityId, legacyResourceId } = isString\n ? { id: shopifyData }\n : ensureObject(shopifyData)\n\n if (stringEmpty(_entityId) && stringEmpty(legacyResourceId)) {\n return {}\n }\n\n const entity_id = ensureString(_entityId)\n const { entity_type, parsedId } = entity_id.match(/^gid:\\/\\/shopify\\/(?<entity_type>.*)\\/(?<parsedId>[0-9]+).*$/)?.groups ?? {}\n const id = ensureString(parsedId || legacyResourceId)\n\n const hasEntityId = stringNotEmpty(entity_id)\n const hasEntityType = stringNotEmpty(entity_type)\n\n return {\n ...stringNotEmpty(id) && { id },\n ...hasEntityId && { entity_id },\n ...hasEntityType && { entity_type },\n ...(hasEntityId && hasEntityType) && {\n gid: `gid://shopify/${entity_type}/${entity_id}`,\n },\n }\n}\n\nexport const random = (max = 100, min = 1) => {\n const floor = Math.min(max, min)\n return Math.floor(Math.random() * (max - floor + 1)) + floor\n}\n\nexport const nextRandom = (max = 100, min = 1) => {\n const maximum = Math.max(max, 0)\n const minimum = Math.max(min, 0)\n\n let randomNumber = maximum\n\n if (maximum > minimum) {\n do {\n randomNumber = random(maximum, minimum)\n } while (randomNumber === nextRandom.last)\n\n nextRandom.last = randomNumber\n }\n\n return randomNumber\n}\n\nexport const arrayRandom = (_values, _max = 1) => {\n const values = ensureArray(_values)\n const valuesLength = values.length\n const maxLength = Math.min(_max, valuesLength)\n\n if (valuesLength <= maxLength) {\n return values\n }\n\n const arrayLength = valuesLength - 1\n const randomValues = []\n do {\n const newVal = values[nextRandom(arrayLength, 0)]\n if (!randomValues.includes(newVal)) {\n randomValues.push(newVal)\n }\n } while (randomValues.length < maxLength)\n\n return randomValues\n}\n\nexport const arrayRandomItem = (_values) => (\n arrayRandom(_values)[0]\n)\n\nexport const isArray = (value) => (\n // eslint-disable-next-line eqeqeq\n (value != undefined) && Array.isArray(value)\n)\n\nexport const isSet = (value) => (\n // eslint-disable-next-line eqeqeq\n (value != undefined) && (value instanceof Set)\n)\n\nexport const isType = (value, type) => (\n // eslint-disable-next-line eqeqeq, valid-typeof\n (value != undefined) && (typeof value === type)\n)\n\nexport const isTypeEnhanced = (value, type) => {\n switch (true) {\n case (type === 'set'): {\n return isSet(value)\n }\n\n case (type === 'array'): {\n return (\n isArray(value) &&\n !isSet(value)\n )\n }\n\n case (type === 'object'): {\n return (\n isType(value, type) &&\n !isArray(value)\n )\n }\n\n default: {\n return isType(value, type)\n }\n }\n}\n\nexport const safeTrim = (value) => {\n if (isType(value, 'string')) {\n // eslint-disable-next-line no-param-reassign\n value = value.trim()\n }\n\n return value\n}\n\nexport const safeParse = (value, trim) => {\n if (isType(value, 'string')) {\n if (trim) {\n // eslint-disable-next-line no-param-reassign\n value = safeTrim(value)\n }\n\n if (value.startsWith('{') || value.startsWith('[') || value.startsWith('\"')) {\n // eslint-disable-next-line no-param-reassign\n value = JSON.parse(value)\n }\n }\n\n // TODO: should this be value ?? {}\n return value\n}\n\nexport const ensureString = (string) => (\n string ? `${string}` : ''\n)\n\n// HMMM: what if 'string' is an object?\nexport const ensureStringOnly = (string) => (\n // eslint-disable-next-line eqeqeq\n (string != undefined) ? `${string}` : ''\n)\n\nexport const ensureStringAscii = (string) => (\n // eslint-disable-next-line no-control-regex\n ensureStringOnly(string).replace(/[^\\x00-\\x7F]/g, '')\n)\n\nexport const ensureStringClean = (string) => (\n // eslint-disable-next-line no-control-regex\n ensureStringOnly(string).replace(/[^a-z0-9_-]/gi, '')\n)\n\nexport const ensureAlphaNumeric = (string) => (\n // eslint-disable-next-line no-control-regex\n ensureStringOnly(string).replace(/[^a-z0-9]/gi, '')\n)\n\nexport const isNumericOnly = (value) => {\n const [matched] = `${value}`.match(/^([0-9]+)$/) ?? []\n // eslint-disable-next-line eqeqeq\n return (matched != undefined)\n}\n\nexport const isNumericNegatable = (value) => {\n const [matched] = `${value}`.match(/^(-?[0-9]+(\\.[0-9]+)?)?$/) ?? []\n // eslint-disable-next-line eqeqeq\n return (matched != undefined)\n}\n\n// TODO: explore places using ensureNumeric to move to isNumericNegatable\nexport const ensureNumeric = (string) => (\n Number(ensureString(string).replace(/[^0-9.]/gi, ''))\n)\n\nexport const ensureNumericOnly = (string) => (\n Number(ensureString(string).replace(/[^0-9]/gi, ''))\n)\n\n// TODO: update regex to handle negative number returns negative. Something like (?!\\d\\.)(-?\\d+(\\.\\d)?)\nexport const ensureNumericNegatable = (string) => (\n Number(ensureString(string).replace(/[^0-9.-]/gi, ''))\n)\n\nexport const ensureNumericConstrained = (value, { min: _min = 0, max: _max = 100 } = {}) => {\n const min = ensureNumericNegatable(_min)\n const max = ensureNumericNegatable(_max)\n\n return Math.max(\n min,\n Math.min(ensureNumeric(value), max)\n )\n}\n\nexport const ensureArray = (array = []) => (\n // eslint-disable-next-line no-nested-ternary\n !array ? [] : Array.isArray(array) ? array : [array]\n)\n\nexport const ensureArraySet = (arrayOrSet) => (\n ensureArray(isSet(arrayOrSet) ? [...arrayOrSet] : arrayOrSet)\n)\n\nexport const arrayEmpty = (array, disableEmptyString = false) => (\n // eslint-disable-next-line eqeqeq\n !array || !array.length || (array.length === 1 && (array[0] == undefined || (disableEmptyString && stringEmpty(array[0]))))\n)\n\nexport const arrayNotEmpty = (array, disableEmptyString = false) => (\n // eslint-disable-next-line eqeqeq\n !arrayEmpty(array) && array[0] != undefined && (!disableEmptyString || stringNotEmpty(array[0]))\n)\n\nexport const findLastMatch = (array, filterCallback = (value) => (value)) => (\n ensureArray(array).filter(filterCallback).slice(-1)[0]\n)\n\nexport const ensureObject = (object) => (\n object ?? {}\n)\n\n// NOTE: this does not ensure !isType(string)\nexport const objectEmpty = (object) => (\n !object || !Object.keys(object).length\n)\n\nexport const objectNotEmpty = (object) => (\n !objectEmpty(object)\n)\n\nexport const nullable = (object) => (\n (!object || (object === 'null') || (object === undefined) || (object === null))\n ? null // TODO: explore undefined here??\n : object\n)\n\nexport const objectContainsAnyValue = (object) => (\n Object.values(ensureObject(object)).some((value) => nullable(value))\n)\n\nconst isUndefined = (value) => (\n // eslint-disable-next-line eqeqeq\n value == undefined\n)\n\nexport const cleanObject = (object, allowEmptyLeafs, isEmptyCallback) => (\n Object.entries(ensureObject(object)).reduce((\n _cleanedObject,\n [key, _value]\n ) => {\n if (!allowEmptyLeafs && (isEmptyCallback?.(_value) ?? isUndefined(_value))) {\n return _cleanedObject // skip key if null or undefined\n }\n\n const value = !Array.isArray(_value)\n ? cleanObjectValue(_value, allowEmptyLeafs, isEmptyCallback)\n : _value.reduce((_data, __value) => ([\n ..._data,\n cleanObjectValue(__value, allowEmptyLeafs, isEmptyCallback)\n ]), [])\n\n return {\n ..._cleanedObject,\n [key]: value,\n }\n }, {})\n)\n\nconst cleanObjectValue = (value, allowEmptyLeafs, isEmptyCallback) => (\n isType(value, 'object') ? cleanObject(value, allowEmptyLeafs, isEmptyCallback) : value\n)\n\nexport const stringNotEmptyOnly = (stringable) => {\n const string = ensureStringOnly(stringable)\n return ((string.length > 0) && !['null', 'undefined'].includes(string))\n}\n\nexport const stringEmptyOnly = (stringable) => (\n !stringNotEmptyOnly(stringable)\n)\n\nexport const stringNotEmpty = (stringable) => {\n const string = ensureString(stringable)\n return ((string.length > 0) && !['null', 'undefined'].includes(string))\n}\n\nexport const stringEmpty = (stringable) => (\n !stringNotEmpty(stringable)\n)\n\nconst splitString = (splitting, index = splitting.length) => {\n const string = ensureString(splitting)\n return [string.slice(0, index), string.slice(index)]\n}\n\nexport const compareNumber = (number1 = 0, number2 = 0) => (\n number1 - number2\n)\n\nexport const compareString = (string1, string2) => {\n if (stringEmpty(string1)) {\n return 1\n }\n\n if (stringEmpty(string2)) {\n return -1\n }\n\n return ensureString(string1).localeCompare(string2)\n}\n\nexport const compareEntryKeys = ([string1], [string2]) => (\n compareString(string1, string2)\n)\n\nexport const objectToSortedString = (object, separator = '') => (\n Object.entries(ensureObject(object))\n .sort(compareEntryKeys)\n .map(([key, value]) => `${key}=${value}`)\n .join(separator)\n)\n\nexport const isHTML = (string) => (\n (string?.startsWith?.('<') || string?.startsWith?.('\\n<')) ?? false\n)\n\nexport const freeze = (logMessage, object, type = 'log') => {\n console[type](logMessage, !object ? object : JSON.parse(JSON.stringify(ensureObject(object))))\n}\n\nexport const replaceSpaces = (string, replacement = '') => (\n !isType(string, 'string')\n ? ''\n : string.replace(/\\s/g, replacement)\n)\n\nconst recase = (string, replacement = '') => (\n !isType(string, 'string')\n ? ''\n : string\n .replace(/[^a-zA-Z0-9]+/g, replacement)\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')\n .replace(/([a-z])([A-Z])/g, '$1-$2')\n .replace(/([0-9])([^0-9])/g, '$1-$2')\n .replace(/([^0-9])([0-9])/g, '$1-$2')\n .replace(/[-_]+/g, replacement)\n .replace(new RegExp(`${replacement}$`), '')\n .toLowerCase()\n)\n\nexport const zencase = (string, replacement = '-') => (\n !isType(string, 'string')\n ? ''\n : replaceSpaces(string, replacement)\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')\n .replace(/([a-z])([A-Z])/g, '$1-$2')\n .replace(new RegExp(`${replacement}$`), '')\n .toLowerCase()\n)\n\nexport const dashcase = (string) => (\n recase(string, '-')\n)\n\nexport const undashcase = (string, replacement = ' ') => (\n ensureString(string).replace(/-/g, replacement).trim()\n)\n\nexport const snakecase = (string) => (\n recase(string, '_')\n)\n\nexport const unsnakecase = (string, replacement = ' ') => (\n ensureString(string).replace(/_/g, replacement).trim()\n)\n\nexport const uppercase = (string) => (\n ensureString(string).toUpperCase()\n)\n\nexport const lowercase = (string, defaultValue = '') => (\n !stringNotEmpty(string)\n ? defaultValue\n : ensureString(string).toLowerCase()\n)\n\nexport const slugify = (string) => (\n lowercase(dashcase(string))\n)\n\nexport const capitalize = (string) => {\n const parts = splitString(string, 1)\n return `${uppercase(parts[0])}${parts[1]}`\n}\n\nexport const camelCase = (string) => (\n stringNotEmpty(string)\n ? unsnakecase(undashcase(string)).replace(/\\w\\S*/g, (word, charIndex) => {\n if (charIndex === 0) {\n return lowercase(word)\n }\n return `${uppercase(word.charAt(0))}${lowercase(word.substr(1))}`\n }).split(' ').join('')\n : ''\n)\n\nexport const titleCase = (string, _overrides) => {\n if (!stringNotEmpty(string)) {\n return ''\n }\n\n const overrides = {\n 'add-ons': 'Add-Ons',\n agnostack: 'agnoStack',\n ai: 'AI',\n b2b: 'B2B',\n b2c: 'B2C',\n cartcollab: 'CartCollab',\n 'cartcollab(sm)': 'CartCollab(SM)',\n chatgpt: 'ChatGPT',\n covid: 'COVID',\n covid19: 'COVID-19',\n 'covid-19': 'COVID-19',\n crm: 'CRM',\n elasticpath: 'Elastic Path',\n ecommerce: 'eCommerce',\n 'e-commerce': 'eCommerce',\n faqs: 'FAQs',\n gpt: 'GPT',\n 'smile.io': 'Smile.io',\n 'stamped.io': 'Stamped.io',\n 'judge.me': 'Judge.me',\n 'influence.io': 'Influence.io',\n keepsmallstrong: 'KeepSmallStrong',\n loyaltylion: 'LoyaltyLion',\n openai: 'OpenAI',\n paypal: 'PayPal',\n 'postscript.io': 'Postscript.io',\n recharge: 'ReCharge',\n 'stay.ai': 'Stay.ai',\n 'stay ai': 'Stay Ai',\n shipengine: 'ShipEngine',\n shipperhq: 'ShipperHQ',\n shipstation: 'ShipStation',\n taxjar: 'TaxJar',\n yotpo: 'YotPo',\n ..._overrides,\n }\n\n const stringParts = lowercase(string)\n .split(' ')\n .reduce((\n _stringParts,\n _stringPart\n ) => {\n const stringPart = overrides[_stringPart] ?? _stringPart\n .replace(/([A-Z]+)/g, ' $1')\n .replace(/\\s\\s+/g, ' ')\n .replace(/(\\b[a-z](?!\\s)*)/g, (firstChar) => uppercase(firstChar))\n\n return [\n ..._stringParts,\n ...stringNotEmpty(stringPart) ? [stringPart] : []\n ]\n }, [])\n\n return stringParts.join(' ')\n}\n\nexport const removeLeadingSlash = (string) => (\n ensureString(string).replace(/^\\//, '')\n)\n\nexport const removeLeadingTrailingQuotes = (string) => (\n ensureString(string).replace(/^\"|\"$/g, '')\n)\n\n// TODO: not sure if this should remove multipel at end or just one (as it does now)?\nexport const removeTrailingSlash = (string) => (\n ensureString(string).replace(/\\/$/, '')\n)\n\nexport const removeLeadingTrailingSlash = (string) => (\n removeTrailingSlash(removeLeadingSlash(string))\n)\n\nexport const ensureLeadingSlash = (string) => (\n `/${removeLeadingSlash(string)}`\n)\n\nexport const ensureTrailingSlash = (string) => (\n `${removeTrailingSlash(string)}/`\n)\n\nexport const ensureExtension = (string, extension) => {\n if (stringEmpty(extension)) {\n return string\n }\n\n const filePath = string.match(/(.*)\\..+$/)?.[1] ?? string\n\n return `${filePath}.${extension}`\n}\n\nexport const wrappedEncode = (basePath, _wrappingPath) => {\n const wrappingPath = ensureString(_wrappingPath)\n if (stringEmpty(basePath)) {\n return wrappingPath\n }\n\n return `${basePath}${encodeURIComponent(wrappingPath)}`\n}\n\nexport const splitCommas = (value) => (\n ensureString(value)\n .replace(/, /g, ',')\n .split(',')\n .reduce((_values, _value) => {\n const __value = safeTrim(_value)\n return [\n ..._values,\n ...stringNotEmpty(__value) ? [__value] : [] // TODO: explore stringEmptyOnly?\n ]\n }, [])\n)\n\nexport const combineCommas = (values) => (\n [...new Set(\n ensureArray(values).reduce((\n _combined,\n value\n ) => ([\n ..._combined,\n ...splitCommas(value)\n ]), [])\n )]\n)\n\nexport const normalizeArray = (input, separator = ' ') => {\n const inputArray = ensureArray(input)\n\n return inputArray.reduce((normalized, _ignore, index) => ([\n ...normalized,\n inputArray.slice(0, index + 1).join(separator)\n ]), []).reverse()\n}\n\nexport const arrayToObject = (arrayable, key) => (\n ensureArray(arrayable).reduce((_object, item) => ({\n ..._object,\n [item?.[key]]: item,\n }), {})\n)\n\nexport const isTrue = (value, falsy) => {\n const string = ensureString(value)\n return ![...ensureArray(falsy), '', 'false'].includes(string)\n}\n\n// TODO: move all uses of parseKeywords to parseKeywordGroups\nexport const parseKeywords = (keywordGroup, previous) => (\n [...new Set(ensureArray(keywordGroup).reduce((_parsedKeywords, keyword) => {\n const keywords = splitCommas(keyword)\n\n return [\n ..._parsedKeywords,\n ...keywords.filter((_keyword) => stringNotEmpty(_keyword))\n ]\n }, ensureArray(previous)))].join(', ')\n)\n\nexport const parseKeywordGroups = (keywordGroups) => {\n const parsedKeywords = ensureArray(keywordGroups).reduce((_parsedKeywords, keywordGroup) => ([\n ..._parsedKeywords,\n ...ensureArray(keywordGroup).reduce((_parsedGroupKeywords, keyword) => {\n const keywords = splitCommas(keyword)\n\n return [\n ..._parsedGroupKeywords,\n ...keywords.filter((_keyword) => stringNotEmpty(_keyword))\n ]\n }, [])\n ]), [])\n\n return [...new Set(parsedKeywords)].join(', ')\n}\n\nexport const parseProjectName = (_name) => {\n const name = ensureString(_name)\n const [, organization, ...parts] = /(@.*)([\\\\]+|\\/)+(.*)/.exec(name) ?? []\n const projectName = organization ? name.replace(organization, '').replace('/', '') : name\n\n return {\n name,\n parts,\n organization,\n projectName,\n }\n}\n\nexport const parseProject = (packageInfo) => {\n const { shortName, owner: _appOwner, name: _name, appName: _appName, keywords, siteName: _siteName } = packageInfo ?? {}\n const { name, organization, projectName } = parseProjectName(_name)\n\n const appName = _appName ?? projectName?.slice(projectName?.indexOf('-') + 1)\n const siteName = _siteName ?? projectName?.slice(projectName?.indexOf('-') + 1)\n const companyName = titleCase(organization?.replace('@', ''))\n const appOwner = _appOwner ?? companyName\n\n return [{\n keywords,\n appOwner,\n appName,\n siteName,\n shortName,\n companyName,\n projectName,\n }, organization, name]\n}\n\n// #endregion lib-core\n\n// #region lib-utils-js\n\nexport const querystringToObject = (queryString) => {\n if (stringEmpty(queryString)) {\n return {}\n }\n\n const urlParams = new URLSearchParams(queryString)\n return Object.fromEntries(urlParams)\n}\n\nexport const arrayIncludesAll = (_values, comparison) => {\n const values = ensureArray(_values)\n return ensureArray(comparison).every((value) => (\n stringNotEmpty(value) && values.includes(value)\n ))\n}\n\nexport const arraysMatch = (array1, array2) => (\n arrayIncludesAll(array1, array2) && arrayIncludesAll(array2, array1)\n)\n\nexport const appendQuery = (_basePath, queryString) => {\n const basePath = ensureString(_basePath)\n if (stringEmpty(queryString)) {\n return basePath\n }\n return `${basePath}${basePath.includes('?') ? '&' : '?'}${queryString}`\n}\n","import { exists, window } from 'browser-monads-ts'\n\nimport { ensureArray, ensureString, objectEmpty } from './display'\n\nconst getWebCrypto = async () => {\n try {\n const crypto = (await import('isomorphic-webcrypto')).default\n return crypto\n } catch (error) {\n console.error('Failed to import isomorphic-webcrypto', error)\n throw error\n }\n}\n\nconst getTextDecoder = async () => {\n if (exists(window) && (typeof window?.TextDecoder === 'function')) {\n return window.TextDecoder\n }\n\n try {\n const TextDecoder = (await import('util')).TextDecoder\n return TextDecoder\n } catch (error) {\n console.error('Failed to import utils.TextDecoder', error)\n throw error\n }\n}\n\nconst getTextEncoder = async () => {\n if (exists(window) && (typeof window?.TextEncoder === 'function')) {\n return window.TextEncoder\n }\n\n try {\n const TextEncoder = (await import('util')).TextEncoder\n return TextEncoder\n } catch (error) {\n console.error('Failed to import utils.TextEncoder', error)\n throw error\n }\n}\n\nconst timingSafeEqual = (value1, value2) => {\n if (\n (value1 == undefined) ||\n (value2 == undefined) ||\n (value1.length !== value2.length)\n ) {\n return false\n }\n\n let result = 0\n // eslint-disable-next-line no-plusplus\n for (let i = 0; i < value1.length; i++) {\n // eslint-disable-next-line no-bitwise\n result |= value1[i] ^ value2[i]\n }\n\n return (result === 0)\n}\n\nconst stringToHex = (stringValue) => (\n Array.from(ensureString(stringValue), (char) => (\n char.charCodeAt(0).toString(16).padStart(2, '0')\n )).join('')\n)\n\nconst hexToString = (hexValue) => (\n ensureArray(\n ensureString(hexValue).match(/.{1,2}/g)\n )\n .map((byte) => String.fromCharCode(parseInt(byte, 16)))\n .join('')\n)\n\nconst arrayBufferToString = async (arrayBuffer) => {\n const uint8Array = new Uint8Array(arrayBuffer)\n const Decoder = await getTextDecoder()\n return new Decoder().decode(uint8Array)\n}\n\nconst arrayToArrayBuffer = (array) => (\n (ArrayBuffer.from != undefined)\n ? ArrayBuffer.from(array)\n : new Uint8Array(array).buffer\n)\n\nconst ensureArrayBuffer = (arrayOrArrayBuffer) => (\n (arrayOrArrayBuffer instanceof ArrayBuffer)\n ? arrayOrArrayBuffer\n : arrayToArrayBuffer(arrayOrArrayBuffer)\n)\n\nconst generateKeyPair = async () => {\n const crypto = await getWebCrypto()\n const keyPair = await crypto.subtle.generateKey(\n {\n name: 'ECDH',\n namedCurve: 'P-256',\n },\n true,\n ['deriveKey']\n )\n\n return keyPair\n}\n\nconst getKeyOperations = (keyType) => {\n switch (keyType) {\n case 'private':\n case 'privateKey': {\n return ['deriveKey']\n }\n\n case 'secret':\n case 'secretKey':\n case 'sharedSecret': {\n return ['encrypt', 'decrypt'] \n }\n\n default: {\n return []\n }\n }\n}\n\nconst getKeyAlgorythm = (keyType) => {\n switch (keyType) {\n case 'derivedKey':\n case 'derived':\n case 'secret':\n case 'secretKey':\n case 'sharedSecret': {\n return {\n name: 'AES-GCM',\n }\n }\n\n default: {\n return {\n name: 'ECDH',\n namedCurve: 'P-256',\n }\n }\n }\n}\n\nconst generateHMAC = async (message, derivedKey) => {\n if (!message || !derivedKey) {\n return undefined\n } \n\n const crypto = await getWebCrypto()\n const Encoder = await getTextEncoder()\n\n const signature = await crypto.subtle.sign(\n 'HMAC',\n derivedKey,\n new Encoder().encode(message)\n )\n\n return stringToHex(\n arrayBufferToString(signature)\n )\n}\n\nconst verifyHMAC = async (message, derivedKey, verifiableHMAC) => {\n const calculatedHMAC = await generateHMAC(message, derivedKey)\n\n return timingSafeEqual(calculatedHMAC, verifiableHMAC)\n}\n\nconst getStorableKey = async (key) => {\n const crypto = await getWebCrypto()\n\n const exportedJWK = await crypto.subtle.exportKey('jwk', key)\n return stringToHex(JSON.stringify(exportedJWK))\n}\n\nconst restoreStorableKey = async (keyType, storableHex) => {\n if (!storableHex) {\n return undefined\n }\n const crypto = await getWebCrypto()\n\n const exportedJWK = JSON.parse(hexToString(storableHex) || '{}')\n if (objectEmpty(exportedJWK)) {\n return undefined\n }\n\n return crypto.subtle.importKey(\n 'jwk',\n exportedJWK,\n getKeyAlgorythm(keyType),\n true,\n getKeyOperations(keyType)\n )\n}\n\nconst getStorableKeyPair = async (keyPair) => {\n const storableKeys = {}\n\n // eslint-disable-next-line no-restricted-syntax\n for (const [keyType, key] of Object.entries(keyPair)) {\n // eslint-disable-next-line no-await-in-loop\n storableKeys[keyType] = await getStorableKey(key)\n }\n\n return storableKeys\n}\n\nconst restoreStorableKeyPair = async (keyPair) => {\n const restoredKeys = {}\n\n // eslint-disable-next-line no-restricted-syntax\n for (const [keyType, key] of Object.entries(keyPair)) {\n // eslint-disable-next-line no-await-in-loop\n restoredKeys[keyType] = await restoreStorableKey(keyType, key)\n }\n\n return restoredKeys\n}\n\nconst deriveSharedKey = async ({ publicKey, privateKey }) => {\n if (!publicKey || !privateKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n const derivedKey = await crypto.subtle.deriveKey(\n {\n name: 'ECDH',\n public: publicKey,\n },\n privateKey,\n {\n name: 'AES-GCM',\n length: 256,\n },\n true,\n ['encrypt', 'decrypt']\n )\n return derivedKey\n}\n\nconst deriveHMACKey = async ({ publicKey, privateKey }) => {\n if (!publicKey || !privateKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n const derivedKey = await crypto.subtle.deriveKey(\n {\n name: 'ECDH',\n public: publicKey,\n },\n privateKey,\n {\n name: 'HMAC',\n hash: { name: 'SHA-256' },\n length: 256, // Adjusted key length, e.g., 128 bits\n },\n true,\n ['sign', 'verify']\n )\n return derivedKey\n}\n\nconst getVerificationKeys = async ({ publicKey, privateKey }) => {\n if (!publicKey || !privateKey) {\n return {}\n }\n\n const sharedKeyPair = await restoreStorableKeyPair({ publicKey, privateKey })\n const derivedHMACKey = await deriveHMACKey(sharedKeyPair)\n const derivedSecretKey = await deriveSharedKey(sharedKeyPair)\n\n return {\n derivedSecretKey,\n derivedHMACKey,\n }\n}\n\nconst encryptMessage = async (decryptedMessage, derivedKey) => {\n if (!decryptedMessage || !derivedKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n const iv = crypto.getRandomValues(new Uint8Array(12))\n const Encoder = await getTextEncoder()\n const encodedMessage = new Encoder().encode(decryptedMessage)\n const ciphertext = await crypto.subtle.encrypt(\n {\n name: 'AES-GCM',\n iv,\n },\n derivedKey,\n encodedMessage\n )\n\n const encryptedMessage = new Uint8Array([\n ...iv,\n ...new Uint8Array(ciphertext)\n ])\n return Array.from(encryptedMessage)\n}\n\nconst decryptMessage = async (encryptedMessage, derivedKey) => {\n if (!encryptedMessage || !derivedKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n // NOTE: this presumed an array or arrayBuffer coming in as encryptedMessage (will fail w/ IV error if its a string)\n const encryptedArrayBuffer = ensureArrayBuffer(encryptedMessage)\n const iv = encryptedArrayBuffer.slice(0, 12)\n const ciphertext = encryptedArrayBuffer.slice(12)\n\n const decryptedArrayBuffer = await crypto.subtle.decrypt(\n {\n name: 'AES-GCM',\n iv,\n },\n derivedKey,\n ciphertext\n )\n\n const Decoder = await getTextDecoder()\n const decryptedMessage = new Decoder().decode(decryptedArrayBuffer)\n return decryptedMessage\n}\n\nexport const subtle = {\n generateKeyPair,\n generateHMAC,\n verifyHMAC,\n getStorableKey,\n getStorableKeyPair,\n restoreStorableKeyPair,\n deriveSharedKey,\n deriveHMACKey,\n getVerificationKeys,\n encryptMessage,\n decryptMessage,\n}\n","import {\n ensureLeadingSlash,\n stringEmpty,\n uppercase,\n safeParse,\n} from './display'\n\nconst TEMP_HOSTNAME = 'xyz.com'\nconst REMOVABLE_KEYS = ['shop', 'host']\n\nexport const HEADER_CONTENT_TYPE = 'Content-Type'\nexport const CONTENT_TYPES = {\n APPLICATION_JSON: 'application/json',\n}\n\nexport const getRequestMethod = (body, _method) => {\n const method = _method ?? (body ? 'POST' : 'GET')\n\n return uppercase(method)\n}\n\nexport const prepareRequestOptions = ({ method: _method, body: _body, headers: _header, ...requestOptions } = {}) => {\n const method = getRequestMethod(_body, _method)\n\n const headers = {\n [HEADER_CONTENT_TYPE]: CONTENT_TYPES.APPLICATION_JSON,\n ..._header,\n }\n\n let body = _body\n if (body && headers[HEADER_CONTENT_TYPE].startsWith(CONTENT_TYPES.APPLICATION_JSON)) {\n body = JSON.stringify(safeParse(body))\n }\n\n return {\n method,\n headers,\n ...(body && (method !== 'GET')) && { body },\n ...requestOptions,\n }\n}\n\nconst convertToURL = (uri) => {\n if (stringEmpty(uri)) {\n return undefined\n }\n\n const protocolRegex = /^(https?:\\/\\/).+/i\n\n if (!protocolRegex.test(uri)) {\n return new URL(`https://${TEMP_HOSTNAME}${ensureLeadingSlash(uri)}`)\n }\n\n return new URL(uri)\n}\n\nexport const normalizeURIParts = (uri) => {\n const urlObject = convertToURL(uri)\n if (!urlObject) {\n return undefined\n }\n\n REMOVABLE_KEYS.forEach((key) => urlObject.searchParams.delete(key))\n\n return {\n ...(urlObject.hostname !== TEMP_HOSTNAME) && {\n origin: urlObject.origin,\n },\n pathname: urlObject.pathname,\n search: urlObject.search,\n }\n}\n","/*!\n * raw-body\n * Copyright(c) 2013-2014 Jonathan Ong\n * Copyright(c) 2014-2022 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict'\n\n/**\n * Module dependencies.\n * @private\n */\n\nvar asyncHooks = tryRequireAsyncHooks()\nvar bytes = require('bytes')\nvar createError = require('http-errors')\nvar iconv = require('iconv-lite')\nvar unpipe = require('unpipe')\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = getRawBody\n\n/**\n * Module variables.\n * @private\n */\n\nvar ICONV_ENCODING_MESSAGE_REGEXP = /^Encoding not recognized: /\n\n/**\n * Get the decoder for a given encoding.\n *\n * @param {string} encoding\n * @private\n */\n\nfunction getDecoder (encoding) {\n if (!encoding) return null\n\n try {\n return iconv.getDecoder(encoding)\n } catch (e) {\n // error getting decoder\n if (!ICONV_ENCODING_MESSAGE_REGEXP.test(e.message)) throw e\n\n // the encoding was not found\n throw createError(415, 'specified encoding unsupported', {\n encoding: encoding,\n type: 'encoding.unsupported'\n })\n }\n}\n\n/**\n * Get the raw body of a stream (typically HTTP).\n *\n * @param {object} stream\n * @param {object|string|function} [options]\n * @param {function} [callback]\n * @public\n */\n\nfunction getRawBody (stream, options, callback) {\n var done = callback\n var opts = options || {}\n\n // light validation\n if (stream === undefined) {\n throw new TypeError('argument stream is required')\n } else if (typeof stream !== 'object' || stream === null || typeof stream.on !== 'function') {\n throw new TypeError('argument stream must be a stream')\n }\n\n if (options === true || typeof options === 'string') {\n // short cut for encoding\n opts = {\n encoding: options\n }\n }\n\n if (typeof options === 'function') {\n done = options\n opts = {}\n }\n\n // validate callback is a function, if provided\n if (done !== undefined && typeof done !== 'function') {\n throw new TypeError('argument callback must be a function')\n }\n\n // require the callback without promises\n if (!done && !global.Promise) {\n throw new TypeError('argument callback is required')\n }\n\n // get encoding\n var encoding = opts.encoding !== true\n ? opts.encoding\n : 'utf-8'\n\n // convert the limit to an integer\n var limit = bytes.parse(opts.limit)\n\n // convert the expected length to an integer\n var length = opts.length != null && !isNaN(opts.length)\n ? parseInt(opts.length, 10)\n : null\n\n if (done) {\n // classic callback style\n return readStream(stream, encoding, length, limit, wrap(done))\n }\n\n return new Promise(function executor (resolve, reject) {\n readStream(stream, encoding, length, limit, function onRead (err, buf) {\n if (err) return reject(err)\n resolve(buf)\n })\n })\n}\n\n/**\n * Halt a stream.\n *\n * @param {Object} stream\n * @private\n */\n\nfunction halt (stream) {\n // unpipe everything from the stream\n unpipe(stream)\n\n // pause stream\n if (typeof stream.pause === 'function') {\n stream.pause()\n }\n}\n\n/**\n * Read the data from the stream.\n *\n * @param {object} stream\n * @param {string} encoding\n * @param {number} length\n * @param {number} limit\n * @param {function} callback\n * @public\n */\n\nfunction readStream (stream, encoding, length, limit, callback) {\n var complete = false\n var sync = true\n\n // check the length and limit options.\n // note: we intentionally leave the stream paused,\n // so users should handle the stream themselves.\n if (limit !== null && length !== null && length > limit) {\n return done(createError(413, 'request entity too large', {\n expected: length,\n length: length,\n limit: limit,\n type: 'entity.too.large'\n }))\n }\n\n // streams1: assert request encoding is buffer.\n // streams2+: assert the stream encoding is buffer.\n // stream._decoder: streams1\n // state.encoding: streams2\n // state.decoder: streams2, specifically < 0.10.6\n var state = stream._readableState\n if (stream._decoder || (state && (state.encoding || state.decoder))) {\n // developer error\n return done(createError(500, 'stream encoding should not be set', {\n type: 'stream.encoding.set'\n }))\n }\n\n if (typeof stream.readable !== 'undefined' && !stream.readable) {\n return done(createError(500, 'stream is not readable', {\n type: 'stream.not.readable'\n }))\n }\n\n var received = 0\n var decoder\n\n try {\n decoder = getDecoder(encoding)\n } catch (err) {\n return done(err)\n }\n\n var buffer = decoder\n ? ''\n : []\n\n // attach listeners\n stream.on('aborted', onAborted)\n stream.on('close', cleanup)\n stream.on('data', onData)\n stream.on('end', onEnd)\n stream.on('error', onEnd)\n\n // mark sync section complete\n sync = false\n\n function done () {\n var args = new Array(arguments.length)\n\n // copy arguments\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n\n // mark complete\n complete = true\n\n if (sync) {\n process.nextTick(invokeCallback)\n } else {\n invokeCallback()\n }\n\n function invokeCallback () {\n cleanup()\n\n if (args[0]) {\n // halt the stream on error\n halt(stream)\n }\n\n callback.apply(null, args)\n }\n }\n\n function onAborted () {\n if (complete) return\n\n done(createError(400, 'request aborted', {\n code: 'ECONNABORTED',\n expected: length,\n length: length,\n received: received,\n type: 'request.aborted'\n }))\n }\n\n function onData (chunk) {\n if (complete) return\n\n received += chunk.length\n\n if (limit !== null && received > limit) {\n done(createError(413, 'request entity too large', {\n limit: limit,\n received: received,\n type: 'entity.too.large'\n }))\n } else if (decoder) {\n buffer += decoder.write(chunk)\n } else {\n buffer.push(chunk)\n }\n }\n\n function onEnd (err) {\n if (complete) return\n if (err) return done(err)\n\n if (length !== null && received !== length) {\n done(createError(400, 'request size did not match content length', {\n expected: length,\n length: length,\n received: received,\n type: 'request.size.invalid'\n }))\n } else {\n var string = decoder\n ? buffer + (decoder.end() || '')\n : Buffer.concat(buffer)\n done(null, string)\n }\n }\n\n function cleanup () {\n buffer = null\n\n stream.removeListener('aborted', onAborted)\n stream.removeListener('data', onData)\n stream.removeListener('end', onEnd)\n stream.removeListener('error', onEnd)\n stream.removeListener('close', cleanup)\n }\n}\n\n/**\n * Try to require async_hooks\n * @private\n */\n\nfunction tryRequireAsyncHooks () {\n try {\n return require('async_hooks')\n } catch (e) {\n return {}\n }\n}\n\n/**\n * Wrap function with async resource, if possible.\n * AsyncResource.bind static method backported.\n * @private\n */\n\nfunction wrap (fn) {\n var res\n\n // create anonymous resource\n if (asyncHooks.AsyncResource) {\n res = new asyncHooks.AsyncResource(fn.name || 'bound-anonymous-fn')\n }\n\n // incompatible node.js\n if (!res || !res.runInAsyncScope) {\n return fn\n }\n\n // return bound function\n return res.runInAsyncScope.bind(res, fn, null)\n}\n","// import getRawBody from 'raw-body'\nimport * as getRawBody from 'raw-body'\n\n// TODO: explore returning mutated request object adding on req.rawBody??\n// TODO: move to req.text() after next 13.5\nexport const ensureRawBody = async (req) => (\n getRawBody(req)\n .then((_rawBody) => _rawBody.toString())\n .catch((error) => {\n // NOTE: this is intended to ensure if getRawBody is called 2x w/in a route that it returns the already streamed body\n if ((error?.type === 'stream.not.readable')) {\n if (!req?.rawBody) {\n // eslint-disable-next-line max-len\n console.info('Ignoring error reading raw requst body. This can occur if the body is attempted to be read twice in a single request. If intentional, please mutate the request to add the result of this call as req.rawBody (to prevent this warning).')\n return req?.body\n }\n\n return req?.rawBody\n }\n\n console.error(`Error getting raw body for '${req?.url}'`, error)\n throw error\n })\n)\n","export class VerificationError extends Error {\n constructor(message, _data) {\n super(message)\n const { code = 500, ...data } = _data ?? {}\n this.code = code\n this.data = data\n this.name = 'VerificationError'\n Object.setPrototypeOf(this, VerificationError.prototype)\n }\n}\n","import { subtle } from '../shared/subtlecrypto'\nimport { getRequestMethod, normalizeURIParts } from '../shared/request'\nimport {\n objectToSortedString,\n ensureString,\n safeParse,\n isTrue,\n} from '../shared/display'\nimport { ensureRawBody } from './rawbody'\nimport { VerificationError } from './errors'\n\nexport const getVerificationHelpers = ({ keyPairs }) => (\n async (req, params) => {\n const {\n 'x-public-key': apiKey,\n 'x-ephemeral-key': ephemeralPublicKey,\n 'x-authorization-timestamp': customAuthTimestamp,\n 'x-authorization': customAuth,\n } = req.headers ?? {}\n\n const { uri: _uri, disableRecryption: _disableRecryption } = params ?? {}\n const uri = _uri ?? req.url\n const disableRecryption = isTrue(_disableRecryption)\n\n let isVerifiable\n try {\n const [authProtocol, authSignature] = ensureString(customAuth).split(' ')\n isVerifiable = isTrue(\n apiKey &&\n ephemeralPublicKey &&\n keyPairs?.shared &&\n customAuthTimestamp &&\n authSignature &&\n (authProtocol === 'HMAC-SHA256')\n )\n\n let verificationKeys\n const rawBody = await ensureRawBody(req)\n\n // NOTE: requestBody should be wind up decrypted when isVerifiable (unless disableRecryption, then will pass through)\n let requestBody = safeParse(rawBody)\n\n // TEMP!!! remove isVerifiable check once webwidget moved to react\n if (isVerifiable) {\n if (\n !apiKey ||\n !ephemeralPublicKey ||\n !customAuthTimestamp ||\n !authSignature ||\n !keyPairs?.shared ||\n (apiKey !== keyPairs.shared.publicKey) ||\n (authProtocol !== 'HMAC-SHA256')\n ) {\n throw new VerificationError('Invalid or missing authorization', { code: 401 })\n }\n\n verificationKeys = await subtle.getVerificationKeys({\n publicKey: ephemeralPublicKey,\n privateKey: keyPairs.shared.privateKey,\n })\n\n if (!verificationKeys) {\n throw new VerificationError('Invalid or missing verification', { code: 412 })\n }\n\n const verificationPayload = objectToSortedString({\n method: getRequestMethod(rawBody, req.method),\n timestamp: customAuthTimestamp,\n body: requestBody, // NOTE: requestBody should be encrypted when isVerifiable\n ...normalizeURIParts(uri),\n })\n\n const isValid = await subtle.verifyHMAC(\n verificationPayload,\n verificationKeys.derivedHMACKey,\n authSignature\n )\n\n if (!isValid) {\n throw new VerificationError('Invalid or missing verification', { code: 412 })\n }\n\n if (!disableRecryption && requestBody) {\n const decryptedMessage = await subtle.decryptMessage(requestBody, verificationKeys.derivedSecretKey)\n requestBody = safeParse(decryptedMessage)\n }\n }\n\n const processResponse = async (response) => {\n if (!response || disableRecryption || !isVerifiable || !verificationKeys?.derivedSecretKey) {\n return response\n }\n\n return subtle.encryptMessage(JSON.stringify(response), verificationKeys.derivedSecretKey)\n }\n\n return { rawBody, requestBody, processResponse }\n } catch (error) {\n console.error(`Error handling request verification for '${uri}'`, { error, isVerifiable, disableRecryption })\n throw error\n }\n }\n)\n"],"names":["getRawBody"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agnostack/next-shopify",
|
|
3
|
-
"version": "1.15.0-beta.
|
|
3
|
+
"version": "1.15.0-beta.3",
|
|
4
4
|
"author": "agnoStack Dev <developers@agnostack.com> (https://agnostack.com)",
|
|
5
5
|
"owner": "agnoStack",
|
|
6
6
|
"description": "Please contact agnoStack via info@agnostack.com for any questions",
|
|
@@ -127,8 +127,7 @@
|
|
|
127
127
|
"sinon-chai": "3.6.0",
|
|
128
128
|
"ts-jest": "29.0.3",
|
|
129
129
|
"ts-node": "10.9.1",
|
|
130
|
-
"typescript": "4.7.4"
|
|
131
|
-
"uuid": "8.3.2"
|
|
130
|
+
"typescript": "4.7.4"
|
|
132
131
|
},
|
|
133
132
|
"bundledDependencies": [
|
|
134
133
|
"browser-monads-ts",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"umd-verification.js","sources":["../../node_modules/browser-monads-ts/dist/browser-monads-ts.es.js","../../src/shared/display.js","../../src/shared/subtlecrypto.js","../../src/shared/request.js","../../node_modules/raw-body/index.js","../../src/verification/rawbody.js","../../src/verification/errors.js","../../src/verification/verification.js"],"sourcesContent":["var n,r=((n=function(){return r}).toString=n.toLocaleString=n[Symbol.toPrimitive]=function(){return \"\"},n.valueOf=function(){return !1},new Proxy(Object.freeze(n),{get:function(n,t){return n.hasOwnProperty(t)?n[t]:r}})),u=function(n){return n===r};\n\nlet win = global.window;\nlet doc = global.document;\nlet nav = global.navigator;\nlet document = typeof doc !== \"undefined\" ? doc : r;\nlet exists = (variable) => !u(variable);\nlet navigator = typeof nav !== \"undefined\" ? nav : r;\nlet window = typeof win !== \"undefined\" ? win : r;\n\nexport { document, exists, navigator, window };\n//# sourceMappingURL=browser-monads-ts.es.js.map\n","/* eslint-disable no-use-before-define */\nimport { v4 as uuidV4 } from 'uuid'\n\n// #region lib-core\n// TODO!!!: keep in sync between next-shopify and lib-core (and lib-utils-js at bottom)\nexport const normalizeShopifyId = (shopifyData) => {\n const isString = isType(shopifyData, 'string')\n if (isString && !shopifyData.startsWith('gid:')) {\n if (!isNumericOnly(shopifyData)) {\n return {}\n }\n\n return {\n id: `${shopifyData}`,\n }\n }\n\n const { id: _entityId, legacyResourceId } = isString\n ? { id: shopifyData }\n : ensureObject(shopifyData)\n\n if (stringEmpty(_entityId) && stringEmpty(legacyResourceId)) {\n return {}\n }\n\n const entity_id = ensureString(_entityId)\n const { entity_type, parsedId } = entity_id.match(/^gid:\\/\\/shopify\\/(?<entity_type>.*)\\/(?<parsedId>[0-9]+).*$/)?.groups ?? {}\n const id = ensureString(parsedId || legacyResourceId)\n\n const hasEntityId = stringNotEmpty(entity_id)\n const hasEntityType = stringNotEmpty(entity_type)\n\n return {\n ...stringNotEmpty(id) && { id },\n ...hasEntityId && { entity_id },\n ...hasEntityType && { entity_type },\n ...(hasEntityId && hasEntityType) && {\n gid: `gid://shopify/${entity_type}/${entity_id}`,\n },\n }\n}\n\nexport const random = (max = 100, min = 1) => {\n const floor = Math.min(max, min)\n return Math.floor(Math.random() * (max - floor + 1)) + floor\n}\n\nexport const nextRandom = (max = 100, min = 1) => {\n const maximum = Math.max(max, 0)\n const minimum = Math.max(min, 0)\n\n let randomNumber = maximum\n\n if (maximum > minimum) {\n do {\n randomNumber = random(maximum, minimum)\n } while (randomNumber === nextRandom.last)\n\n nextRandom.last = randomNumber\n }\n\n return randomNumber\n}\n\nexport const arrayRandom = (_values, _max = 1) => {\n const values = ensureArray(_values)\n const valuesLength = values.length\n const maxLength = Math.min(_max, valuesLength)\n\n if (valuesLength <= maxLength) {\n return values\n }\n\n const arrayLength = valuesLength - 1\n const randomValues = []\n do {\n const newVal = values[nextRandom(arrayLength, 0)]\n if (!randomValues.includes(newVal)) {\n randomValues.push(newVal)\n }\n } while (randomValues.length < maxLength)\n\n return randomValues\n}\n\nexport const arrayRandomItem = (_values) => (\n arrayRandom(_values)[0]\n)\n\nexport const isArray = (value) => (\n // eslint-disable-next-line eqeqeq\n (value != undefined) && Array.isArray(value)\n)\n\nexport const isSet = (value) => (\n // eslint-disable-next-line eqeqeq\n (value != undefined) && (value instanceof Set)\n)\n\nexport const isType = (value, type) => (\n // eslint-disable-next-line eqeqeq, valid-typeof\n (value != undefined) && (typeof value === type)\n)\n\nexport const isTypeEnhanced = (value, type) => {\n switch (true) {\n case (type === 'set'): {\n return isSet(value)\n }\n\n case (type === 'array'): {\n return (\n isArray(value) &&\n !isSet(value)\n )\n }\n\n case (type === 'object'): {\n return (\n isType(value, type) &&\n !isArray(value)\n )\n }\n\n default: {\n return isType(value, type)\n }\n }\n}\n\nexport const safeTrim = (value) => {\n if (isType(value, 'string')) {\n // eslint-disable-next-line no-param-reassign\n value = value.trim()\n }\n\n return value\n}\n\nexport const safeParse = (value, trim) => {\n if (isType(value, 'string')) {\n if (trim) {\n // eslint-disable-next-line no-param-reassign\n value = safeTrim(value)\n }\n\n if (value.startsWith('{') || value.startsWith('[') || value.startsWith('\"')) {\n // eslint-disable-next-line no-param-reassign\n value = JSON.parse(value)\n }\n }\n\n // TODO: should this be value ?? {}\n return value\n}\n\nexport const ensureString = (string) => (\n string ? `${string}` : ''\n)\n\n// HMMM: what if 'string' is an object?\nexport const ensureStringOnly = (string) => (\n // eslint-disable-next-line eqeqeq\n (string != undefined) ? `${string}` : ''\n)\n\nexport const ensureStringAscii = (string) => (\n // eslint-disable-next-line no-control-regex\n ensureStringOnly(string).replace(/[^\\x00-\\x7F]/g, '')\n)\n\nexport const ensureStringClean = (string) => (\n // eslint-disable-next-line no-control-regex\n ensureStringOnly(string).replace(/[^a-z0-9_-]/gi, '')\n)\n\nexport const ensureAlphaNumeric = (string) => (\n // eslint-disable-next-line no-control-regex\n ensureStringOnly(string).replace(/[^a-z0-9]/gi, '')\n)\n\nexport const isNumericOnly = (value) => {\n const [matched] = `${value}`.match(/^([0-9]+)$/) ?? []\n // eslint-disable-next-line eqeqeq\n return (matched != undefined)\n}\n\nexport const isNumericNegatable = (value) => {\n const [matched] = `${value}`.match(/^(-?[0-9]+(\\.[0-9]+)?)?$/) ?? []\n // eslint-disable-next-line eqeqeq\n return (matched != undefined)\n}\n\n// TODO: explore places using ensureNumeric to move to isNumericNegatable\nexport const ensureNumeric = (string) => (\n Number(ensureString(string).replace(/[^0-9.]/gi, ''))\n)\n\nexport const ensureNumericOnly = (string) => (\n Number(ensureString(string).replace(/[^0-9]/gi, ''))\n)\n\n// TODO: update regex to handle negative number returns negative. Something like (?!\\d\\.)(-?\\d+(\\.\\d)?)\nexport const ensureNumericNegatable = (string) => (\n Number(ensureString(string).replace(/[^0-9.-]/gi, ''))\n)\n\nexport const ensureNumericConstrained = (value, { min: _min = 0, max: _max = 100 } = {}) => {\n const min = ensureNumericNegatable(_min)\n const max = ensureNumericNegatable(_max)\n\n return Math.max(\n min,\n Math.min(ensureNumeric(value), max)\n )\n}\n\nexport const ensureArray = (array = []) => (\n // eslint-disable-next-line no-nested-ternary\n !array ? [] : Array.isArray(array) ? array : [array]\n)\n\nexport const ensureArraySet = (arrayOrSet) => (\n ensureArray(isSet(arrayOrSet) ? [...arrayOrSet] : arrayOrSet)\n)\n\nexport const arrayEmpty = (array, disableEmptyString = false) => (\n // eslint-disable-next-line eqeqeq\n !array || !array.length || (array.length === 1 && (array[0] == undefined || (disableEmptyString && stringEmpty(array[0]))))\n)\n\nexport const arrayNotEmpty = (array, disableEmptyString = false) => (\n // eslint-disable-next-line eqeqeq\n !arrayEmpty(array) && array[0] != undefined && (!disableEmptyString || stringNotEmpty(array[0]))\n)\n\nexport const findLastMatch = (array, filterCallback = (value) => (value)) => (\n ensureArray(array).filter(filterCallback).slice(-1)[0]\n)\n\nexport const ensureObject = (object) => (\n object ?? {}\n)\n\n// NOTE: this does not ensure !isType(string)\nexport const objectEmpty = (object) => (\n !object || !Object.keys(object).length\n)\n\nexport const objectNotEmpty = (object) => (\n !objectEmpty(object)\n)\n\nexport const nullable = (object) => (\n (!object || (object === 'null') || (object === undefined) || (object === null))\n ? null // TODO: explore undefined here??\n : object\n)\n\nexport const objectContainsAnyValue = (object) => (\n Object.values(ensureObject(object)).some((value) => nullable(value))\n)\n\nconst isUndefined = (value) => (\n // eslint-disable-next-line eqeqeq\n value == undefined\n)\n\nexport const cleanObject = (object, allowEmptyLeafs, isEmptyCallback) => (\n Object.entries(ensureObject(object)).reduce((\n _cleanedObject,\n [key, _value]\n ) => {\n if (!allowEmptyLeafs && (isEmptyCallback?.(_value) ?? isUndefined(_value))) {\n return _cleanedObject // skip key if null or undefined\n }\n\n const value = !Array.isArray(_value)\n ? cleanObjectValue(_value, allowEmptyLeafs, isEmptyCallback)\n : _value.reduce((_data, __value) => ([\n ..._data,\n cleanObjectValue(__value, allowEmptyLeafs, isEmptyCallback)\n ]), [])\n\n return {\n ..._cleanedObject,\n [key]: value,\n }\n }, {})\n)\n\nconst cleanObjectValue = (value, allowEmptyLeafs, isEmptyCallback) => (\n isType(value, 'object') ? cleanObject(value, allowEmptyLeafs, isEmptyCallback) : value\n)\n\nexport const stringNotEmptyOnly = (stringable) => {\n const string = ensureStringOnly(stringable)\n return ((string.length > 0) && !['null', 'undefined'].includes(string))\n}\n\nexport const stringEmptyOnly = (stringable) => (\n !stringNotEmptyOnly(stringable)\n)\n\nexport const stringNotEmpty = (stringable) => {\n const string = ensureString(stringable)\n return ((string.length > 0) && !['null', 'undefined'].includes(string))\n}\n\nexport const stringEmpty = (stringable) => (\n !stringNotEmpty(stringable)\n)\n\nconst splitString = (splitting, index = splitting.length) => {\n const string = ensureString(splitting)\n return [string.slice(0, index), string.slice(index)]\n}\n\nexport const compareNumber = (number1 = 0, number2 = 0) => (\n number1 - number2\n)\n\nexport const compareString = (string1, string2) => {\n if (stringEmpty(string1)) {\n return 1\n }\n\n if (stringEmpty(string2)) {\n return -1\n }\n\n return ensureString(string1).localeCompare(string2)\n}\n\nexport const compareEntryKeys = ([string1], [string2]) => (\n compareString(string1, string2)\n)\n\nexport const objectToSortedString = (object, separator = '') => (\n Object.entries(ensureObject(object))\n .sort(compareEntryKeys)\n .map(([key, value]) => `${key}=${value}`)\n .join(separator)\n)\n\nexport const isHTML = (string) => (\n (string?.startsWith?.('<') || string?.startsWith?.('\\n<')) ?? false\n)\n\nexport const freeze = (logMessage, object, type = 'log') => {\n console[type](logMessage, !object ? object : JSON.parse(JSON.stringify(ensureObject(object))))\n}\n\nexport const replaceSpaces = (string, replacement = '') => (\n !isType(string, 'string')\n ? ''\n : string.replace(/\\s/g, replacement)\n)\n\nconst recase = (string, replacement = '') => (\n !isType(string, 'string')\n ? ''\n : string\n .replace(/[^a-zA-Z0-9]+/g, replacement)\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')\n .replace(/([a-z])([A-Z])/g, '$1-$2')\n .replace(/([0-9])([^0-9])/g, '$1-$2')\n .replace(/([^0-9])([0-9])/g, '$1-$2')\n .replace(/[-_]+/g, replacement)\n .replace(new RegExp(`${replacement}$`), '')\n .toLowerCase()\n)\n\nexport const zencase = (string, replacement = '-') => (\n !isType(string, 'string')\n ? ''\n : replaceSpaces(string, replacement)\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')\n .replace(/([a-z])([A-Z])/g, '$1-$2')\n .replace(new RegExp(`${replacement}$`), '')\n .toLowerCase()\n)\n\nexport const dashcase = (string) => (\n recase(string, '-')\n)\n\nexport const undashcase = (string, replacement = ' ') => (\n ensureString(string).replace(/-/g, replacement).trim()\n)\n\nexport const snakecase = (string) => (\n recase(string, '_')\n)\n\nexport const unsnakecase = (string, replacement = ' ') => (\n ensureString(string).replace(/_/g, replacement).trim()\n)\n\nexport const uppercase = (string) => (\n ensureString(string).toUpperCase()\n)\n\nexport const lowercase = (string, defaultValue = '') => (\n !stringNotEmpty(string)\n ? defaultValue\n : ensureString(string).toLowerCase()\n)\n\nexport const slugify = (string) => (\n lowercase(dashcase(string))\n)\n\nexport const capitalize = (string) => {\n const parts = splitString(string, 1)\n return `${uppercase(parts[0])}${parts[1]}`\n}\n\nexport const camelCase = (string) => (\n stringNotEmpty(string)\n ? unsnakecase(undashcase(string)).replace(/\\w\\S*/g, (word, charIndex) => {\n if (charIndex === 0) {\n return lowercase(word)\n }\n return `${uppercase(word.charAt(0))}${lowercase(word.substr(1))}`\n }).split(' ').join('')\n : ''\n)\n\nexport const titleCase = (string, _overrides) => {\n if (!stringNotEmpty(string)) {\n return ''\n }\n\n const overrides = {\n 'add-ons': 'Add-Ons',\n agnostack: 'agnoStack',\n ai: 'AI',\n b2b: 'B2B',\n b2c: 'B2C',\n cartcollab: 'CartCollab',\n 'cartcollab(sm)': 'CartCollab(SM)',\n chatgpt: 'ChatGPT',\n covid: 'COVID',\n covid19: 'COVID-19',\n 'covid-19': 'COVID-19',\n crm: 'CRM',\n elasticpath: 'Elastic Path',\n ecommerce: 'eCommerce',\n 'e-commerce': 'eCommerce',\n faqs: 'FAQs',\n gpt: 'GPT',\n 'smile.io': 'Smile.io',\n 'stamped.io': 'Stamped.io',\n 'judge.me': 'Judge.me',\n 'influence.io': 'Influence.io',\n keepsmallstrong: 'KeepSmallStrong',\n loyaltylion: 'LoyaltyLion',\n openai: 'OpenAI',\n paypal: 'PayPal',\n 'postscript.io': 'Postscript.io',\n recharge: 'ReCharge',\n 'stay.ai': 'Stay.ai',\n 'stay ai': 'Stay Ai',\n shipengine: 'ShipEngine',\n shipperhq: 'ShipperHQ',\n shipstation: 'ShipStation',\n taxjar: 'TaxJar',\n yotpo: 'YotPo',\n ..._overrides,\n }\n\n const stringParts = lowercase(string)\n .split(' ')\n .reduce((\n _stringParts,\n _stringPart\n ) => {\n const stringPart = overrides[_stringPart] ?? _stringPart\n .replace(/([A-Z]+)/g, ' $1')\n .replace(/\\s\\s+/g, ' ')\n .replace(/(\\b[a-z](?!\\s)*)/g, (firstChar) => uppercase(firstChar))\n\n return [\n ..._stringParts,\n ...stringNotEmpty(stringPart) ? [stringPart] : []\n ]\n }, [])\n\n return stringParts.join(' ')\n}\n\nexport const removeLeadingSlash = (string) => (\n ensureString(string).replace(/^\\//, '')\n)\n\nexport const removeLeadingTrailingQuotes = (string) => (\n ensureString(string).replace(/^\"|\"$/g, '')\n)\n\n// TODO: not sure if this should remove multipel at end or just one (as it does now)?\nexport const removeTrailingSlash = (string) => (\n ensureString(string).replace(/\\/$/, '')\n)\n\nexport const removeLeadingTrailingSlash = (string) => (\n removeTrailingSlash(removeLeadingSlash(string))\n)\n\nexport const ensureLeadingSlash = (string) => (\n `/${removeLeadingSlash(string)}`\n)\n\nexport const ensureTrailingSlash = (string) => (\n `${removeTrailingSlash(string)}/`\n)\n\nexport const ensureExtension = (string, extension) => {\n if (stringEmpty(extension)) {\n return string\n }\n\n const filePath = string.match(/(.*)\\..+$/)?.[1] ?? string\n\n return `${filePath}.${extension}`\n}\n\nexport const wrappedEncode = (basePath, _wrappingPath) => {\n const wrappingPath = ensureString(_wrappingPath)\n if (stringEmpty(basePath)) {\n return wrappingPath\n }\n\n return `${basePath}${encodeURIComponent(wrappingPath)}`\n}\n\nexport const splitCommas = (value) => (\n ensureString(value)\n .replace(/, /g, ',')\n .split(',')\n .reduce((_values, _value) => {\n const __value = safeTrim(_value)\n return [\n ..._values,\n ...stringNotEmpty(__value) ? [__value] : [] // TODO: explore stringEmptyOnly?\n ]\n }, [])\n)\n\nexport const combineCommas = (values) => (\n [...new Set(\n ensureArray(values).reduce((\n _combined,\n value\n ) => ([\n ..._combined,\n ...splitCommas(value)\n ]), [])\n )]\n)\n\nexport const normalizeArray = (input, separator = ' ') => {\n const inputArray = ensureArray(input)\n\n return inputArray.reduce((normalized, _ignore, index) => ([\n ...normalized,\n inputArray.slice(0, index + 1).join(separator)\n ]), []).reverse()\n}\n\nexport const arrayToObject = (arrayable, key) => (\n ensureArray(arrayable).reduce((_object, item) => ({\n ..._object,\n [item?.[key]]: item,\n }), {})\n)\n\nexport const isTrue = (value, falsy) => {\n const string = ensureString(value)\n return ![...ensureArray(falsy), '', 'false'].includes(string)\n}\n\n// TODO: move all uses of parseKeywords to parseKeywordGroups\nexport const parseKeywords = (keywordGroup, previous) => (\n [...new Set(ensureArray(keywordGroup).reduce((_parsedKeywords, keyword) => {\n const keywords = splitCommas(keyword)\n\n return [\n ..._parsedKeywords,\n ...keywords.filter((_keyword) => stringNotEmpty(_keyword))\n ]\n }, ensureArray(previous)))].join(', ')\n)\n\nexport const parseKeywordGroups = (keywordGroups) => {\n const parsedKeywords = ensureArray(keywordGroups).reduce((_parsedKeywords, keywordGroup) => ([\n ..._parsedKeywords,\n ...ensureArray(keywordGroup).reduce((_parsedGroupKeywords, keyword) => {\n const keywords = splitCommas(keyword)\n\n return [\n ..._parsedGroupKeywords,\n ...keywords.filter((_keyword) => stringNotEmpty(_keyword))\n ]\n }, [])\n ]), [])\n\n return [...new Set(parsedKeywords)].join(', ')\n}\n\nexport const parseProjectName = (_name) => {\n const name = ensureString(_name)\n const [, organization, ...parts] = /(@.*)([\\\\]+|\\/)+(.*)/.exec(name) ?? []\n const projectName = organization ? name.replace(organization, '').replace('/', '') : name\n\n return {\n name,\n parts,\n organization,\n projectName,\n }\n}\n\nexport const parseProject = (packageInfo) => {\n const { shortName, owner: _appOwner, name: _name, appName: _appName, keywords, siteName: _siteName } = packageInfo ?? {}\n const { name, organization, projectName } = parseProjectName(_name)\n\n const appName = _appName ?? projectName?.slice(projectName?.indexOf('-') + 1)\n const siteName = _siteName ?? projectName?.slice(projectName?.indexOf('-') + 1)\n const companyName = titleCase(organization?.replace('@', ''))\n const appOwner = _appOwner ?? companyName\n\n return [{\n keywords,\n appOwner,\n appName,\n siteName,\n shortName,\n companyName,\n projectName,\n }, organization, name]\n}\n\n// #endregion lib-core\n\n// #region lib-utils-js\n\nexport const querystringToObject = (queryString) => {\n if (stringEmpty(queryString)) {\n return {}\n }\n\n const urlParams = new URLSearchParams(queryString)\n return Object.fromEntries(urlParams)\n}\n\nexport const arrayIncludesAll = (_values, comparison) => {\n const values = ensureArray(_values)\n return ensureArray(comparison).every((value) => (\n stringNotEmpty(value) && values.includes(value)\n ))\n}\n\nexport const arraysMatch = (array1, array2) => (\n arrayIncludesAll(array1, array2) && arrayIncludesAll(array2, array1)\n)\n\nexport const appendQuery = (_basePath, queryString) => {\n const basePath = ensureString(_basePath)\n if (stringEmpty(queryString)) {\n return basePath\n }\n return `${basePath}${basePath.includes('?') ? '&' : '?'}${queryString}`\n}\n\n// #endregion lib-utils-js\n\nexport const getGUID = () => (\n uuidV4()\n)\n\nexport const getInteger = () => (\n getGUID().replace(/\\D/g,'')\n)\n","import { exists, window } from 'browser-monads-ts'\n\nimport { ensureArray, ensureString, objectEmpty } from './display'\n\nconst getWebCrypto = async () => {\n try {\n const crypto = (await import('isomorphic-webcrypto')).default\n return crypto\n } catch (error) {\n console.error('Failed to import isomorphic-webcrypto', error)\n throw error\n }\n}\n\nconst getTextDecoder = async () => {\n if (exists(window) && (typeof window?.TextDecoder === 'function')) {\n return window.TextDecoder\n }\n\n try {\n const TextDecoder = (await import('util')).TextDecoder\n return TextDecoder\n } catch (error) {\n console.error('Failed to import utils.TextDecoder', error)\n throw error\n }\n}\n\nconst getTextEncoder = async () => {\n if (exists(window) && (typeof window?.TextEncoder === 'function')) {\n return window.TextEncoder\n }\n\n try {\n const TextEncoder = (await import('util')).TextEncoder\n return TextEncoder\n } catch (error) {\n console.error('Failed to import utils.TextEncoder', error)\n throw error\n }\n}\n\nconst timingSafeEqual = (value1, value2) => {\n if (\n (value1 == undefined) ||\n (value2 == undefined) ||\n (value1.length !== value2.length)\n ) {\n return false\n }\n\n let result = 0\n // eslint-disable-next-line no-plusplus\n for (let i = 0; i < value1.length; i++) {\n // eslint-disable-next-line no-bitwise\n result |= value1[i] ^ value2[i]\n }\n\n return (result === 0)\n}\n\nconst stringToHex = (stringValue) => (\n Array.from(ensureString(stringValue), (char) => (\n char.charCodeAt(0).toString(16).padStart(2, '0')\n )).join('')\n)\n\nconst hexToString = (hexValue) => (\n ensureArray(\n ensureString(hexValue).match(/.{1,2}/g)\n )\n .map((byte) => String.fromCharCode(parseInt(byte, 16)))\n .join('')\n)\n\nconst arrayBufferToString = async (arrayBuffer) => {\n const uint8Array = new Uint8Array(arrayBuffer)\n const Decoder = await getTextDecoder()\n return new Decoder().decode(uint8Array)\n}\n\nconst arrayToArrayBuffer = (array) => (\n (ArrayBuffer.from != undefined)\n ? ArrayBuffer.from(array)\n : new Uint8Array(array).buffer\n)\n\nconst ensureArrayBuffer = (arrayOrArrayBuffer) => (\n (arrayOrArrayBuffer instanceof ArrayBuffer)\n ? arrayOrArrayBuffer\n : arrayToArrayBuffer(arrayOrArrayBuffer)\n)\n\nconst generateKeyPair = async () => {\n const crypto = await getWebCrypto()\n const keyPair = await crypto.subtle.generateKey(\n {\n name: 'ECDH',\n namedCurve: 'P-256',\n },\n true,\n ['deriveKey']\n )\n\n return keyPair\n}\n\nconst getKeyOperations = (keyType) => {\n switch (keyType) {\n case 'private':\n case 'privateKey': {\n return ['deriveKey']\n }\n\n case 'secret':\n case 'secretKey':\n case 'sharedSecret': {\n return ['encrypt', 'decrypt'] \n }\n\n default: {\n return []\n }\n }\n}\n\nconst getKeyAlgorythm = (keyType) => {\n switch (keyType) {\n case 'derivedKey':\n case 'derived':\n case 'secret':\n case 'secretKey':\n case 'sharedSecret': {\n return {\n name: 'AES-GCM',\n }\n }\n\n default: {\n return {\n name: 'ECDH',\n namedCurve: 'P-256',\n }\n }\n }\n}\n\nconst generateHMAC = async (message, derivedKey) => {\n if (!message || !derivedKey) {\n return undefined\n } \n\n const crypto = await getWebCrypto()\n const Encoder = await getTextEncoder()\n\n const signature = await crypto.subtle.sign(\n 'HMAC',\n derivedKey,\n new Encoder().encode(message)\n )\n\n return stringToHex(\n arrayBufferToString(signature)\n )\n}\n\nconst verifyHMAC = async (message, derivedKey, verifiableHMAC) => {\n const calculatedHMAC = await generateHMAC(message, derivedKey)\n\n return timingSafeEqual(calculatedHMAC, verifiableHMAC)\n}\n\nconst getStorableKey = async (key) => {\n const crypto = await getWebCrypto()\n\n const exportedJWK = await crypto.subtle.exportKey('jwk', key)\n return stringToHex(JSON.stringify(exportedJWK))\n}\n\nconst restoreStorableKey = async (keyType, storableHex) => {\n if (!storableHex) {\n return undefined\n }\n const crypto = await getWebCrypto()\n\n const exportedJWK = JSON.parse(hexToString(storableHex) || '{}')\n if (objectEmpty(exportedJWK)) {\n return undefined\n }\n\n return crypto.subtle.importKey(\n 'jwk',\n exportedJWK,\n getKeyAlgorythm(keyType),\n true,\n getKeyOperations(keyType)\n )\n}\n\nconst getStorableKeyPair = async (keyPair) => {\n const storableKeys = {}\n\n // eslint-disable-next-line no-restricted-syntax\n for (const [keyType, key] of Object.entries(keyPair)) {\n // eslint-disable-next-line no-await-in-loop\n storableKeys[keyType] = await getStorableKey(key)\n }\n\n return storableKeys\n}\n\nconst restoreStorableKeyPair = async (keyPair) => {\n const restoredKeys = {}\n\n // eslint-disable-next-line no-restricted-syntax\n for (const [keyType, key] of Object.entries(keyPair)) {\n // eslint-disable-next-line no-await-in-loop\n restoredKeys[keyType] = await restoreStorableKey(keyType, key)\n }\n\n return restoredKeys\n}\n\nconst deriveSharedKey = async ({ publicKey, privateKey }) => {\n if (!publicKey || !privateKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n const derivedKey = await crypto.subtle.deriveKey(\n {\n name: 'ECDH',\n public: publicKey,\n },\n privateKey,\n {\n name: 'AES-GCM',\n length: 256,\n },\n true,\n ['encrypt', 'decrypt']\n )\n return derivedKey\n}\n\nconst deriveHMACKey = async ({ publicKey, privateKey }) => {\n if (!publicKey || !privateKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n const derivedKey = await crypto.subtle.deriveKey(\n {\n name: 'ECDH',\n public: publicKey,\n },\n privateKey,\n {\n name: 'HMAC',\n hash: { name: 'SHA-256' },\n length: 256, // Adjusted key length, e.g., 128 bits\n },\n true,\n ['sign', 'verify']\n )\n return derivedKey\n}\n\nconst getVerificationKeys = async ({ publicKey, privateKey }) => {\n if (!publicKey || !privateKey) {\n return {}\n }\n\n const sharedKeyPair = await restoreStorableKeyPair({ publicKey, privateKey })\n const derivedHMACKey = await deriveHMACKey(sharedKeyPair)\n const derivedSecretKey = await deriveSharedKey(sharedKeyPair)\n\n return {\n derivedSecretKey,\n derivedHMACKey,\n }\n}\n\nconst encryptMessage = async (decryptedMessage, derivedKey) => {\n if (!decryptedMessage || !derivedKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n const iv = crypto.getRandomValues(new Uint8Array(12))\n const Encoder = await getTextEncoder()\n const encodedMessage = new Encoder().encode(decryptedMessage)\n const ciphertext = await crypto.subtle.encrypt(\n {\n name: 'AES-GCM',\n iv,\n },\n derivedKey,\n encodedMessage\n )\n\n const encryptedMessage = new Uint8Array([\n ...iv,\n ...new Uint8Array(ciphertext)\n ])\n return Array.from(encryptedMessage)\n}\n\nconst decryptMessage = async (encryptedMessage, derivedKey) => {\n if (!encryptedMessage || !derivedKey) {\n return undefined\n }\n\n const crypto = await getWebCrypto()\n // NOTE: this presumed an array or arrayBuffer coming in as encryptedMessage (will fail w/ IV error if its a string)\n const encryptedArrayBuffer = ensureArrayBuffer(encryptedMessage)\n const iv = encryptedArrayBuffer.slice(0, 12)\n const ciphertext = encryptedArrayBuffer.slice(12)\n\n const decryptedArrayBuffer = await crypto.subtle.decrypt(\n {\n name: 'AES-GCM',\n iv,\n },\n derivedKey,\n ciphertext\n )\n\n const Decoder = await getTextDecoder()\n const decryptedMessage = new Decoder().decode(decryptedArrayBuffer)\n return decryptedMessage\n}\n\nexport const subtle = {\n generateKeyPair,\n generateHMAC,\n verifyHMAC,\n getStorableKey,\n getStorableKeyPair,\n restoreStorableKeyPair,\n deriveSharedKey,\n deriveHMACKey,\n getVerificationKeys,\n encryptMessage,\n decryptMessage,\n}\n","import {\n ensureLeadingSlash,\n stringEmpty,\n uppercase,\n safeParse,\n} from './display'\n\n\nconst TEMP_HOSTNAME = 'xyz.com'\nconst REMOVABLE_KEYS = ['shop', 'host']\n\nexport const HEADER_CONTENT_TYPE = 'Content-Type'\nexport const CONTENT_TYPES = {\n APPLICATION_JSON: 'application/json',\n}\n\nexport const getRequestMethod = (body, _method) => {\n const method = _method ?? (body ? 'POST' : 'GET')\n\n return uppercase(method)\n}\n\nexport const prepareRequestOptions = ({ method: _method, body: _body, headers: _header, ...requestOptions } = {}) => {\n const method = getRequestMethod(_body, _method)\n\n const headers = {\n [HEADER_CONTENT_TYPE]: CONTENT_TYPES.APPLICATION_JSON,\n ..._header,\n }\n\n let body = _body\n if (body && headers[HEADER_CONTENT_TYPE].startsWith(CONTENT_TYPES.APPLICATION_JSON)) {\n body = JSON.stringify(safeParse(body))\n }\n\n return {\n method,\n headers,\n ...(body && (method !== 'GET')) && { body },\n ...requestOptions,\n }\n}\n\nconst convertToURL = (uri) => {\n if (stringEmpty(uri)) {\n return undefined\n }\n\n const protocolRegex = /^(https?:\\/\\/).+/i\n\n if (!protocolRegex.test(uri)) {\n return new URL(`https://${TEMP_HOSTNAME}${ensureLeadingSlash(uri)}`)\n }\n\n return new URL(uri)\n}\n\nexport const normalizeURIParts = (uri) => {\n const urlObject = convertToURL(uri)\n if (!urlObject) {\n return undefined\n }\n\n REMOVABLE_KEYS.forEach((key) => urlObject.searchParams.delete(key))\n\n return {\n ...(urlObject.hostname !== TEMP_HOSTNAME) && {\n origin: urlObject.origin,\n },\n pathname: urlObject.pathname,\n search: urlObject.search,\n }\n}\n","/*!\n * raw-body\n * Copyright(c) 2013-2014 Jonathan Ong\n * Copyright(c) 2014-2022 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict'\n\n/**\n * Module dependencies.\n * @private\n */\n\nvar asyncHooks = tryRequireAsyncHooks()\nvar bytes = require('bytes')\nvar createError = require('http-errors')\nvar iconv = require('iconv-lite')\nvar unpipe = require('unpipe')\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = getRawBody\n\n/**\n * Module variables.\n * @private\n */\n\nvar ICONV_ENCODING_MESSAGE_REGEXP = /^Encoding not recognized: /\n\n/**\n * Get the decoder for a given encoding.\n *\n * @param {string} encoding\n * @private\n */\n\nfunction getDecoder (encoding) {\n if (!encoding) return null\n\n try {\n return iconv.getDecoder(encoding)\n } catch (e) {\n // error getting decoder\n if (!ICONV_ENCODING_MESSAGE_REGEXP.test(e.message)) throw e\n\n // the encoding was not found\n throw createError(415, 'specified encoding unsupported', {\n encoding: encoding,\n type: 'encoding.unsupported'\n })\n }\n}\n\n/**\n * Get the raw body of a stream (typically HTTP).\n *\n * @param {object} stream\n * @param {object|string|function} [options]\n * @param {function} [callback]\n * @public\n */\n\nfunction getRawBody (stream, options, callback) {\n var done = callback\n var opts = options || {}\n\n // light validation\n if (stream === undefined) {\n throw new TypeError('argument stream is required')\n } else if (typeof stream !== 'object' || stream === null || typeof stream.on !== 'function') {\n throw new TypeError('argument stream must be a stream')\n }\n\n if (options === true || typeof options === 'string') {\n // short cut for encoding\n opts = {\n encoding: options\n }\n }\n\n if (typeof options === 'function') {\n done = options\n opts = {}\n }\n\n // validate callback is a function, if provided\n if (done !== undefined && typeof done !== 'function') {\n throw new TypeError('argument callback must be a function')\n }\n\n // require the callback without promises\n if (!done && !global.Promise) {\n throw new TypeError('argument callback is required')\n }\n\n // get encoding\n var encoding = opts.encoding !== true\n ? opts.encoding\n : 'utf-8'\n\n // convert the limit to an integer\n var limit = bytes.parse(opts.limit)\n\n // convert the expected length to an integer\n var length = opts.length != null && !isNaN(opts.length)\n ? parseInt(opts.length, 10)\n : null\n\n if (done) {\n // classic callback style\n return readStream(stream, encoding, length, limit, wrap(done))\n }\n\n return new Promise(function executor (resolve, reject) {\n readStream(stream, encoding, length, limit, function onRead (err, buf) {\n if (err) return reject(err)\n resolve(buf)\n })\n })\n}\n\n/**\n * Halt a stream.\n *\n * @param {Object} stream\n * @private\n */\n\nfunction halt (stream) {\n // unpipe everything from the stream\n unpipe(stream)\n\n // pause stream\n if (typeof stream.pause === 'function') {\n stream.pause()\n }\n}\n\n/**\n * Read the data from the stream.\n *\n * @param {object} stream\n * @param {string} encoding\n * @param {number} length\n * @param {number} limit\n * @param {function} callback\n * @public\n */\n\nfunction readStream (stream, encoding, length, limit, callback) {\n var complete = false\n var sync = true\n\n // check the length and limit options.\n // note: we intentionally leave the stream paused,\n // so users should handle the stream themselves.\n if (limit !== null && length !== null && length > limit) {\n return done(createError(413, 'request entity too large', {\n expected: length,\n length: length,\n limit: limit,\n type: 'entity.too.large'\n }))\n }\n\n // streams1: assert request encoding is buffer.\n // streams2+: assert the stream encoding is buffer.\n // stream._decoder: streams1\n // state.encoding: streams2\n // state.decoder: streams2, specifically < 0.10.6\n var state = stream._readableState\n if (stream._decoder || (state && (state.encoding || state.decoder))) {\n // developer error\n return done(createError(500, 'stream encoding should not be set', {\n type: 'stream.encoding.set'\n }))\n }\n\n if (typeof stream.readable !== 'undefined' && !stream.readable) {\n return done(createError(500, 'stream is not readable', {\n type: 'stream.not.readable'\n }))\n }\n\n var received = 0\n var decoder\n\n try {\n decoder = getDecoder(encoding)\n } catch (err) {\n return done(err)\n }\n\n var buffer = decoder\n ? ''\n : []\n\n // attach listeners\n stream.on('aborted', onAborted)\n stream.on('close', cleanup)\n stream.on('data', onData)\n stream.on('end', onEnd)\n stream.on('error', onEnd)\n\n // mark sync section complete\n sync = false\n\n function done () {\n var args = new Array(arguments.length)\n\n // copy arguments\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n\n // mark complete\n complete = true\n\n if (sync) {\n process.nextTick(invokeCallback)\n } else {\n invokeCallback()\n }\n\n function invokeCallback () {\n cleanup()\n\n if (args[0]) {\n // halt the stream on error\n halt(stream)\n }\n\n callback.apply(null, args)\n }\n }\n\n function onAborted () {\n if (complete) return\n\n done(createError(400, 'request aborted', {\n code: 'ECONNABORTED',\n expected: length,\n length: length,\n received: received,\n type: 'request.aborted'\n }))\n }\n\n function onData (chunk) {\n if (complete) return\n\n received += chunk.length\n\n if (limit !== null && received > limit) {\n done(createError(413, 'request entity too large', {\n limit: limit,\n received: received,\n type: 'entity.too.large'\n }))\n } else if (decoder) {\n buffer += decoder.write(chunk)\n } else {\n buffer.push(chunk)\n }\n }\n\n function onEnd (err) {\n if (complete) return\n if (err) return done(err)\n\n if (length !== null && received !== length) {\n done(createError(400, 'request size did not match content length', {\n expected: length,\n length: length,\n received: received,\n type: 'request.size.invalid'\n }))\n } else {\n var string = decoder\n ? buffer + (decoder.end() || '')\n : Buffer.concat(buffer)\n done(null, string)\n }\n }\n\n function cleanup () {\n buffer = null\n\n stream.removeListener('aborted', onAborted)\n stream.removeListener('data', onData)\n stream.removeListener('end', onEnd)\n stream.removeListener('error', onEnd)\n stream.removeListener('close', cleanup)\n }\n}\n\n/**\n * Try to require async_hooks\n * @private\n */\n\nfunction tryRequireAsyncHooks () {\n try {\n return require('async_hooks')\n } catch (e) {\n return {}\n }\n}\n\n/**\n * Wrap function with async resource, if possible.\n * AsyncResource.bind static method backported.\n * @private\n */\n\nfunction wrap (fn) {\n var res\n\n // create anonymous resource\n if (asyncHooks.AsyncResource) {\n res = new asyncHooks.AsyncResource(fn.name || 'bound-anonymous-fn')\n }\n\n // incompatible node.js\n if (!res || !res.runInAsyncScope) {\n return fn\n }\n\n // return bound function\n return res.runInAsyncScope.bind(res, fn, null)\n}\n","// import getRawBody from 'raw-body'\nimport * as getRawBody from 'raw-body'\n\n// TODO: explore returning mutated request object adding on req.rawBody??\n// TODO: move to req.text() after next 13.5\nexport const ensureRawBody = async (req) => (\n getRawBody(req)\n .then((_rawBody) => _rawBody.toString())\n .catch((error) => {\n // NOTE: this is intended to ensure if getRawBody is called 2x w/in a route that it returns the already streamed body\n if ((error?.type === 'stream.not.readable')) {\n if (!req?.rawBody) {\n // eslint-disable-next-line max-len\n console.info('Ignoring error reading raw requst body. This can occur if the body is attempted to be read twice in a single request. If intentional, please mutate the request to add the result of this call as req.rawBody (to prevent this warning).')\n return req?.body\n }\n\n return req?.rawBody\n }\n\n console.error(`Error getting raw body for '${req?.url}'`, error)\n throw error\n })\n)\n","export class VerificationError extends Error {\n constructor(message, _data) {\n super(message)\n const { code = 500, ...data } = _data ?? {}\n this.code = code\n this.data = data\n this.name = 'VerificationError'\n Object.setPrototypeOf(this, VerificationError.prototype)\n }\n}\n","import { subtle } from '../shared/subtlecrypto'\nimport { getRequestMethod, normalizeURIParts } from '../shared/request'\nimport {\n objectToSortedString,\n ensureString,\n safeParse,\n isTrue,\n} from '../shared/display'\nimport { ensureRawBody } from './rawbody'\nimport { VerificationError } from './errors'\n\nexport const getVerificationHelpers = ({ keyPairs }) => (\n async (req, params) => {\n const {\n 'x-public-key': apiKey,\n 'x-ephemeral-key': ephemeralPublicKey,\n 'x-authorization-timestamp': customAuthTimestamp,\n 'x-authorization': customAuth,\n } = req.headers ?? {}\n\n const { uri: _uri, disableRecryption: _disableRecryption } = params ?? {}\n const uri = _uri ?? req.url\n const disableRecryption = isTrue(_disableRecryption)\n\n let isVerifiable\n try {\n const [authProtocol, authSignature] = ensureString(customAuth).split(' ')\n isVerifiable = isTrue(\n apiKey &&\n ephemeralPublicKey &&\n keyPairs?.shared &&\n customAuthTimestamp &&\n authSignature &&\n (authProtocol === 'HMAC-SHA256')\n )\n\n let verificationKeys\n const rawBody = await ensureRawBody(req)\n\n // NOTE: requestBody should be wind up decrypted when isVerifiable (unless disableRecryption, then will pass through)\n let requestBody = safeParse(rawBody)\n\n // TEMP!!! remove isVerifiable check once webwidget moved to react\n if (isVerifiable) {\n if (\n !apiKey ||\n !ephemeralPublicKey ||\n !customAuthTimestamp ||\n !authSignature ||\n !keyPairs?.shared ||\n (apiKey !== keyPairs.shared.publicKey) ||\n (authProtocol !== 'HMAC-SHA256')\n ) {\n throw new VerificationError('Invalid or missing authorization', { code: 401 })\n }\n\n verificationKeys = await subtle.getVerificationKeys({\n publicKey: ephemeralPublicKey,\n privateKey: keyPairs.shared.privateKey,\n })\n\n if (!verificationKeys) {\n throw new VerificationError('Invalid or missing verification', { code: 412 })\n }\n\n const verificationPayload = objectToSortedString({\n method: getRequestMethod(rawBody, req.method),\n timestamp: customAuthTimestamp,\n body: requestBody, // NOTE: requestBody should be encrypted when isVerifiable\n ...normalizeURIParts(uri),\n })\n\n const isValid = await subtle.verifyHMAC(\n verificationPayload,\n verificationKeys.derivedHMACKey,\n authSignature\n )\n\n if (!isValid) {\n throw new VerificationError('Invalid or missing verification', { code: 412 })\n }\n\n if (!disableRecryption && requestBody) {\n const decryptedMessage = await subtle.decryptMessage(requestBody, verificationKeys.derivedSecretKey)\n requestBody = safeParse(decryptedMessage)\n }\n }\n\n const processResponse = async (response) => {\n if (!response || disableRecryption || !isVerifiable || !verificationKeys?.derivedSecretKey) {\n return response\n }\n\n return subtle.encryptMessage(JSON.stringify(response), verificationKeys.derivedSecretKey)\n }\n\n return { rawBody, requestBody, processResponse }\n } catch (error) {\n console.error(`Error handling request verification for '${uri}'`, { error, isVerifiable, disableRecryption })\n throw error\n }\n }\n)\n"],"names":["getRawBody"],"mappings":"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"}
|