protoobject 1.1.29 → 2.0.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 +142 -2
  2. package/lib/cjs/browser.js +28 -0
  3. package/lib/cjs/browser.js.map +1 -0
  4. package/lib/cjs/classes/proto-object-crypto.js +133 -0
  5. package/lib/cjs/classes/proto-object-crypto.js.map +1 -0
  6. package/lib/cjs/classes/proto-object-fs.js +395 -0
  7. package/lib/cjs/classes/proto-object-fs.js.map +1 -0
  8. package/lib/cjs/classes/proto-object-sqlite.js +331 -0
  9. package/lib/cjs/classes/proto-object-sqlite.js.map +1 -0
  10. package/lib/cjs/classes/proto-object-stream.js +148 -0
  11. package/lib/cjs/classes/proto-object-stream.js.map +1 -0
  12. package/lib/cjs/classes/proto-object-tcp.js +322 -0
  13. package/lib/cjs/classes/proto-object-tcp.js.map +1 -0
  14. package/lib/cjs/classes/proto-object.js.map +1 -0
  15. package/lib/cjs/decorators/static-implements.js.map +1 -0
  16. package/lib/cjs/index.js +41 -0
  17. package/lib/cjs/index.js.map +1 -0
  18. package/lib/cjs/package.json +1 -0
  19. package/lib/{types → cjs/types}/any-object.js.map +1 -1
  20. package/lib/cjs/types/collection-transformer.js.map +1 -0
  21. package/lib/cjs/types/dynamic-methods.js.map +1 -0
  22. package/lib/cjs/types/record-transformer.js.map +1 -0
  23. package/lib/cjs/types/static-methods.js.map +1 -0
  24. package/lib/cjs/types/unknown-object.js.map +1 -0
  25. package/lib/cjs/types/validator-function.js.map +1 -0
  26. package/lib/cjs/utils/protoobject-browser-storage.js +672 -0
  27. package/lib/cjs/utils/protoobject-browser-storage.js.map +1 -0
  28. package/lib/cjs/utils/protoobject-factory.js.map +1 -0
  29. package/lib/cjs/utils/protoobject-localstorage.js +188 -0
  30. package/lib/cjs/utils/protoobject-localstorage.js.map +1 -0
  31. package/lib/esm/browser.js +20 -0
  32. package/lib/esm/browser.js.map +1 -0
  33. package/lib/esm/classes/proto-object-crypto.js +129 -0
  34. package/lib/esm/classes/proto-object-crypto.js.map +1 -0
  35. package/lib/esm/classes/proto-object-fs.js +391 -0
  36. package/lib/esm/classes/proto-object-fs.js.map +1 -0
  37. package/lib/esm/classes/proto-object-sqlite.js +328 -0
  38. package/lib/esm/classes/proto-object-sqlite.js.map +1 -0
  39. package/lib/esm/classes/proto-object-stream.js +144 -0
  40. package/lib/esm/classes/proto-object-stream.js.map +1 -0
  41. package/lib/esm/classes/proto-object-tcp.js +317 -0
  42. package/lib/esm/classes/proto-object-tcp.js.map +1 -0
  43. package/lib/esm/classes/proto-object.js +264 -0
  44. package/lib/esm/classes/proto-object.js.map +1 -0
  45. package/lib/esm/decorators/static-implements.js +12 -0
  46. package/lib/esm/decorators/static-implements.js.map +1 -0
  47. package/lib/esm/index.js +22 -0
  48. package/lib/esm/index.js.map +1 -0
  49. package/lib/esm/package.json +1 -0
  50. package/lib/esm/types/any-object.js +2 -0
  51. package/lib/esm/types/any-object.js.map +1 -0
  52. package/lib/esm/types/collection-transformer.js +3 -0
  53. package/lib/esm/types/collection-transformer.js.map +1 -0
  54. package/lib/esm/types/dynamic-methods.js +3 -0
  55. package/lib/esm/types/dynamic-methods.js.map +1 -0
  56. package/lib/esm/types/record-transformer.js +3 -0
  57. package/lib/esm/types/record-transformer.js.map +1 -0
  58. package/lib/esm/types/static-methods.js +4 -0
  59. package/lib/esm/types/static-methods.js.map +1 -0
  60. package/lib/esm/types/unknown-object.js +2 -0
  61. package/lib/esm/types/unknown-object.js.map +1 -0
  62. package/lib/esm/types/validator-function.js +3 -0
  63. package/lib/esm/types/validator-function.js.map +1 -0
  64. package/lib/esm/utils/protoobject-browser-storage.js +668 -0
  65. package/lib/esm/utils/protoobject-browser-storage.js.map +1 -0
  66. package/lib/esm/utils/protoobject-factory.js +32 -0
  67. package/lib/esm/utils/protoobject-factory.js.map +1 -0
  68. package/lib/esm/utils/protoobject-localstorage.js +184 -0
  69. package/lib/esm/utils/protoobject-localstorage.js.map +1 -0
  70. package/lib/types/browser.d.ts +18 -0
  71. package/lib/types/browser.d.ts.map +1 -0
  72. package/lib/types/classes/proto-object-crypto.d.ts +99 -0
  73. package/lib/types/classes/proto-object-crypto.d.ts.map +1 -0
  74. package/lib/types/classes/proto-object-fs.d.ts +107 -0
  75. package/lib/types/classes/proto-object-fs.d.ts.map +1 -0
  76. package/lib/types/classes/proto-object-sqlite.d.ts +98 -0
  77. package/lib/types/classes/proto-object-sqlite.d.ts.map +1 -0
  78. package/lib/types/classes/proto-object-stream.d.ts +38 -0
  79. package/lib/types/classes/proto-object-stream.d.ts.map +1 -0
  80. package/lib/types/classes/proto-object-tcp.d.ts +86 -0
  81. package/lib/types/classes/proto-object-tcp.d.ts.map +1 -0
  82. package/lib/{classes → types/classes}/proto-object.d.ts +1 -0
  83. package/lib/types/classes/proto-object.d.ts.map +1 -0
  84. package/lib/{decorators → types/decorators}/static-implements.d.ts +1 -0
  85. package/lib/types/decorators/static-implements.d.ts.map +1 -0
  86. package/lib/types/index.d.ts +24 -0
  87. package/lib/types/index.d.ts.map +1 -0
  88. package/lib/types/{any-object.d.ts → types/any-object.d.ts} +1 -0
  89. package/lib/types/types/any-object.d.ts.map +1 -0
  90. package/lib/types/{collection-transformer.d.ts → types/collection-transformer.d.ts} +1 -0
  91. package/lib/types/types/collection-transformer.d.ts.map +1 -0
  92. package/lib/types/{dynamic-methods.d.ts → types/dynamic-methods.d.ts} +1 -0
  93. package/lib/types/types/dynamic-methods.d.ts.map +1 -0
  94. package/lib/types/{record-transformer.d.ts → types/record-transformer.d.ts} +1 -0
  95. package/lib/types/types/record-transformer.d.ts.map +1 -0
  96. package/lib/types/{static-methods.d.ts → types/static-methods.d.ts} +1 -0
  97. package/lib/types/types/static-methods.d.ts.map +1 -0
  98. package/lib/types/{unknown-object.d.ts → types/unknown-object.d.ts} +1 -0
  99. package/lib/types/types/unknown-object.d.ts.map +1 -0
  100. package/lib/types/{validator-function.d.ts → types/validator-function.d.ts} +1 -0
  101. package/lib/types/types/validator-function.d.ts.map +1 -0
  102. package/lib/types/utils/protoobject-browser-storage.d.ts +118 -0
  103. package/lib/types/utils/protoobject-browser-storage.d.ts.map +1 -0
  104. package/lib/{utils → types/utils}/protoobject-factory.d.ts +1 -0
  105. package/lib/types/utils/protoobject-factory.d.ts.map +1 -0
  106. package/lib/types/utils/protoobject-localstorage.d.ts +69 -0
  107. package/lib/types/utils/protoobject-localstorage.d.ts.map +1 -0
  108. package/package.json +57 -6
  109. package/CHANGELOG.md +0 -186
  110. package/FUNDING.yml +0 -2
  111. package/ignoreUpdatesModules.json +0 -4
  112. package/lib/classes/proto-object.js.map +0 -1
  113. package/lib/decorators/static-implements.js.map +0 -1
  114. package/lib/index.d.ts +0 -14
  115. package/lib/index.js +0 -18
  116. package/lib/index.js.map +0 -1
  117. package/lib/types/collection-transformer.js.map +0 -1
  118. package/lib/types/dynamic-methods.js.map +0 -1
  119. package/lib/types/record-transformer.js.map +0 -1
  120. package/lib/types/static-methods.js.map +0 -1
  121. package/lib/types/unknown-object.js.map +0 -1
  122. package/lib/types/validator-function.js.map +0 -1
  123. package/lib/utils/protoobject-factory.js.map +0 -1
  124. /package/lib/{classes → cjs/classes}/proto-object.js +0 -0
  125. /package/lib/{decorators → cjs/decorators}/static-implements.js +0 -0
  126. /package/lib/{types → cjs/types}/any-object.js +0 -0
  127. /package/lib/{types → cjs/types}/collection-transformer.js +0 -0
  128. /package/lib/{types → cjs/types}/dynamic-methods.js +0 -0
  129. /package/lib/{types → cjs/types}/record-transformer.js +0 -0
  130. /package/lib/{types → cjs/types}/static-methods.js +0 -0
  131. /package/lib/{types → cjs/types}/unknown-object.js +0 -0
  132. /package/lib/{types → cjs/types}/validator-function.js +0 -0
  133. /package/lib/{utils → cjs/utils}/protoobject-factory.js +0 -0
@@ -0,0 +1,395 @@
1
+ "use strict";
2
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
3
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
4
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
5
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
6
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
7
+ var _, done = false;
8
+ for (var i = decorators.length - 1; i >= 0; i--) {
9
+ var context = {};
10
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
11
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
12
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
13
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
14
+ if (kind === "accessor") {
15
+ if (result === void 0) continue;
16
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
17
+ if (_ = accept(result.get)) descriptor.get = _;
18
+ if (_ = accept(result.set)) descriptor.set = _;
19
+ if (_ = accept(result.init)) initializers.unshift(_);
20
+ }
21
+ else if (_ = accept(result)) {
22
+ if (kind === "field") initializers.unshift(_);
23
+ else descriptor[key] = _;
24
+ }
25
+ }
26
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
27
+ done = true;
28
+ };
29
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
30
+ var useValue = arguments.length > 2;
31
+ for (var i = 0; i < initializers.length; i++) {
32
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
33
+ }
34
+ return useValue ? value : void 0;
35
+ };
36
+ var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
37
+ if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
38
+ return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
39
+ };
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.ProtoObjectFS = exports.ProtoObjectFileWatcher = exports.FileFormat = exports.FileOperationType = void 0;
42
+ const node_fs_1 = require("node:fs");
43
+ const node_path_1 = require("node:path");
44
+ const node_events_1 = require("node:events");
45
+ const proto_object_js_1 = require("./proto-object.js");
46
+ const static_implements_js_1 = require("../decorators/static-implements.js");
47
+ /* eslint-disable no-unused-vars */
48
+ /**
49
+ * File operation types
50
+ */
51
+ var FileOperationType;
52
+ (function (FileOperationType) {
53
+ FileOperationType["SAVE"] = "SAVE";
54
+ FileOperationType["LOAD"] = "LOAD";
55
+ FileOperationType["DELETE"] = "DELETE";
56
+ FileOperationType["WATCH"] = "WATCH";
57
+ })(FileOperationType || (exports.FileOperationType = FileOperationType = {}));
58
+ /**
59
+ * File formats supported
60
+ */
61
+ var FileFormat;
62
+ (function (FileFormat) {
63
+ FileFormat["JSON"] = ".json";
64
+ FileFormat["CSV"] = ".csv";
65
+ FileFormat["TEXT"] = ".txt";
66
+ })(FileFormat || (exports.FileFormat = FileFormat = {}));
67
+ /* eslint-enable no-unused-vars */
68
+ /**
69
+ * File system watcher for ProtoObject files
70
+ */
71
+ class ProtoObjectFileWatcher extends node_events_1.EventEmitter {
72
+ constructor() {
73
+ super(...arguments);
74
+ this.watchers = new Map();
75
+ }
76
+ /**
77
+ * Watch a file for changes
78
+ */
79
+ watchFile(filePath) {
80
+ if (this.watchers.has(filePath)) {
81
+ return; // Already watching
82
+ }
83
+ const watcher = (0, node_fs_1.watch)(filePath, (eventType, filename) => {
84
+ this.emit("fileChanged", {
85
+ filePath,
86
+ eventType,
87
+ filename,
88
+ timestamp: new Date(),
89
+ });
90
+ });
91
+ this.watchers.set(filePath, watcher);
92
+ }
93
+ /**
94
+ * Stop watching a file
95
+ */
96
+ unwatchFile(filePath) {
97
+ const watcher = this.watchers.get(filePath);
98
+ if (watcher) {
99
+ watcher.close();
100
+ this.watchers.delete(filePath);
101
+ }
102
+ }
103
+ /**
104
+ * Stop watching all files
105
+ */
106
+ unwatchAll() {
107
+ this.watchers.forEach((watcher) => watcher.close());
108
+ this.watchers.clear();
109
+ }
110
+ }
111
+ exports.ProtoObjectFileWatcher = ProtoObjectFileWatcher;
112
+ /**
113
+ * Base class for File System enabled ProtoObjects
114
+ */
115
+ let ProtoObjectFS = (() => {
116
+ let _classDecorators = [(0, static_implements_js_1.StaticImplements)()];
117
+ let _classDescriptor;
118
+ let _classExtraInitializers = [];
119
+ let _classThis;
120
+ let _classSuper = proto_object_js_1.ProtoObject;
121
+ var ProtoObjectFS = _classThis = class extends _classSuper {
122
+ constructor(data) {
123
+ super(data);
124
+ }
125
+ /**
126
+ * Save object to file
127
+ */
128
+ async saveToFile(filePath, format = FileFormat.JSON) {
129
+ try {
130
+ // Ensure directory exists
131
+ await node_fs_1.promises.mkdir((0, node_path_1.dirname)(filePath), { recursive: true });
132
+ let content;
133
+ switch (format) {
134
+ case FileFormat.JSON:
135
+ content = JSON.stringify(this.toJSON(), null, 2);
136
+ break;
137
+ case FileFormat.CSV:
138
+ content = this.toCSV();
139
+ break;
140
+ case FileFormat.TEXT:
141
+ content = this.toString();
142
+ break;
143
+ default:
144
+ throw new Error(`Unsupported format: ${format}`);
145
+ }
146
+ await node_fs_1.promises.writeFile(filePath, content, "utf8");
147
+ return {
148
+ success: true,
149
+ operation: FileOperationType.SAVE,
150
+ filePath,
151
+ };
152
+ }
153
+ catch (error) {
154
+ return {
155
+ success: false,
156
+ operation: FileOperationType.SAVE,
157
+ filePath,
158
+ error: error,
159
+ };
160
+ }
161
+ }
162
+ /**
163
+ * Load object from file
164
+ */
165
+ static async loadFromFile(filePath) {
166
+ try {
167
+ const content = await node_fs_1.promises.readFile(filePath, "utf8");
168
+ const format = (0, node_path_1.extname)(filePath);
169
+ switch (format) {
170
+ case FileFormat.JSON: {
171
+ const data = JSON.parse(content);
172
+ return this.fromJSON(data);
173
+ }
174
+ case FileFormat.CSV:
175
+ throw new Error("CSV loading not implemented yet");
176
+ case FileFormat.TEXT:
177
+ throw new Error("Text loading not implemented yet");
178
+ default:
179
+ throw new Error(`Unsupported format: ${format}`);
180
+ }
181
+ }
182
+ catch (error) {
183
+ throw new Error(`Failed to load from file ${filePath}: ${error}`);
184
+ }
185
+ }
186
+ /**
187
+ * Load multiple objects from directory
188
+ */
189
+ static async loadManyFromDirectory(directoryPath, pattern = "*.json") {
190
+ try {
191
+ const files = await node_fs_1.promises.readdir(directoryPath);
192
+ const jsonFiles = files.filter((file) => {
193
+ if (pattern === "*.json")
194
+ return file.endsWith(".json");
195
+ if (pattern === "*.csv")
196
+ return file.endsWith(".csv");
197
+ return true;
198
+ });
199
+ const objects = [];
200
+ for (const file of jsonFiles) {
201
+ try {
202
+ const object = await this.loadFromFile((0, node_path_1.join)(directoryPath, file));
203
+ objects.push(object);
204
+ }
205
+ catch (error) {
206
+ console.error(`Error loading ${file}:`, error);
207
+ }
208
+ }
209
+ return objects;
210
+ }
211
+ catch (error) {
212
+ throw new Error(`Failed to load from directory ${directoryPath}: ${error}`);
213
+ }
214
+ }
215
+ /**
216
+ * Delete file
217
+ */
218
+ async deleteFile(filePath) {
219
+ try {
220
+ await node_fs_1.promises.unlink(filePath);
221
+ return {
222
+ success: true,
223
+ operation: FileOperationType.DELETE,
224
+ filePath,
225
+ };
226
+ }
227
+ catch (error) {
228
+ return {
229
+ success: false,
230
+ operation: FileOperationType.DELETE,
231
+ filePath,
232
+ error: error,
233
+ };
234
+ }
235
+ }
236
+ /**
237
+ * Save multiple objects to directory
238
+ */
239
+ /* eslint-disable no-unused-vars */
240
+ static async saveManyToDirectory(objects, directoryPath, fileNameGenerator = (obj, i) => `object_${i}.json`) {
241
+ /* eslint-enable no-unused-vars */
242
+ const results = [];
243
+ // Ensure directory exists
244
+ await node_fs_1.promises.mkdir(directoryPath, { recursive: true });
245
+ for (let i = 0; i < objects.length; i++) {
246
+ const obj = objects[i];
247
+ const fileName = fileNameGenerator(obj, i);
248
+ const filePath = (0, node_path_1.join)(directoryPath, fileName);
249
+ const result = await obj.saveToFile(filePath);
250
+ results.push(result);
251
+ }
252
+ return results;
253
+ }
254
+ /**
255
+ * Convert to CSV format
256
+ */
257
+ toCSV(fieldMapping) {
258
+ const data = this.toJSON();
259
+ const fields = fieldMapping ? Object.keys(fieldMapping) : Object.keys(data);
260
+ // Header
261
+ const headers = fields.map((field) => fieldMapping ? fieldMapping[field] : field);
262
+ // Values
263
+ const values = fields.map((field) => {
264
+ const value = data[field];
265
+ if (value === null || value === undefined)
266
+ return "";
267
+ if (typeof value === "string" && value.includes(",")) {
268
+ return `"${value.replace(/"/g, '""')}"`;
269
+ }
270
+ return String(value);
271
+ });
272
+ return `${headers.join(",")}\n${values.join(",")}`;
273
+ }
274
+ /**
275
+ * Batch save with streaming for large datasets
276
+ */
277
+ static async saveManyToFileStream(objects, filePath, format = FileFormat.JSON) {
278
+ try {
279
+ // Ensure directory exists
280
+ await node_fs_1.promises.mkdir((0, node_path_1.dirname)(filePath), { recursive: true });
281
+ const writeStream = (0, node_fs_1.createWriteStream)(filePath);
282
+ if (format === FileFormat.JSON) {
283
+ writeStream.write("[\n");
284
+ for (let i = 0; i < objects.length; i++) {
285
+ const obj = objects[i];
286
+ const json = JSON.stringify(obj.toJSON(), null, 2);
287
+ if (i > 0)
288
+ writeStream.write(",\n");
289
+ writeStream.write(json);
290
+ }
291
+ writeStream.write("\n]");
292
+ }
293
+ else if (format === FileFormat.CSV) {
294
+ // Write CSV header
295
+ if (objects.length > 0) {
296
+ const headers = Object.keys(objects[0].toJSON()).join(",");
297
+ writeStream.write(headers + "\n");
298
+ for (const obj of objects) {
299
+ const csvLine = obj.toCSV();
300
+ const values = csvLine.split("\n")[1]; // Get only values, skip header
301
+ writeStream.write(values + "\n");
302
+ }
303
+ }
304
+ }
305
+ writeStream.end();
306
+ return new Promise((resolve, reject) => {
307
+ writeStream.on("finish", () => {
308
+ resolve({
309
+ success: true,
310
+ operation: FileOperationType.SAVE,
311
+ filePath,
312
+ });
313
+ });
314
+ writeStream.on("error", (error) => {
315
+ reject({
316
+ success: false,
317
+ operation: FileOperationType.SAVE,
318
+ filePath,
319
+ error,
320
+ });
321
+ });
322
+ });
323
+ }
324
+ catch (error) {
325
+ return {
326
+ success: false,
327
+ operation: FileOperationType.SAVE,
328
+ filePath,
329
+ error: error,
330
+ };
331
+ }
332
+ }
333
+ /**
334
+ * Load large datasets with streaming
335
+ */
336
+ /* eslint-disable no-unused-vars */
337
+ static async loadManyFromFileStream(filePath, callback) {
338
+ /* eslint-enable no-unused-vars */
339
+ const readStream = (0, node_fs_1.createReadStream)(filePath);
340
+ let buffer = "";
341
+ return new Promise((resolve, reject) => {
342
+ readStream.on("data", async (chunk) => {
343
+ buffer += chunk.toString();
344
+ // Simple JSON array parsing (for demo purposes)
345
+ if (buffer.includes("},{")) {
346
+ const objects = buffer.split("},{");
347
+ buffer = objects.pop() || ""; // Keep the last incomplete object
348
+ for (let objStr of objects) {
349
+ try {
350
+ // Fix JSON formatting
351
+ if (!objStr.startsWith("{"))
352
+ objStr = "{" + objStr;
353
+ if (!objStr.endsWith("}"))
354
+ objStr = objStr + "}";
355
+ const data = JSON.parse(objStr);
356
+ const object = this.fromJSON(data);
357
+ await callback(object);
358
+ }
359
+ catch (error) {
360
+ console.error("Error parsing object:", error);
361
+ }
362
+ }
363
+ }
364
+ });
365
+ readStream.on("end", () => {
366
+ resolve();
367
+ });
368
+ readStream.on("error", (error) => {
369
+ reject(error);
370
+ });
371
+ });
372
+ }
373
+ /**
374
+ * Create backup of object with timestamp
375
+ */
376
+ async createBackup(backupDirectory) {
377
+ const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
378
+ const className = this.constructor.name;
379
+ const backupFileName = `${className}_backup_${timestamp}.json`;
380
+ const backupPath = (0, node_path_1.join)(backupDirectory, backupFileName);
381
+ return this.saveToFile(backupPath, FileFormat.JSON);
382
+ }
383
+ };
384
+ __setFunctionName(_classThis, "ProtoObjectFS");
385
+ (() => {
386
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
387
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
388
+ ProtoObjectFS = _classThis = _classDescriptor.value;
389
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
390
+ __runInitializers(_classThis, _classExtraInitializers);
391
+ })();
392
+ return ProtoObjectFS = _classThis;
393
+ })();
394
+ exports.ProtoObjectFS = ProtoObjectFS;
395
+ //# sourceMappingURL=proto-object-fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proto-object-fs.js","sourceRoot":"","sources":["../../../src/classes/proto-object-fs.ts"],"names":[],"mappings":"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"}