(storage_id, relative_path_obj, data_obj)
| 102 | } |
| 103 | |
| 104 | function ply_storage_save_bytes(storage_id, relative_path_obj, data_obj) { |
| 105 | var op_id = ply_storage_next_op_id(); |
| 106 | var relative_path = consume_js_object(relative_path_obj); |
| 107 | var data = consume_js_object(data_obj); |
| 108 | |
| 109 | (async function () { |
| 110 | try { |
| 111 | var root_handle = ply_storage_get_root(storage_id); |
| 112 | var parent = await ply_storage_resolve_parent_dir(root_handle, relative_path, true); |
| 113 | var file_handle = await parent.dir.getFileHandle(parent.file_name, { create: true }); |
| 114 | var writable = await file_handle.createWritable(); |
| 115 | await writable.write(data); |
| 116 | await writable.close(); |
| 117 | ply_storage_finish_ok(op_id); |
| 118 | } catch (error) { |
| 119 | ply_storage_finish_err(op_id, error); |
| 120 | } |
| 121 | }()); |
| 122 | |
| 123 | return op_id; |
| 124 | } |
| 125 | |
| 126 | function ply_storage_load_bytes(storage_id, relative_path_obj) { |
| 127 | var op_id = ply_storage_next_op_id(); |
no test coverage detected