Skip to content

Commit b0dd9ce

Browse files
committed
Support interface for swift, update package and lint code
1 parent c36455c commit b0dd9ce

12 files changed

+1894
-2761
lines changed

.eslintrc.json

Lines changed: 0 additions & 14 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
### v3.3.0
2+
- Added for SWIFT storage only: When calling the 'connection' function, you can now specify the interface (admin/public/internal) in the Swift configuration. This ensures that the SDK picks the correct endpoints from the Swift server, preventing inconsistencies. Example of auth configuration for Swift with interface:
3+
```js
4+
const swift = storageSDK([{
5+
username : 'user',
6+
password : 'password',
7+
authUrl : 'url',
8+
region : 'region',
9+
interface : 'admin' // or public, or internal
10+
}]);
11+
```
12+
- Updated dependency "aws4" version from "1.12.0" to "1.13.2"
13+
- Updated dev dependency "mocha/eslint/nock"
14+
- Lint code with new eslint configuration
15+
116
### v3.2.0
217
- S3 and Swift `deleteFiles` improved: For the second argument, you must provide a list of files, it can be:
318
- A list of String, each string is the filename: ["file1.png", "file2.docx"]

eslint.config.js

Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
module.exports = [
2+
{
3+
files: ["**/*.js"],
4+
languageOptions: {
5+
globals: {
6+
/** NODE: https://github.com/sindresorhus/globals/blob/HEAD/globals.json */
7+
__dirname: false,
8+
__filename: false,
9+
AbortController: false,
10+
AbortSignal: false,
11+
atob: false,
12+
Blob: false,
13+
BroadcastChannel: false,
14+
btoa: false,
15+
Buffer: false,
16+
ByteLengthQueuingStrategy: false,
17+
clearImmediate: false,
18+
clearInterval: false,
19+
clearTimeout: false,
20+
CloseEvent: false,
21+
CompressionStream: false,
22+
console: false,
23+
CountQueuingStrategy: false,
24+
crypto: false,
25+
Crypto: false,
26+
CryptoKey: false,
27+
CustomEvent: false,
28+
DecompressionStream: false,
29+
DOMException: false,
30+
Event: false,
31+
EventTarget: false,
32+
exports: true,
33+
fetch: false,
34+
File: false,
35+
FormData: false,
36+
global: false,
37+
Headers: false,
38+
MessageChannel: false,
39+
MessageEvent: false,
40+
MessagePort: false,
41+
module: false,
42+
navigator: false,
43+
Navigator: false,
44+
performance: false,
45+
Performance: false,
46+
PerformanceEntry: false,
47+
PerformanceMark: false,
48+
PerformanceMeasure: false,
49+
PerformanceObserver: false,
50+
PerformanceObserverEntryList: false,
51+
PerformanceResourceTiming: false,
52+
process: false,
53+
queueMicrotask: false,
54+
ReadableByteStreamController: false,
55+
ReadableStream: false,
56+
ReadableStreamBYOBReader: false,
57+
ReadableStreamBYOBRequest: false,
58+
ReadableStreamDefaultController: false,
59+
ReadableStreamDefaultReader: false,
60+
Request: false,
61+
require: false,
62+
Response: false,
63+
setImmediate: false,
64+
setInterval: false,
65+
setTimeout: false,
66+
structuredClone: false,
67+
SubtleCrypto: false,
68+
TextDecoder: false,
69+
TextDecoderStream: false,
70+
TextEncoder: false,
71+
TextEncoderStream: false,
72+
TransformStream: false,
73+
TransformStreamDefaultController: false,
74+
URL: false,
75+
URLSearchParams: false,
76+
WebAssembly: false,
77+
WebSocket: false,
78+
WritableStream: false,
79+
WritableStreamDefaultController: false,
80+
WritableStreamDefaultWriter: false,
81+
/** MOCHA */
82+
after: false,
83+
afterEach: false,
84+
before: false,
85+
beforeEach: false,
86+
context: false,
87+
describe: false,
88+
it: false,
89+
mocha: false,
90+
run: false,
91+
setup: false,
92+
specify: false,
93+
suite: false,
94+
suiteSetup: false,
95+
suiteTeardown: false,
96+
teardown: false,
97+
test: false,
98+
xcontext: false,
99+
xdescribe: false,
100+
xit: false,
101+
xspecify: false,
102+
},
103+
},
104+
rules: {
105+
/** RECOMMENDED: https://github.com/eslint/eslint/blob/main/packages/js/src/configs/eslint-recommended.js */
106+
semi: "error",
107+
"prefer-const": "error",
108+
"constructor-super": "error",
109+
"for-direction": "error",
110+
"getter-return": "error",
111+
"no-async-promise-executor": "error",
112+
"no-case-declarations": "error",
113+
"no-class-assign": "error",
114+
"no-compare-neg-zero": "error",
115+
"no-cond-assign": "error",
116+
"no-const-assign": "error",
117+
"no-constant-binary-expression": "error",
118+
"no-constant-condition": "error",
119+
"no-control-regex": "error",
120+
"no-debugger": "error",
121+
"no-delete-var": "error",
122+
"no-dupe-args": "error",
123+
"no-dupe-class-members": "error",
124+
"no-dupe-else-if": "error",
125+
"no-dupe-keys": "error",
126+
"no-duplicate-case": "error",
127+
"no-empty": "error",
128+
"no-empty-character-class": "error",
129+
"no-empty-pattern": "error",
130+
"no-empty-static-block": "error",
131+
"no-ex-assign": "error",
132+
"no-extra-boolean-cast": "error",
133+
"no-fallthrough": "error",
134+
"no-func-assign": "error",
135+
"no-global-assign": "error",
136+
"no-import-assign": "error",
137+
"no-invalid-regexp": "error",
138+
"no-irregular-whitespace": "error",
139+
"no-loss-of-precision": "error",
140+
"no-misleading-character-class": "error",
141+
"no-new-native-nonconstructor": "error",
142+
"no-nonoctal-decimal-escape": "error",
143+
"no-obj-calls": "error",
144+
"no-octal": "error",
145+
"no-prototype-builtins": "error",
146+
"no-redeclare": "error",
147+
"no-regex-spaces": "error",
148+
"no-self-assign": "error",
149+
"no-setter-return": "error",
150+
"no-shadow-restricted-names": "error",
151+
"no-sparse-arrays": "error",
152+
"no-this-before-super": "error",
153+
"no-undef": "error",
154+
"no-unexpected-multiline": "error",
155+
"no-unreachable": "error",
156+
"no-unsafe-finally": "error",
157+
"no-unsafe-negation": "error",
158+
"no-unsafe-optional-chaining": "error",
159+
"no-unused-labels": "error",
160+
"no-unused-private-class-members": "error",
161+
"no-unused-vars": [
162+
"error",
163+
{
164+
argsIgnorePattern: "^_",
165+
varsIgnorePattern: "^_",
166+
caughtErrorsIgnorePattern: "^_",
167+
},
168+
],
169+
"no-useless-backreference": "error",
170+
"no-useless-catch": "error",
171+
"no-useless-escape": "error",
172+
"no-with": "error",
173+
"require-yield": "error",
174+
"use-isnan": "error",
175+
"valid-typeof": "error",
176+
},
177+
},
178+
];

index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@ module.exports = (config) => {
1414
} else if (_auth?.username && _auth?.password && _auth?.authUrl && _auth?.region) {
1515
return swift(config);
1616
} else {
17-
throw new Error("Storage connexion not recognised - did you provide correct credentials for a S3 or Swift storage?")
17+
throw new Error("Storage connexion not recognised - did you provide correct credentials for a S3 or Swift storage?");
1818
}
19-
}
19+
};

0 commit comments

Comments
 (0)