remult 0.24.1 → 0.24.2-exp.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.
package/esm/index.js
CHANGED
|
@@ -10,6 +10,7 @@ export { WebSqlDataProvider } from './src/data-providers/web-sql-data-provider.j
|
|
|
10
10
|
export { SqlDatabase } from './src/data-providers/sql-database.js'; //V
|
|
11
11
|
export { CustomSqlFilterBuilder, dbNamesOf, } from './src/filter/filter-consumer-bridge-to-sql-request.js';
|
|
12
12
|
export { JsonDataProvider, } from './src/data-providers/json-data-provider.js'; //V
|
|
13
|
+
export { IpfsEntityFileStorage } from './src/data-providers/ipfs-data-provider.js';
|
|
13
14
|
//export * from './src/data-api'; //reconsider if to make internal
|
|
14
15
|
export { Controller, BackendMethod, ProgressListener, } from './src/server-action.js';
|
|
15
16
|
export { Allow, Remult, withRemult, isBackend, EventSource, } from './src/context.js';
|
|
@@ -36,6 +37,6 @@ export { SubscriptionChannel, } from './src/live-query/SubscriptionChannel.js';
|
|
|
36
37
|
* await repo(Customer).insert()
|
|
37
38
|
* ```
|
|
38
39
|
*/
|
|
39
|
-
export function repo(entity) {
|
|
40
|
-
return remult.repo(entity);
|
|
40
|
+
export function repo(entity, dataProvider) {
|
|
41
|
+
return remult.repo(entity, dataProvider);
|
|
41
42
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export class IpfsEntityFileStorage {
|
|
2
|
+
//@internal
|
|
3
|
+
opfsRoot;
|
|
4
|
+
async getItem(entityDbName) {
|
|
5
|
+
if (!this.opfsRoot) {
|
|
6
|
+
this.opfsRoot = await navigator.storage.getDirectory();
|
|
7
|
+
}
|
|
8
|
+
const opfsFile = await this.opfsRoot.getFileHandle(entityDbName + '.json', {
|
|
9
|
+
create: true,
|
|
10
|
+
});
|
|
11
|
+
const readable = await opfsFile.getFile();
|
|
12
|
+
return await readable.text();
|
|
13
|
+
}
|
|
14
|
+
async setItem(entityDbName, json) {
|
|
15
|
+
const opfsFile = await this.opfsRoot.getFileHandle(entityDbName + '.json', {
|
|
16
|
+
create: true,
|
|
17
|
+
});
|
|
18
|
+
const writable = await opfsFile.createWritable();
|
|
19
|
+
await writable.write(json);
|
|
20
|
+
await writable.close();
|
|
21
|
+
}
|
|
22
|
+
}
|
package/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ClassType } from './classType.js';
|
|
2
|
+
import type { DataProvider } from './src/data-interfaces.js';
|
|
2
3
|
export type { ClassType } from './classType.js';
|
|
3
4
|
export { MembersOnly, FieldsMetadata, FieldRef, IdFieldRef, FieldsRef, EntityMetadata, EntityOrderBy, EntityFilter, FindOptions, FindOptionsBase, QueryResult, QueryOptions, Repository, FindFirstOptions, ComparisonValueFilter, ValueFilter, IdFilter, ContainsStringValueFilter, EntityRef, SortSegments, Paginator, LiveQuery, LiveQueryChangeInfo, Subscribable, RefSubscriber, RefSubscriberBase, RelationOptions, ObjectMembersOnly, MembersToInclude, RepositoryRelations, EntityIdFields, ClassFieldDecorator, ClassFieldDecoratorContextStub, //n1 consider removing in ts5
|
|
4
5
|
LifecycleEvent, FieldsRefBase, FieldsRefForEntityBase, RepositoryRelationsForEntityBase, ControllerRefForControllerBase, ControllerRefBase, ControllerRef, EntityRefForEntityBase, IdMetadata, FindFirstOptionsBase, } from './src/remult3/remult3.js';
|
|
@@ -19,6 +20,7 @@ export { WebSqlDataProvider } from './src/data-providers/web-sql-data-provider.j
|
|
|
19
20
|
export { SqlDatabase } from './src/data-providers/sql-database.js';
|
|
20
21
|
export { CustomSqlFilterObject, CustomSqlFilterBuilder, dbNamesOf, CustomSqlFilterBuilderFunction, EntityDbNames, } from './src/filter/filter-consumer-bridge-to-sql-request.js';
|
|
21
22
|
export { JsonDataProvider, JsonEntityStorage, } from './src/data-providers/json-data-provider.js';
|
|
23
|
+
export { IpfsEntityFileStorage } from './src/data-providers/ipfs-data-provider.js';
|
|
22
24
|
export { Controller, BackendMethodOptions, BackendMethod, ProgressListener, } from './src/server-action.js';
|
|
23
25
|
export { Allowed, Allow, Remult, withRemult, RemultContext, ApiClient, isBackend, AllowedForInstance, EventDispatcher, EventSource, UserInfo, } from './src/context.js';
|
|
24
26
|
export { ExternalHttpProvider } from './src/buildRestDataProvider.js';
|
|
@@ -43,4 +45,4 @@ export { SubscriptionListener, SubscriptionClientConnection, SubscriptionClient,
|
|
|
43
45
|
* await repo(Customer).insert()
|
|
44
46
|
* ```
|
|
45
47
|
*/
|
|
46
|
-
export declare function repo<entityType>(entity: ClassType<entityType
|
|
48
|
+
export declare function repo<entityType>(entity: ClassType<entityType>, dataProvider?: DataProvider): import("./src/remult3/remult3.js").Repository<entityType>;
|
package/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.repo = exports.SubscriptionChannel = exports.InMemoryLiveQueryStorage = exports.remult = exports.ValueConverters = exports.Validators = exports.UrlBuilder = exports.Filter = exports.CompoundIdField = exports.Sort = exports.EventSource = exports.isBackend = exports.withRemult = exports.Remult = exports.Allow = exports.ProgressListener = exports.BackendMethod = exports.Controller = exports.JsonDataProvider = exports.dbNamesOf = exports.CustomSqlFilterBuilder = exports.SqlDatabase = exports.WebSqlDataProvider = exports.InMemoryDataProvider = exports.RestDataProvider = exports.describeClass = exports.IdEntity = exports.Relations = exports.Fields = exports.Field = exports.getEntityRef = exports.Entity = exports.CaptionTransformer = exports.ValueListInfo = exports.getValueList = exports.ValueListFieldType = exports.getFields = exports.FieldType = exports.ControllerBase = exports.EntityBase = void 0;
|
|
3
|
+
exports.repo = exports.SubscriptionChannel = exports.InMemoryLiveQueryStorage = exports.remult = exports.ValueConverters = exports.Validators = exports.UrlBuilder = exports.Filter = exports.CompoundIdField = exports.Sort = exports.EventSource = exports.isBackend = exports.withRemult = exports.Remult = exports.Allow = exports.ProgressListener = exports.BackendMethod = exports.Controller = exports.IpfsEntityFileStorage = exports.JsonDataProvider = exports.dbNamesOf = exports.CustomSqlFilterBuilder = exports.SqlDatabase = exports.WebSqlDataProvider = exports.InMemoryDataProvider = exports.RestDataProvider = exports.describeClass = exports.IdEntity = exports.Relations = exports.Fields = exports.Field = exports.getEntityRef = exports.Entity = exports.CaptionTransformer = exports.ValueListInfo = exports.getValueList = exports.ValueListFieldType = exports.getFields = exports.FieldType = exports.ControllerBase = exports.EntityBase = void 0;
|
|
4
4
|
var RepositoryImplementation_js_1 = require("./src/remult3/RepositoryImplementation.js");
|
|
5
5
|
Object.defineProperty(exports, "EntityBase", { enumerable: true, get: function () { return RepositoryImplementation_js_1.EntityBase; } });
|
|
6
6
|
Object.defineProperty(exports, "ControllerBase", { enumerable: true, get: function () { return RepositoryImplementation_js_1.ControllerBase; } });
|
|
@@ -35,6 +35,8 @@ Object.defineProperty(exports, "CustomSqlFilterBuilder", { enumerable: true, get
|
|
|
35
35
|
Object.defineProperty(exports, "dbNamesOf", { enumerable: true, get: function () { return filter_consumer_bridge_to_sql_request_js_1.dbNamesOf; } });
|
|
36
36
|
var json_data_provider_js_1 = require("./src/data-providers/json-data-provider.js"); //V
|
|
37
37
|
Object.defineProperty(exports, "JsonDataProvider", { enumerable: true, get: function () { return json_data_provider_js_1.JsonDataProvider; } });
|
|
38
|
+
var ipfs_data_provider_js_1 = require("./src/data-providers/ipfs-data-provider.js");
|
|
39
|
+
Object.defineProperty(exports, "IpfsEntityFileStorage", { enumerable: true, get: function () { return ipfs_data_provider_js_1.IpfsEntityFileStorage; } });
|
|
38
40
|
//export * from './src/data-api'; //reconsider if to make internal
|
|
39
41
|
var server_action_js_1 = require("./src/server-action.js");
|
|
40
42
|
Object.defineProperty(exports, "Controller", { enumerable: true, get: function () { return server_action_js_1.Controller; } });
|
|
@@ -78,7 +80,7 @@ Object.defineProperty(exports, "SubscriptionChannel", { enumerable: true, get: f
|
|
|
78
80
|
* await repo(Customer).insert()
|
|
79
81
|
* ```
|
|
80
82
|
*/
|
|
81
|
-
function repo(entity) {
|
|
82
|
-
return remult_proxy_js_2.remult.repo(entity);
|
|
83
|
+
function repo(entity, dataProvider) {
|
|
84
|
+
return remult_proxy_js_2.remult.repo(entity, dataProvider);
|
|
83
85
|
}
|
|
84
86
|
exports.repo = repo;
|
package/package.json
CHANGED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IpfsEntityFileStorage = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var IpfsEntityFileStorage = /** @class */ (function () {
|
|
6
|
+
function IpfsEntityFileStorage() {
|
|
7
|
+
}
|
|
8
|
+
IpfsEntityFileStorage.prototype.getItem = function (entityDbName) {
|
|
9
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
10
|
+
var _a, opfsFile, readable;
|
|
11
|
+
return tslib_1.__generator(this, function (_b) {
|
|
12
|
+
switch (_b.label) {
|
|
13
|
+
case 0:
|
|
14
|
+
if (!!this.opfsRoot) return [3 /*break*/, 2];
|
|
15
|
+
_a = this;
|
|
16
|
+
return [4 /*yield*/, navigator.storage.getDirectory()];
|
|
17
|
+
case 1:
|
|
18
|
+
_a.opfsRoot = _b.sent();
|
|
19
|
+
_b.label = 2;
|
|
20
|
+
case 2: return [4 /*yield*/, this.opfsRoot.getFileHandle(entityDbName + '.json', {
|
|
21
|
+
create: true,
|
|
22
|
+
})];
|
|
23
|
+
case 3:
|
|
24
|
+
opfsFile = _b.sent();
|
|
25
|
+
return [4 /*yield*/, opfsFile.getFile()];
|
|
26
|
+
case 4:
|
|
27
|
+
readable = _b.sent();
|
|
28
|
+
return [4 /*yield*/, readable.text()];
|
|
29
|
+
case 5: return [2 /*return*/, _b.sent()];
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
IpfsEntityFileStorage.prototype.setItem = function (entityDbName, json) {
|
|
35
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
36
|
+
var opfsFile, writable;
|
|
37
|
+
return tslib_1.__generator(this, function (_a) {
|
|
38
|
+
switch (_a.label) {
|
|
39
|
+
case 0: return [4 /*yield*/, this.opfsRoot.getFileHandle(entityDbName + '.json', {
|
|
40
|
+
create: true,
|
|
41
|
+
})];
|
|
42
|
+
case 1:
|
|
43
|
+
opfsFile = _a.sent();
|
|
44
|
+
return [4 /*yield*/, opfsFile.createWritable()];
|
|
45
|
+
case 2:
|
|
46
|
+
writable = _a.sent();
|
|
47
|
+
return [4 /*yield*/, writable.write(json)];
|
|
48
|
+
case 3:
|
|
49
|
+
_a.sent();
|
|
50
|
+
return [4 /*yield*/, writable.close()];
|
|
51
|
+
case 4:
|
|
52
|
+
_a.sent();
|
|
53
|
+
return [2 /*return*/];
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
return IpfsEntityFileStorage;
|
|
59
|
+
}());
|
|
60
|
+
exports.IpfsEntityFileStorage = IpfsEntityFileStorage;
|