@unchainedshop/utils 3.0.0-rc6 → 3.0.0-rc7
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/lib/ch/addressToString.d.ts +12 -0
- package/lib/ch/addressToString.d.ts.map +1 -0
- package/lib/ch/addressToString.js +14 -0
- package/lib/ch/addressToString.js.map +1 -0
- package/lib/ch/index.d.ts +3 -0
- package/lib/ch/index.d.ts.map +1 -0
- package/lib/ch/index.js +4 -0
- package/lib/ch/index.js.map +1 -0
- package/lib/ch/priceToString.d.ts +6 -0
- package/lib/ch/priceToString.d.ts.map +1 -0
- package/lib/ch/priceToString.js +6 -0
- package/lib/ch/priceToString.js.map +1 -0
- package/lib/director/BaseDirector.js +1 -1
- package/lib/director/BaseDirector.js.map +1 -1
- package/lib/utils-index.d.ts +1 -2
- package/lib/utils-index.d.ts.map +1 -1
- package/lib/utils-index.js +1 -2
- package/lib/utils-index.js.map +1 -1
- package/package.json +2 -2
- package/src/ch/addressToString.ts +23 -0
- package/src/ch/index.ts +3 -0
- package/src/ch/priceToString.ts +6 -0
- package/src/director/BaseDirector.ts +1 -1
- package/src/utils-index.ts +1 -2
- package/lib/intersect-set.d.ts +0 -3
- package/lib/intersect-set.d.ts.map +0 -1
- package/lib/intersect-set.js +0 -2
- package/lib/intersect-set.js.map +0 -1
- package/src/intersect-set.ts +0 -2
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const addressToString: (address: {
|
|
2
|
+
addressLine?: string;
|
|
3
|
+
addressLine2?: string;
|
|
4
|
+
city?: string;
|
|
5
|
+
company?: string;
|
|
6
|
+
countryCode?: string;
|
|
7
|
+
firstName?: string;
|
|
8
|
+
lastName?: string;
|
|
9
|
+
postalCode?: string;
|
|
10
|
+
regionCode?: string;
|
|
11
|
+
}) => string;
|
|
12
|
+
//# sourceMappingURL=addressToString.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addressToString.d.ts","sourceRoot":"","sources":["../../src/ch/addressToString.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,YAAa;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,WAYA,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const addressToString = (address) => {
|
|
2
|
+
return [
|
|
3
|
+
[address.firstName, address.lastName].filter(Boolean).join(' '),
|
|
4
|
+
address.company,
|
|
5
|
+
address.addressLine,
|
|
6
|
+
address.addressLine2,
|
|
7
|
+
[address.postalCode, address.city].filter(Boolean).join(' '),
|
|
8
|
+
address.regionCode,
|
|
9
|
+
[address.countryCode].filter(Boolean).join(''),
|
|
10
|
+
]
|
|
11
|
+
.filter(Boolean)
|
|
12
|
+
.join('\n');
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=addressToString.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addressToString.js","sourceRoot":"","sources":["../../src/ch/addressToString.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAU/B,EAAE,EAAE;IACH,OAAO;QACL,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/D,OAAO,CAAC,OAAO;QACf,OAAO,CAAC,WAAW;QACnB,OAAO,CAAC,YAAY;QACpB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC5D,OAAO,CAAC,UAAU;QAClB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;KAC/C;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ch/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
package/lib/ch/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ch/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"priceToString.d.ts","sourceRoot":"","sources":["../../src/ch/priceToString.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,yBAA0B;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,WAGvF,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"priceToString.js","sourceRoot":"","sources":["../../src/ch/priceToString.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAwC,EAAE,EAAE;IAC1F,MAAM,UAAU,GAAG,MAAM,GAAG,GAAG,CAAC;IAChC,OAAO,GAAG,QAAQ,IAAI,UAAU,EAAE,CAAC;AACrC,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -9,7 +9,7 @@ export const BaseDirector = (directorName, options) => {
|
|
|
9
9
|
getAdapters: ({ adapterFilter } = {}) => {
|
|
10
10
|
const sortKey = options?.adapterSortKey || keyField;
|
|
11
11
|
return Array.from(Adapters.values())
|
|
12
|
-
.
|
|
12
|
+
.toSorted((left, right) => left[sortKey] - right[sortKey])
|
|
13
13
|
.filter(adapterFilter || (() => true));
|
|
14
14
|
},
|
|
15
15
|
registerAdapter: (Adapter) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDirector.js","sourceRoot":"","sources":["../../src/director/BaseDirector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAU5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,YAAoB,EACpB,OAGC,EAC2B,EAAE;IAC9B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;IAChD,MAAM,QAAQ,GAAG,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC;IAEnD,OAAO;QACL,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;YAClB,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAED,WAAW,EAAE,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,OAAO,EAAE,cAAc,IAAI,QAAQ,CAAC;YACpD,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;iBACjC,
|
|
1
|
+
{"version":3,"file":"BaseDirector.js","sourceRoot":"","sources":["../../src/director/BaseDirector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAU5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,YAAoB,EACpB,OAGC,EAC2B,EAAE;IAC9B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;IAChD,MAAM,QAAQ,GAAG,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC;IAEnD,OAAO;QACL,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;YAClB,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAED,WAAW,EAAE,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,OAAO,EAAE,cAAc,IAAI,QAAQ,CAAC;YACpD,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;iBACjC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;iBACzD,MAAM,CAAC,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3C,CAAC;QAED,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE;YAC3B,GAAG,CACD,GAAG,YAAY,kBAAkB,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAC/E,OAAO,CAAC,GACV,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,GAAG,CACzC,CAAC;YACF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3C,CAAC;QAED,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE;YACzB,GAAG,CAAC,GAAG,YAAY,oBAAoB,GAAG,EAAE,CAAC,CAAC;YAC9C,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
|
package/lib/utils-index.d.ts
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
export * as calculation from './calculation.js';
|
|
2
|
+
export * as ch from './ch/index.js';
|
|
2
3
|
export * from './locale-helpers.js';
|
|
3
4
|
export { default as objectInvert } from './object-invert.js';
|
|
4
5
|
export { default as findUnusedSlug } from './find-unused-slug.js';
|
|
5
6
|
export { default as slugify } from './slugify.js';
|
|
6
|
-
export { default as pipePromises } from './pipe-promises.js';
|
|
7
7
|
export { default as generateRandomHash } from './generate-random-hash.js';
|
|
8
8
|
export { default as buildObfuscatedFieldsFilter } from './build-obfuscated-fields-filter.js';
|
|
9
9
|
export { default as sha256 } from './sha256.js';
|
|
10
10
|
export { default as sha1 } from './sha1.js';
|
|
11
|
-
export { default as intersectSet } from './intersect-set.js';
|
|
12
11
|
export declare enum SortDirection {
|
|
13
12
|
ASC = "ASC",
|
|
14
13
|
DESC = "DESC"
|
package/lib/utils-index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils-index.d.ts","sourceRoot":"","sources":["../src/utils-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils-index.d.ts","sourceRoot":"","sources":["../src/utils-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AAEpC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAE5C,oBAAY,aAAa;IACvB,GAAG,QAAQ;IACX,IAAI,SAAS;CACd;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAE7C,MAAM,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC"}
|
package/lib/utils-index.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
export * as calculation from './calculation.js';
|
|
2
|
+
export * as ch from './ch/index.js';
|
|
2
3
|
export * from './locale-helpers.js';
|
|
3
4
|
export { default as objectInvert } from './object-invert.js';
|
|
4
5
|
export { default as findUnusedSlug } from './find-unused-slug.js';
|
|
5
6
|
export { default as slugify } from './slugify.js';
|
|
6
|
-
export { default as pipePromises } from './pipe-promises.js';
|
|
7
7
|
export { default as generateRandomHash } from './generate-random-hash.js';
|
|
8
8
|
export { default as buildObfuscatedFieldsFilter } from './build-obfuscated-fields-filter.js';
|
|
9
9
|
export { default as sha256 } from './sha256.js';
|
|
10
10
|
export { default as sha1 } from './sha1.js';
|
|
11
|
-
export { default as intersectSet } from './intersect-set.js';
|
|
12
11
|
export var SortDirection;
|
|
13
12
|
(function (SortDirection) {
|
|
14
13
|
SortDirection["ASC"] = "ASC";
|
package/lib/utils-index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils-index.js","sourceRoot":"","sources":["../src/utils-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils-index.js","sourceRoot":"","sources":["../src/utils-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AAEpC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,8BAAa,CAAA;AACf,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAyBD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@unchainedshop/utils",
|
|
3
|
-
"version": "3.0.0-
|
|
3
|
+
"version": "3.0.0-rc7",
|
|
4
4
|
"main": "lib/utils-index.js",
|
|
5
5
|
"types": "lib/utils-index.d.ts",
|
|
6
6
|
"type": "module",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
},
|
|
28
28
|
"homepage": "https://github.com/unchainedshop/unchained#readme",
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@unchainedshop/logger": "^3.0.0-
|
|
30
|
+
"@unchainedshop/logger": "^3.0.0-rc7",
|
|
31
31
|
"hashids": "^2.3.0",
|
|
32
32
|
"resolve-accept-language": "^3.1.10"
|
|
33
33
|
},
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export const addressToString = (address: {
|
|
2
|
+
addressLine?: string;
|
|
3
|
+
addressLine2?: string;
|
|
4
|
+
city?: string;
|
|
5
|
+
company?: string;
|
|
6
|
+
countryCode?: string;
|
|
7
|
+
firstName?: string;
|
|
8
|
+
lastName?: string;
|
|
9
|
+
postalCode?: string;
|
|
10
|
+
regionCode?: string;
|
|
11
|
+
}) => {
|
|
12
|
+
return [
|
|
13
|
+
[address.firstName, address.lastName].filter(Boolean).join(' '),
|
|
14
|
+
address.company,
|
|
15
|
+
address.addressLine,
|
|
16
|
+
address.addressLine2,
|
|
17
|
+
[address.postalCode, address.city].filter(Boolean).join(' '),
|
|
18
|
+
address.regionCode,
|
|
19
|
+
[address.countryCode].filter(Boolean).join(''),
|
|
20
|
+
]
|
|
21
|
+
.filter(Boolean)
|
|
22
|
+
.join('\n');
|
|
23
|
+
};
|
package/src/ch/index.ts
ADDED
|
@@ -26,7 +26,7 @@ export const BaseDirector = <AdapterType extends IBaseAdapter>(
|
|
|
26
26
|
getAdapters: ({ adapterFilter } = {}) => {
|
|
27
27
|
const sortKey = options?.adapterSortKey || keyField;
|
|
28
28
|
return Array.from(Adapters.values())
|
|
29
|
-
.
|
|
29
|
+
.toSorted((left, right) => left[sortKey] - right[sortKey])
|
|
30
30
|
.filter(adapterFilter || (() => true));
|
|
31
31
|
},
|
|
32
32
|
|
package/src/utils-index.ts
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
export * as calculation from './calculation.js';
|
|
2
|
+
export * as ch from './ch/index.js';
|
|
2
3
|
|
|
3
4
|
export * from './locale-helpers.js';
|
|
4
5
|
export { default as objectInvert } from './object-invert.js';
|
|
5
6
|
export { default as findUnusedSlug } from './find-unused-slug.js';
|
|
6
7
|
export { default as slugify } from './slugify.js';
|
|
7
|
-
export { default as pipePromises } from './pipe-promises.js';
|
|
8
8
|
export { default as generateRandomHash } from './generate-random-hash.js';
|
|
9
9
|
export { default as buildObfuscatedFieldsFilter } from './build-obfuscated-fields-filter.js';
|
|
10
10
|
export { default as sha256 } from './sha256.js';
|
|
11
11
|
export { default as sha1 } from './sha1.js';
|
|
12
|
-
export { default as intersectSet } from './intersect-set.js';
|
|
13
12
|
|
|
14
13
|
export enum SortDirection {
|
|
15
14
|
ASC = 'ASC',
|
package/lib/intersect-set.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"intersect-set.d.ts","sourceRoot":"","sources":["../src/intersect-set.ts"],"names":[],"mappings":"uCAA8B,GAAG,CAAC,MAAM,CAAC,sBAAsB,GAAG,CAAC,MAAM,CAAC;AAA1E,wBACoG"}
|
package/lib/intersect-set.js
DELETED
package/lib/intersect-set.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"intersect-set.js","sourceRoot":"","sources":["../src/intersect-set.ts"],"names":[],"mappings":"AAAA,eAAe,CAAC,YAAyB,EAAE,kBAA+B,EAAE,EAAE,CAC5E,IAAI,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC"}
|
package/src/intersect-set.ts
DELETED