@nestm/storage 0.1.0-alpha.7 → 0.1.0-alpha.8

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.
Files changed (74) hide show
  1. package/CHANGELOG.md +110 -0
  2. package/README.md +217 -18
  3. package/SECURITY.md +34 -5
  4. package/dist/ai-sdk/ai-sdk-workspace-tools.d.ts +14 -3
  5. package/dist/ai-sdk/ai-sdk-workspace-tools.d.ts.map +1 -1
  6. package/dist/ai-sdk/ai-sdk-workspace-tools.js +54 -23
  7. package/dist/ai-sdk/ai-sdk-workspace-tools.js.map +1 -1
  8. package/dist/ai-sdk/index.d.ts +1 -1
  9. package/dist/ai-sdk/index.d.ts.map +1 -1
  10. package/dist/ai-sdk/index.js.map +1 -1
  11. package/dist/files-sdk/files-sdk.driver.d.ts +54 -10
  12. package/dist/files-sdk/files-sdk.driver.d.ts.map +1 -1
  13. package/dist/files-sdk/files-sdk.driver.js +784 -63
  14. package/dist/files-sdk/files-sdk.driver.js.map +1 -1
  15. package/dist/files-sdk/fs/index.d.ts +4 -4
  16. package/dist/files-sdk/fs/index.d.ts.map +1 -1
  17. package/dist/files-sdk/fs/index.js +242 -9
  18. package/dist/files-sdk/fs/index.js.map +1 -1
  19. package/dist/files-sdk/index.d.ts +1 -1
  20. package/dist/files-sdk/index.d.ts.map +1 -1
  21. package/dist/files-sdk/index.js.map +1 -1
  22. package/dist/files-sdk/provider/index.d.ts +9 -5
  23. package/dist/files-sdk/provider/index.d.ts.map +1 -1
  24. package/dist/files-sdk/provider/index.js +53 -15
  25. package/dist/files-sdk/provider/index.js.map +1 -1
  26. package/dist/files-sdk/s3/construction-metadata.d.ts +7 -0
  27. package/dist/files-sdk/s3/construction-metadata.d.ts.map +1 -0
  28. package/dist/files-sdk/s3/construction-metadata.js +13 -0
  29. package/dist/files-sdk/s3/construction-metadata.js.map +1 -0
  30. package/dist/files-sdk/s3/index.d.ts +39 -19
  31. package/dist/files-sdk/s3/index.d.ts.map +1 -1
  32. package/dist/files-sdk/s3/index.js +936 -113
  33. package/dist/files-sdk/s3/index.js.map +1 -1
  34. package/dist/gateway/storage-gateway.controller.d.ts.map +1 -1
  35. package/dist/gateway/storage-gateway.controller.js +25 -5
  36. package/dist/gateway/storage-gateway.controller.js.map +1 -1
  37. package/dist/storage-etag.d.ts +13 -0
  38. package/dist/storage-etag.d.ts.map +1 -0
  39. package/dist/storage-etag.js +31 -0
  40. package/dist/storage-etag.js.map +1 -0
  41. package/dist/storage.client.d.ts +3 -1
  42. package/dist/storage.client.d.ts.map +1 -1
  43. package/dist/storage.client.js +87 -22
  44. package/dist/storage.client.js.map +1 -1
  45. package/dist/storage.driver.d.ts +21 -1
  46. package/dist/storage.driver.d.ts.map +1 -1
  47. package/dist/storage.driver.js.map +1 -1
  48. package/dist/storage.types.d.ts +90 -19
  49. package/dist/storage.types.d.ts.map +1 -1
  50. package/dist/storage.types.js.map +1 -1
  51. package/dist/testing/index.d.ts +1 -0
  52. package/dist/testing/index.d.ts.map +1 -1
  53. package/dist/testing/index.js +1 -0
  54. package/dist/testing/index.js.map +1 -1
  55. package/dist/testing/provider-conformance.d.ts +65 -0
  56. package/dist/testing/provider-conformance.d.ts.map +1 -0
  57. package/dist/testing/provider-conformance.js +853 -0
  58. package/dist/testing/provider-conformance.js.map +1 -0
  59. package/dist/workspace/index.d.ts +1 -0
  60. package/dist/workspace/index.d.ts.map +1 -1
  61. package/dist/workspace/index.js +1 -0
  62. package/dist/workspace/index.js.map +1 -1
  63. package/dist/workspace/storage-workspace.cursor.d.ts +68 -3
  64. package/dist/workspace/storage-workspace.cursor.d.ts.map +1 -1
  65. package/dist/workspace/storage-workspace.cursor.js +402 -39
  66. package/dist/workspace/storage-workspace.cursor.js.map +1 -1
  67. package/dist/workspace/storage-workspace.d.ts.map +1 -1
  68. package/dist/workspace/storage-workspace.js +54 -46
  69. package/dist/workspace/storage-workspace.js.map +1 -1
  70. package/dist/workspace/storage-workspace.types.d.ts +10 -2
  71. package/dist/workspace/storage-workspace.types.d.ts.map +1 -1
  72. package/dist/workspace/storage-workspace.types.js +1 -0
  73. package/dist/workspace/storage-workspace.types.js.map +1 -1
  74. package/package.json +3 -3
@@ -0,0 +1,65 @@
1
+ import type { StorageClient } from '../storage.client.js';
2
+ import type { StorageConditionalCopyDestinationCapability, StorageConditionalCopySourceCapability, StorageConditionalDeleteCapability, StorageConditionalMultipartCompletionCapability, StorageConditionalReadCapability, StorageConditionalWriteCapability, StoragePhysicalKeyCapability, StorageSignedUploadPolicyCapability } from '../storage.types.js';
3
+ declare const PASSED: Readonly<{
4
+ status: 'passed';
5
+ }>;
6
+ export interface StorageProviderConformanceCapabilities {
7
+ readonly conditionalCreate?: StorageConditionalWriteCapability;
8
+ readonly conditionalReplace?: StorageConditionalWriteCapability;
9
+ readonly conditionalDelete?: StorageConditionalDeleteCapability;
10
+ readonly conditionalRead?: StorageConditionalReadCapability;
11
+ readonly conditionalCopySource?: StorageConditionalCopySourceCapability;
12
+ readonly conditionalCopyDestination?: StorageConditionalCopyDestinationCapability;
13
+ readonly conditionalMultipartCompletion?: StorageConditionalMultipartCompletionCapability;
14
+ readonly physicalKey: StoragePhysicalKeyCapability;
15
+ readonly signedUploadPolicy?: StorageSignedUploadPolicyCapability;
16
+ }
17
+ export interface StorageProviderConformanceFixture {
18
+ readonly client: StorageClient;
19
+ /**
20
+ * Builds a new client and driver for the same logical store and backend
21
+ * configuration. The harness owns the returned client and shuts it down.
22
+ */
23
+ readonly createReplica: () => StorageClient | Promise<StorageClient>;
24
+ /**
25
+ * Returns the number of operations dispatched to the provider driver. When
26
+ * supplied, the contract proves invalid inputs fail before provider I/O.
27
+ */
28
+ readonly dispatchCount?: () => number;
29
+ /**
30
+ * Resolves the current immutable version for a logical key. Providers that
31
+ * advertise version predicates should supply this for a version-enabled
32
+ * test bucket. Returning undefined visibly skips only the version subcases.
33
+ */
34
+ readonly resolveVersion?: (key: string) => Promise<string | undefined>;
35
+ /**
36
+ * Optional provider-aware cleanup. This is useful for versioned buckets,
37
+ * where a plain delete would leave historical object versions behind.
38
+ */
39
+ readonly cleanup?: (keys: readonly string[]) => void | Promise<void>;
40
+ readonly close?: () => void | Promise<void>;
41
+ }
42
+ export interface StorageProviderConformanceOptions {
43
+ readonly createFixture: (() => StorageProviderConformanceFixture) | (() => Promise<StorageProviderConformanceFixture>);
44
+ readonly expected: StorageProviderConformanceCapabilities;
45
+ /** Values such as test credentials that must never occur in public errors. */
46
+ readonly forbiddenErrorValues?: readonly string[];
47
+ readonly multipartBytes?: number;
48
+ readonly provider: string;
49
+ }
50
+ export type StorageProviderConformanceCaseResult = typeof PASSED | {
51
+ readonly reason: string;
52
+ readonly status: 'skipped';
53
+ };
54
+ export interface StorageProviderConformanceCase {
55
+ readonly name: string;
56
+ run(): Promise<StorageProviderConformanceCaseResult>;
57
+ }
58
+ /**
59
+ * Builds runner-agnostic provider contract cases. A test runner can register
60
+ * each returned case independently and translate a `skipped` result into its
61
+ * native skip primitive. Every case receives a fresh client and namespace.
62
+ */
63
+ export declare function createStorageProviderConformanceCases(options: StorageProviderConformanceOptions): readonly StorageProviderConformanceCase[];
64
+ export {};
65
+ //# sourceMappingURL=provider-conformance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-conformance.d.ts","sourceRoot":"","sources":["../../src/testing/provider-conformance.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAO1D,OAAO,KAAK,EAEV,2CAA2C,EAC3C,sCAAsC,EACtC,kCAAkC,EAClC,+CAA+C,EAC/C,gCAAgC,EAChC,iCAAiC,EAGjC,4BAA4B,EAC5B,mCAAmC,EAEpC,MAAM,qBAAqB,CAAC;AAY7B,QAAA,MAAM,MAAM;YAA2B,QAAQ;EAAY,CAAC;AAE5D,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iCAAiC,CAAC;IAC/D,QAAQ,CAAC,kBAAkB,CAAC,EAAE,iCAAiC,CAAC;IAChE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,kCAAkC,CAAC;IAChE,QAAQ,CAAC,eAAe,CAAC,EAAE,gCAAgC,CAAC;IAC5D,QAAQ,CAAC,qBAAqB,CAAC,EAAE,sCAAsC,CAAC;IACxE,QAAQ,CAAC,0BAA0B,CAAC,EAAE,2CAA2C,CAAC;IAClF,QAAQ,CAAC,8BAA8B,CAAC,EAAE,+CAA+C,CAAC;IAC1F,QAAQ,CAAC,WAAW,EAAE,4BAA4B,CAAC;IACnD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,mCAAmC,CAAC;CACnE;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,aAAa,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACrE;;;OAGG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvE;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,aAAa,EAClB,CAAC,MAAM,iCAAiC,CAAC,GACzC,CAAC,MAAM,OAAO,CAAC,iCAAiC,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,QAAQ,EAAE,sCAAsC,CAAC;IAC1D,8EAA8E;IAC9E,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,oCAAoC,GAC9C,OAAO,MAAM,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC;AAE1E,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,GAAG,IAAI,OAAO,CAAC,oCAAoC,CAAC,CAAC;CACtD;AAkBD;;;;GAIG;AACH,wBAAgB,qCAAqC,CACnD,OAAO,EAAE,iCAAiC,GACzC,SAAS,8BAA8B,EAAE,CA8E3C"}