@sfxcode/nuxt-mongocamp-server 1.7.0 → 1.9.0

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 (133) hide show
  1. package/README.md +8 -0
  2. package/dist/module.json +2 -2
  3. package/dist/module.mjs +1 -1
  4. package/dist/runtime/api/.openapi-generator/FILES +18 -0
  5. package/dist/runtime/api/.openapi-generator/VERSION +1 -1
  6. package/dist/runtime/api/apis/AdminApi.d.ts +65 -2
  7. package/dist/runtime/api/apis/AdminApi.js +39 -27
  8. package/dist/runtime/api/apis/ApplicationApi.d.ts +17 -2
  9. package/dist/runtime/api/apis/ApplicationApi.js +17 -11
  10. package/dist/runtime/api/apis/AuthApi.d.ts +17 -2
  11. package/dist/runtime/api/apis/AuthApi.js +27 -15
  12. package/dist/runtime/api/apis/BucketApi.d.ts +12 -2
  13. package/dist/runtime/api/apis/BucketApi.js +11 -9
  14. package/dist/runtime/api/apis/CollectionApi.d.ts +163 -4
  15. package/dist/runtime/api/apis/CollectionApi.js +230 -27
  16. package/dist/runtime/api/apis/DatabaseApi.d.ts +12 -2
  17. package/dist/runtime/api/apis/DatabaseApi.js +12 -10
  18. package/dist/runtime/api/apis/DocumentApi.d.ts +223 -15
  19. package/dist/runtime/api/apis/DocumentApi.js +194 -35
  20. package/dist/runtime/api/apis/FileApi.d.ts +78 -4
  21. package/dist/runtime/api/apis/FileApi.js +34 -24
  22. package/dist/runtime/api/apis/IndexApi.d.ts +100 -2
  23. package/dist/runtime/api/apis/IndexApi.js +95 -31
  24. package/dist/runtime/api/apis/JobsApi.d.ts +28 -2
  25. package/dist/runtime/api/apis/JobsApi.js +19 -15
  26. package/dist/runtime/api/apis/SystemApi.d.ts +3 -2
  27. package/dist/runtime/api/apis/SystemApi.js +5 -3
  28. package/dist/runtime/api/docs/CollectionApi.md +254 -2
  29. package/dist/runtime/api/docs/CollectionStatus.md +1 -1
  30. package/dist/runtime/api/docs/CopyRequest.md +40 -0
  31. package/dist/runtime/api/docs/CopyResponse.md +38 -0
  32. package/dist/runtime/api/docs/DatabaseInfo.md +1 -1
  33. package/dist/runtime/api/docs/DocumentApi.md +210 -19
  34. package/dist/runtime/api/docs/FieldInfo.md +36 -0
  35. package/dist/runtime/api/docs/FieldTypeCount.md +36 -0
  36. package/dist/runtime/api/docs/FileInformation.md +1 -1
  37. package/dist/runtime/api/docs/ImportResponse.md +42 -0
  38. package/dist/runtime/api/docs/IndexApi.md +78 -0
  39. package/dist/runtime/api/docs/IndexCreateRequest.md +2 -0
  40. package/dist/runtime/api/docs/IndexInfo.md +54 -0
  41. package/dist/runtime/api/docs/IndexKey.md +36 -0
  42. package/dist/runtime/api/docs/IndexOptionsRequest.md +10 -0
  43. package/dist/runtime/api/docs/IndexUsage.md +1 -1
  44. package/dist/runtime/api/docs/JsonSchemaDefinition.md +1 -1
  45. package/dist/runtime/api/docs/MongoFindRequest.md +3 -3
  46. package/dist/runtime/api/docs/MongoIndex.md +3 -3
  47. package/dist/runtime/api/docs/RenameRequest.md +36 -0
  48. package/dist/runtime/api/docs/RenameResponse.md +34 -0
  49. package/dist/runtime/api/docs/SettingsResponse.md +1 -1
  50. package/dist/runtime/api/docs/UpdateFileInformationRequest.md +1 -1
  51. package/dist/runtime/api/docs/UpdateRequest.md +2 -2
  52. package/dist/runtime/api/models/BucketInformation.d.ts +1 -9
  53. package/dist/runtime/api/models/ClusterInformation.d.ts +1 -5
  54. package/dist/runtime/api/models/ClusterMemberInformation.d.ts +1 -11
  55. package/dist/runtime/api/models/CollectionPermission.d.ts +1 -9
  56. package/dist/runtime/api/models/CollectionStatus.d.ts +2 -28
  57. package/dist/runtime/api/models/CollectionStatus.js +3 -2
  58. package/dist/runtime/api/models/CollectionSummary.d.ts +1 -19
  59. package/dist/runtime/api/models/CopyRequest.d.ts +42 -0
  60. package/dist/runtime/api/models/CopyRequest.js +32 -0
  61. package/dist/runtime/api/models/CopyResponse.d.ts +38 -0
  62. package/dist/runtime/api/models/CopyResponse.js +32 -0
  63. package/dist/runtime/api/models/CountResponse.d.ts +1 -3
  64. package/dist/runtime/api/models/DatabaseInfo.d.ts +2 -12
  65. package/dist/runtime/api/models/DatabaseInfo.js +3 -2
  66. package/dist/runtime/api/models/DeleteResponse.d.ts +1 -5
  67. package/dist/runtime/api/models/ErrorDescription.d.ts +1 -7
  68. package/dist/runtime/api/models/FieldInfo.d.ts +35 -0
  69. package/dist/runtime/api/models/FieldInfo.js +32 -0
  70. package/dist/runtime/api/models/FieldTypeCount.d.ts +34 -0
  71. package/dist/runtime/api/models/FieldTypeCount.js +29 -0
  72. package/dist/runtime/api/models/FileInformation.d.ts +2 -14
  73. package/dist/runtime/api/models/FileInformation.js +4 -3
  74. package/dist/runtime/api/models/Grant.d.ts +1 -11
  75. package/dist/runtime/api/models/ImportResponse.d.ts +47 -0
  76. package/dist/runtime/api/models/ImportResponse.js +41 -0
  77. package/dist/runtime/api/models/IndexCreateRequest.d.ts +7 -6
  78. package/dist/runtime/api/models/IndexCreateRequest.js +9 -4
  79. package/dist/runtime/api/models/IndexCreateResponse.d.ts +1 -3
  80. package/dist/runtime/api/models/IndexDropResponse.d.ts +1 -3
  81. package/dist/runtime/api/models/IndexInfo.d.ts +77 -0
  82. package/dist/runtime/api/models/IndexInfo.js +54 -0
  83. package/dist/runtime/api/models/IndexKey.d.ts +34 -0
  84. package/dist/runtime/api/models/IndexKey.js +29 -0
  85. package/dist/runtime/api/models/IndexOptionsRequest.d.ts +27 -17
  86. package/dist/runtime/api/models/IndexOptionsRequest.js +12 -2
  87. package/dist/runtime/api/models/IndexUsage.d.ts +2 -10
  88. package/dist/runtime/api/models/IndexUsage.js +3 -2
  89. package/dist/runtime/api/models/InsertError.d.ts +1 -7
  90. package/dist/runtime/api/models/InsertResponse.d.ts +1 -9
  91. package/dist/runtime/api/models/JobConfig.d.ts +1 -13
  92. package/dist/runtime/api/models/JobInformation.d.ts +1 -19
  93. package/dist/runtime/api/models/JobInformation.js +5 -4
  94. package/dist/runtime/api/models/JsonSchema.d.ts +1 -7
  95. package/dist/runtime/api/models/JsonSchemaDefinition.d.ts +2 -12
  96. package/dist/runtime/api/models/JsonValueAny.d.ts +1 -3
  97. package/dist/runtime/api/models/JsonValueBoolean.d.ts +1 -3
  98. package/dist/runtime/api/models/JsonValueString.d.ts +1 -3
  99. package/dist/runtime/api/models/Login.d.ts +1 -5
  100. package/dist/runtime/api/models/LoginResult.d.ts +1 -7
  101. package/dist/runtime/api/models/LoginResult.js +3 -2
  102. package/dist/runtime/api/models/MongoAggregateRequest.d.ts +1 -5
  103. package/dist/runtime/api/models/MongoCampConfiguration.d.ts +1 -11
  104. package/dist/runtime/api/models/MongoFindRequest.d.ts +4 -10
  105. package/dist/runtime/api/models/MongoIndex.d.ts +4 -28
  106. package/dist/runtime/api/models/MongoIndex.js +3 -2
  107. package/dist/runtime/api/models/PasswordUpdateRequest.d.ts +1 -3
  108. package/dist/runtime/api/models/PipelineStage.d.ts +1 -5
  109. package/dist/runtime/api/models/RenameRequest.d.ts +34 -0
  110. package/dist/runtime/api/models/RenameRequest.js +28 -0
  111. package/dist/runtime/api/models/RenameResponse.d.ts +30 -0
  112. package/dist/runtime/api/models/RenameResponse.js +26 -0
  113. package/dist/runtime/api/models/Role.d.ts +1 -7
  114. package/dist/runtime/api/models/SchemaAnalysis.d.ts +1 -9
  115. package/dist/runtime/api/models/SchemaAnalysisField.d.ts +1 -13
  116. package/dist/runtime/api/models/SchemaAnalysisFieldType.d.ts +1 -7
  117. package/dist/runtime/api/models/SearchRequest.d.ts +1 -7
  118. package/dist/runtime/api/models/SettingsResponse.d.ts +2 -10
  119. package/dist/runtime/api/models/UpdateFileInformationRequest.d.ts +2 -6
  120. package/dist/runtime/api/models/UpdateRequest.d.ts +3 -7
  121. package/dist/runtime/api/models/UpdateResponse.d.ts +1 -9
  122. package/dist/runtime/api/models/UpdateRoleRequest.d.ts +1 -5
  123. package/dist/runtime/api/models/UserInformation.d.ts +1 -9
  124. package/dist/runtime/api/models/UserProfile.d.ts +1 -11
  125. package/dist/runtime/api/models/Version.d.ts +1 -7
  126. package/dist/runtime/api/models/Version.js +3 -2
  127. package/dist/runtime/api/models/index.d.ts +9 -0
  128. package/dist/runtime/api/models/index.js +9 -0
  129. package/dist/runtime/api/runtime.d.ts +35 -2
  130. package/dist/runtime/api/runtime.js +84 -4
  131. package/dist/runtime/composables/mongocampApiFiles.d.ts +1 -1
  132. package/dist/runtime/composables/mongocampStorage.d.ts +1 -1
  133. package/package.json +4 -4
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,29 +17,21 @@
17
17
  export interface SettingsResponse {
18
18
  /**
19
19
  *
20
- * @type {Array<string>}
21
- * @memberof SettingsResponse
22
20
  */
23
21
  routesPlugins?: Array<string>;
24
22
  /**
25
23
  *
26
- * @type {Array<string>}
27
- * @memberof SettingsResponse
28
24
  */
29
25
  filePlugins?: Array<string>;
30
26
  /**
31
27
  *
32
- * @type {Array<string>}
33
- * @memberof SettingsResponse
34
28
  */
35
29
  ignoredPlugins?: Array<string>;
36
30
  /**
37
31
  *
38
- * @type {{ [key: string]: any; }}
39
- * @memberof SettingsResponse
40
32
  */
41
33
  configurations: {
42
- [key: string]: any;
34
+ [key: string]: any | null;
43
35
  };
44
36
  }
45
37
  /**
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,17 +17,13 @@
17
17
  export interface UpdateFileInformationRequest {
18
18
  /**
19
19
  *
20
- * @type {string}
21
- * @memberof UpdateFileInformationRequest
22
20
  */
23
21
  filename?: string;
24
22
  /**
25
23
  *
26
- * @type {{ [key: string]: any; }}
27
- * @memberof UpdateFileInformationRequest
28
24
  */
29
25
  metadata?: {
30
- [key: string]: any;
26
+ [key: string]: any | null;
31
27
  };
32
28
  }
33
29
  /**
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,19 +17,15 @@
17
17
  export interface UpdateRequest {
18
18
  /**
19
19
  *
20
- * @type {{ [key: string]: any; }}
21
- * @memberof UpdateRequest
22
20
  */
23
21
  document: {
24
- [key: string]: any;
22
+ [key: string]: any | null;
25
23
  };
26
24
  /**
27
25
  *
28
- * @type {{ [key: string]: any; }}
29
- * @memberof UpdateRequest
30
26
  */
31
27
  filter: {
32
- [key: string]: any;
28
+ [key: string]: any | null;
33
29
  };
34
30
  }
35
31
  /**
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,26 +17,18 @@
17
17
  export interface UpdateResponse {
18
18
  /**
19
19
  *
20
- * @type {boolean}
21
- * @memberof UpdateResponse
22
20
  */
23
21
  wasAcknowledged: boolean;
24
22
  /**
25
23
  *
26
- * @type {Array<string>}
27
- * @memberof UpdateResponse
28
24
  */
29
25
  upsertedIds?: Array<string>;
30
26
  /**
31
27
  *
32
- * @type {number}
33
- * @memberof UpdateResponse
34
28
  */
35
29
  modifiedCount: number;
36
30
  /**
37
31
  *
38
- * @type {number}
39
- * @memberof UpdateResponse
40
32
  */
41
33
  matchedCount: number;
42
34
  }
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -18,14 +18,10 @@ import type { Grant } from './Grant.js';
18
18
  export interface UpdateRoleRequest {
19
19
  /**
20
20
  *
21
- * @type {boolean}
22
- * @memberof UpdateRoleRequest
23
21
  */
24
22
  isAdmin: boolean;
25
23
  /**
26
24
  *
27
- * @type {Array<Grant>}
28
- * @memberof UpdateRoleRequest
29
25
  */
30
26
  collectionGrants?: Array<Grant>;
31
27
  }
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,26 +17,18 @@
17
17
  export interface UserInformation {
18
18
  /**
19
19
  *
20
- * @type {string}
21
- * @memberof UserInformation
22
20
  */
23
21
  userId: string;
24
22
  /**
25
23
  *
26
- * @type {string}
27
- * @memberof UserInformation
28
24
  */
29
25
  password: string;
30
26
  /**
31
27
  *
32
- * @type {string}
33
- * @memberof UserInformation
34
28
  */
35
29
  apiKey?: string;
36
30
  /**
37
31
  *
38
- * @type {Array<string>}
39
- * @memberof UserInformation
40
32
  */
41
33
  roles?: Array<string>;
42
34
  }
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -18,32 +18,22 @@ import type { Grant } from './Grant.js';
18
18
  export interface UserProfile {
19
19
  /**
20
20
  *
21
- * @type {string}
22
- * @memberof UserProfile
23
21
  */
24
22
  user: string;
25
23
  /**
26
24
  *
27
- * @type {boolean}
28
- * @memberof UserProfile
29
25
  */
30
26
  isAdmin: boolean;
31
27
  /**
32
28
  *
33
- * @type {string}
34
- * @memberof UserProfile
35
29
  */
36
30
  apiKey?: string;
37
31
  /**
38
32
  *
39
- * @type {Array<string>}
40
- * @memberof UserProfile
41
33
  */
42
34
  roles?: Array<string>;
43
35
  /**
44
36
  *
45
- * @type {Array<Grant>}
46
- * @memberof UserProfile
47
37
  */
48
38
  grants?: Array<Grant>;
49
39
  }
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -17,20 +17,14 @@
17
17
  export interface Version {
18
18
  /**
19
19
  *
20
- * @type {string}
21
- * @memberof Version
22
20
  */
23
21
  name: string;
24
22
  /**
25
23
  *
26
- * @type {string}
27
- * @memberof Version
28
24
  */
29
25
  version: string;
30
26
  /**
31
27
  *
32
- * @type {Date}
33
- * @memberof Version
34
28
  */
35
29
  builtAt: Date;
36
30
  }
@@ -1,3 +1,4 @@
1
+ import { parseDateTime, serializeDateTime } from "../runtime.js";
1
2
  export function instanceOfVersion(value) {
2
3
  if (!("name" in value) || value["name"] === void 0) return false;
3
4
  if (!("version" in value) || value["version"] === void 0) return false;
@@ -14,7 +15,7 @@ export function VersionFromJSONTyped(json, ignoreDiscriminator) {
14
15
  return {
15
16
  "name": json["name"],
16
17
  "version": json["version"],
17
- "builtAt": new Date(json["builtAt"])
18
+ "builtAt": json["builtAt"] == null ? json["builtAt"] : parseDateTime(json["builtAt"])
18
19
  };
19
20
  }
20
21
  export function VersionToJSON(json) {
@@ -27,6 +28,6 @@ export function VersionToJSONTyped(value, ignoreDiscriminator = false) {
27
28
  return {
28
29
  "name": value["name"],
29
30
  "version": value["version"],
30
- "builtAt": value["builtAt"].toISOString()
31
+ "builtAt": value["builtAt"] == null ? value["builtAt"] : serializeDateTime(value["builtAt"])
31
32
  };
32
33
  }
@@ -4,15 +4,22 @@ export * from './ClusterMemberInformation.js';
4
4
  export * from './CollectionPermission.js';
5
5
  export * from './CollectionStatus.js';
6
6
  export * from './CollectionSummary.js';
7
+ export * from './CopyRequest.js';
8
+ export * from './CopyResponse.js';
7
9
  export * from './CountResponse.js';
8
10
  export * from './DatabaseInfo.js';
9
11
  export * from './DeleteResponse.js';
10
12
  export * from './ErrorDescription.js';
13
+ export * from './FieldInfo.js';
14
+ export * from './FieldTypeCount.js';
11
15
  export * from './FileInformation.js';
12
16
  export * from './Grant.js';
17
+ export * from './ImportResponse.js';
13
18
  export * from './IndexCreateRequest.js';
14
19
  export * from './IndexCreateResponse.js';
15
20
  export * from './IndexDropResponse.js';
21
+ export * from './IndexInfo.js';
22
+ export * from './IndexKey.js';
16
23
  export * from './IndexOptionsRequest.js';
17
24
  export * from './IndexUsage.js';
18
25
  export * from './InsertError.js';
@@ -32,6 +39,8 @@ export * from './MongoFindRequest.js';
32
39
  export * from './MongoIndex.js';
33
40
  export * from './PasswordUpdateRequest.js';
34
41
  export * from './PipelineStage.js';
42
+ export * from './RenameRequest.js';
43
+ export * from './RenameResponse.js';
35
44
  export * from './Role.js';
36
45
  export * from './SchemaAnalysis.js';
37
46
  export * from './SchemaAnalysisField.js';
@@ -4,15 +4,22 @@ export * from "./ClusterMemberInformation.js";
4
4
  export * from "./CollectionPermission.js";
5
5
  export * from "./CollectionStatus.js";
6
6
  export * from "./CollectionSummary.js";
7
+ export * from "./CopyRequest.js";
8
+ export * from "./CopyResponse.js";
7
9
  export * from "./CountResponse.js";
8
10
  export * from "./DatabaseInfo.js";
9
11
  export * from "./DeleteResponse.js";
10
12
  export * from "./ErrorDescription.js";
13
+ export * from "./FieldInfo.js";
14
+ export * from "./FieldTypeCount.js";
11
15
  export * from "./FileInformation.js";
12
16
  export * from "./Grant.js";
17
+ export * from "./ImportResponse.js";
13
18
  export * from "./IndexCreateRequest.js";
14
19
  export * from "./IndexCreateResponse.js";
15
20
  export * from "./IndexDropResponse.js";
21
+ export * from "./IndexInfo.js";
22
+ export * from "./IndexKey.js";
16
23
  export * from "./IndexOptionsRequest.js";
17
24
  export * from "./IndexUsage.js";
18
25
  export * from "./InsertError.js";
@@ -32,6 +39,8 @@ export * from "./MongoFindRequest.js";
32
39
  export * from "./MongoIndex.js";
33
40
  export * from "./PasswordUpdateRequest.js";
34
41
  export * from "./PipelineStage.js";
42
+ export * from "./RenameRequest.js";
43
+ export * from "./RenameResponse.js";
35
44
  export * from "./Role.js";
36
45
  export * from "./SchemaAnalysis.js";
37
46
  export * from "./SchemaAnalysisField.js";
@@ -2,7 +2,7 @@
2
2
  * mongocamp-library
3
3
  * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
4
4
  *
5
- * The version of the OpenAPI document: 1.7.1
5
+ * The version of the OpenAPI document: 1.8.2
6
6
  *
7
7
  *
8
8
  * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -124,9 +124,21 @@ export interface RequestOpts {
124
124
  }
125
125
  export declare function querystring(params: HTTPQuery, prefix?: string): string;
126
126
  export declare function exists(json: any, key: string): boolean;
127
+ /**
128
+ * Every generated date call site routes through these.
129
+ *
130
+ * `format: date` is a calendar date, with no time and no offset, so it is converted
131
+ * against the local calendar on both ends: they have to agree or the date shifts by
132
+ * a day. `format: date-time` is an instant and uses UTC.
133
+ */
134
+ export declare function serializeDateTime(value: Date): string;
135
+ export declare function serializeDate(value: Date): string;
136
+ export declare function parseDate(value: Date | string): Date;
137
+ export declare function parseDateTime(value: any): Date;
127
138
  export declare function mapValues(data: any, fn: (item: any) => any): {
128
139
  [key: string]: any;
129
140
  };
141
+ export declare function anyToJSON(value: any): any;
130
142
  export declare function canConsumeForm(consumes: Consume[]): boolean;
131
143
  export interface Consume {
132
144
  contentType: string;
@@ -172,11 +184,32 @@ export declare class VoidApiResponse {
172
184
  constructor(raw: Response);
173
185
  value(): Promise<void>;
174
186
  }
187
+ /**
188
+ * A Blob carrying the file name the server advertised, empty when it did not send one. It is a File
189
+ * wherever one can be built, and the bare Blob given a name otherwise. Same name and shape as the
190
+ * `typescript` generator's browser HttpFile.
191
+ */
192
+ export type HttpFile = Blob & {
193
+ readonly name: string;
194
+ };
175
195
  export declare class BlobApiResponse {
176
196
  raw: Response;
177
197
  constructor(raw: Response);
178
- value(): Promise<Blob>;
198
+ /**
199
+ * The body named after the Content-Disposition header, so that a download keeps the name the
200
+ * server gave it. A File is built from a native Blob; the Blob itself is named where there is no
201
+ * global File (Node.js before 20), where File cannot be constructed, or where the Blob is not the
202
+ * native one, as returned by an injected fetch implementation such as node-fetch, which a File
203
+ * would stringify instead of wrapping.
204
+ */
205
+ value(): Promise<HttpFile>;
179
206
  }
207
+ /**
208
+ * The file name advertised by a Content-Disposition header (RFC 6266): the RFC 5987 encoded
209
+ * `filename*` parameter first, falling back to the plain `filename` when it is malformed, not UTF-8
210
+ * or has no usable name. Any directory part is dropped; undefined when no usable name is advertised.
211
+ */
212
+ export declare function parseContentDispositionFilename(headers: Headers): string | undefined;
180
213
  export declare class TextApiResponse {
181
214
  raw: Response;
182
215
  constructor(raw: Response);
@@ -51,7 +51,7 @@ export class BaseAPI {
51
51
  this.configuration = configuration;
52
52
  this.middleware = configuration.middleware;
53
53
  }
54
- static jsonRegex = new RegExp("^(:?application/json|[^;/ ]+/[^;/ ]+[+]json)[ ]*(:?;.*)?$", "i");
54
+ static jsonRegex = /^(:?application\/json|[^;/ \t]+\/[^;/ \t]+[+]json)[ \t]*(:?;.*)?$/i;
55
55
  middleware;
56
56
  withMiddleware(...middlewares) {
57
57
  const next = this.clone();
@@ -241,7 +241,7 @@ function querystringSingleKey(key, value, keyPrefix = "") {
241
241
  return querystringSingleKey(key, valueAsArray, keyPrefix);
242
242
  }
243
243
  if (value instanceof Date) {
244
- return `${encodeURIComponent(fullKey)}=${encodeURIComponent(value.toISOString())}`;
244
+ return `${encodeURIComponent(fullKey)}=${encodeURIComponent(serializeDateTime(value))}`;
245
245
  }
246
246
  if (value instanceof Object) {
247
247
  return querystring(value, fullKey);
@@ -252,6 +252,40 @@ export function exists(json, key) {
252
252
  const value = json[key];
253
253
  return value !== null && value !== void 0;
254
254
  }
255
+ export function serializeDateTime(value) {
256
+ return value.toISOString();
257
+ }
258
+ export function serializeDate(value) {
259
+ if (isNaN(value.getTime())) {
260
+ throw new RangeError("Invalid time value");
261
+ }
262
+ const year = ("000" + value.getFullYear()).slice(-4);
263
+ const month = ("0" + (value.getMonth() + 1)).slice(-2);
264
+ const day = ("0" + value.getDate()).slice(-2);
265
+ return `${year}-${month}-${day}`;
266
+ }
267
+ export function parseDate(value) {
268
+ if (value instanceof Date) {
269
+ return value;
270
+ }
271
+ const fullDate = /^(\d{4})-(\d{2})-(\d{2})$/.exec(String(value));
272
+ if (fullDate) {
273
+ const year = Number(fullDate[1]);
274
+ const month = Number(fullDate[2]) - 1;
275
+ const day = Number(fullDate[3]);
276
+ const date = /* @__PURE__ */ new Date(0);
277
+ date.setFullYear(year, month, day);
278
+ date.setHours(0, 0, 0, 0);
279
+ if (date.getFullYear() !== year || date.getMonth() !== month || date.getDate() !== day) {
280
+ return /* @__PURE__ */ new Date(NaN);
281
+ }
282
+ return date;
283
+ }
284
+ return new Date(value);
285
+ }
286
+ export function parseDateTime(value) {
287
+ return new Date(value);
288
+ }
255
289
  export function mapValues(data, fn) {
256
290
  const result = {};
257
291
  for (const key of Object.keys(data)) {
@@ -259,9 +293,12 @@ export function mapValues(data, fn) {
259
293
  }
260
294
  return result;
261
295
  }
296
+ export function anyToJSON(value) {
297
+ return value;
298
+ }
262
299
  export function canConsumeForm(consumes) {
263
300
  for (const consume of consumes) {
264
- if ("multipart/form-data" === consume.contentType) {
301
+ if (consume.contentType?.startsWith("multipart/form-data") == true) {
265
302
  return true;
266
303
  }
267
304
  }
@@ -288,10 +325,53 @@ export class BlobApiResponse {
288
325
  constructor(raw) {
289
326
  this.raw = raw;
290
327
  }
328
+ /**
329
+ * The body named after the Content-Disposition header, so that a download keeps the name the
330
+ * server gave it. A File is built from a native Blob; the Blob itself is named where there is no
331
+ * global File (Node.js before 20), where File cannot be constructed, or where the Blob is not the
332
+ * native one, as returned by an injected fetch implementation such as node-fetch, which a File
333
+ * would stringify instead of wrapping.
334
+ */
291
335
  async value() {
292
- return await this.raw.blob();
336
+ const blob = await this.raw.blob();
337
+ const name = parseContentDispositionFilename(this.raw.headers) ?? "";
338
+ if (typeof File !== "undefined" && blob instanceof Blob) {
339
+ try {
340
+ return new File([blob], name, { type: blob.type });
341
+ } catch {
342
+ }
343
+ }
344
+ return Object.assign(blob, { name });
345
+ }
346
+ }
347
+ export function parseContentDispositionFilename(headers) {
348
+ const params = parseHeaderParameters(headers.get("Content-Disposition") ?? "");
349
+ return basename(decodeExtValue(params.get("filename*"))) ?? basename(params.get("filename"));
350
+ }
351
+ function decodeExtValue(value) {
352
+ const match = value === void 0 ? null : /^utf-8'[^']*'(.*)$/i.exec(value);
353
+ try {
354
+ return match ? decodeURIComponent(match[1]) : void 0;
355
+ } catch {
356
+ return void 0;
293
357
  }
294
358
  }
359
+ function parseHeaderParameters(value) {
360
+ const params = /* @__PURE__ */ new Map();
361
+ const parameter = /(?:^|;)\s*([^=;]+?)\s*=\s*(?:"((?:[^"\\]|\\.)*)"?|([^;]*))/g;
362
+ let match;
363
+ while ((match = parameter.exec(value)) !== null) {
364
+ const name = match[1].toLowerCase();
365
+ if (!params.has(name)) {
366
+ params.set(name, match[2] !== void 0 ? match[2].replace(/\\(.)/g, "$1") : match[3].trim());
367
+ }
368
+ }
369
+ return params;
370
+ }
371
+ function basename(name) {
372
+ const base = name?.split(/[\\/]/).pop();
373
+ return !base || base === "." || base === ".." ? void 0 : base;
374
+ }
295
375
  export class TextApiResponse {
296
376
  constructor(raw) {
297
377
  this.raw = raw;
@@ -7,7 +7,7 @@ export declare function useMongocampApiFiles(): {
7
7
  list: (bucketName: string, filter?: string, sort?: string, projection?: string, rowsPerPage?: number, page?: number) => Promise<import("../api/index.js").FileInformation[]>;
8
8
  find: (bucketName: string, mongoFindRequest: MongoFindRequest, rowsPerPage?: number, page?: number) => Promise<import("../api/index.js").FileInformation[]>;
9
9
  info: (bucketName: string, fileId: string) => Promise<import("../api/index.js").FileInformation>;
10
- download: (bucketName: string, fileId: string) => Promise<Blob>;
10
+ download: (bucketName: string, fileId: string) => Promise<import("../api/index.js").HttpFile>;
11
11
  upload: (bucketName: string, file: Blob, metaData: string, fileName?: string) => Promise<import("../api/index.js").InsertResponse>;
12
12
  update: (bucketName: string, fileId: string, updateFileInformationRequest: UpdateFileInformationRequest) => Promise<import("../api/index.js").UpdateResponse>;
13
13
  remove: (bucketName: string, fileId: string) => Promise<import("../api/index.js").DeleteResponse>;
@@ -3,4 +3,4 @@ export interface MongocampSession {
3
3
  token: string;
4
4
  profile: UserProfile;
5
5
  }
6
- export declare function useMongocampStorage(): import("#app").CookieRef<MongocampSession>;
6
+ export declare function useMongocampStorage(): import("nuxt/app").CookieRef<MongocampSession>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sfxcode/nuxt-mongocamp-server",
3
- "version": "1.7.0",
3
+ "version": "1.9.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "exports": {
@@ -51,10 +51,10 @@
51
51
  "devDependencies": {
52
52
  "@nuxt/devtools": "^4.1.0",
53
53
  "@nuxt/eslint-config": "^1.17.0",
54
- "@nuxt/module-builder": "^1.0.3",
54
+ "@nuxt/module-builder": "^1.0.4",
55
55
  "@nuxt/schema": "^4.6.4",
56
- "@nuxt/test-utils": "^4.3.4",
57
- "@openapitools/openapi-generator-cli": "^2.42.0",
56
+ "@nuxt/test-utils": "^4.4.0",
57
+ "@openapitools/openapi-generator-cli": "^2.42.2",
58
58
  "@types/node": "^26.6.6",
59
59
  "@unocss/nuxt": "^66.12.0",
60
60
  "changelogen": "^0.6.2",