@effect/platform-browser 4.0.0-beta.43 → 4.0.0-beta.45

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 (44) hide show
  1. package/dist/BrowserHttpClient.d.ts +3 -3
  2. package/dist/BrowserHttpClient.d.ts.map +1 -1
  3. package/dist/BrowserHttpClient.js +5 -5
  4. package/dist/BrowserHttpClient.js.map +1 -1
  5. package/dist/BrowserWorkerRunner.js +1 -1
  6. package/dist/BrowserWorkerRunner.js.map +1 -1
  7. package/dist/Clipboard.d.ts +5 -2
  8. package/dist/Clipboard.d.ts.map +1 -1
  9. package/dist/Clipboard.js +2 -2
  10. package/dist/Clipboard.js.map +1 -1
  11. package/dist/Geolocation.d.ts +2 -2
  12. package/dist/Geolocation.d.ts.map +1 -1
  13. package/dist/Geolocation.js +2 -2
  14. package/dist/Geolocation.js.map +1 -1
  15. package/dist/IndexedDb.d.ts +3 -3
  16. package/dist/IndexedDb.d.ts.map +1 -1
  17. package/dist/IndexedDb.js +2 -2
  18. package/dist/IndexedDb.js.map +1 -1
  19. package/dist/IndexedDbDatabase.d.ts +8 -3
  20. package/dist/IndexedDbDatabase.d.ts.map +1 -1
  21. package/dist/IndexedDbDatabase.js +38 -16
  22. package/dist/IndexedDbDatabase.js.map +1 -1
  23. package/dist/IndexedDbQueryBuilder.d.ts +115 -57
  24. package/dist/IndexedDbQueryBuilder.d.ts.map +1 -1
  25. package/dist/IndexedDbQueryBuilder.js +114 -107
  26. package/dist/IndexedDbQueryBuilder.js.map +1 -1
  27. package/dist/IndexedDbTable.d.ts +2 -3
  28. package/dist/IndexedDbTable.d.ts.map +1 -1
  29. package/dist/IndexedDbTable.js +5 -3
  30. package/dist/IndexedDbTable.js.map +1 -1
  31. package/dist/Permissions.d.ts +5 -2
  32. package/dist/Permissions.d.ts.map +1 -1
  33. package/dist/Permissions.js +2 -2
  34. package/dist/Permissions.js.map +1 -1
  35. package/package.json +3 -3
  36. package/src/BrowserHttpClient.ts +6 -6
  37. package/src/BrowserWorkerRunner.ts +1 -1
  38. package/src/Clipboard.ts +2 -2
  39. package/src/Geolocation.ts +2 -2
  40. package/src/IndexedDb.ts +2 -2
  41. package/src/IndexedDbDatabase.ts +174 -141
  42. package/src/IndexedDbQueryBuilder.ts +322 -327
  43. package/src/IndexedDbTable.ts +8 -10
  44. package/src/Permissions.ts +2 -2
@@ -34,6 +34,7 @@ export interface IndexedDbTable<
34
34
  readonly keyPath: KeyPath
35
35
  readonly indexes: Indexes
36
36
  readonly autoIncrement: AutoIncrement
37
+ readonly durability: IDBTransactionDurability
37
38
  }
38
39
 
39
40
  /**
@@ -42,14 +43,6 @@ export interface IndexedDbTable<
42
43
  */
43
44
  export type AnySchemaStruct = Schema.Top & {
44
45
  readonly fields: Schema.Struct.Fields
45
- mapFields<To extends Schema.Struct.Fields>(
46
- f: (fields: Schema.Struct.Fields) => To,
47
- options?:
48
- | {
49
- readonly unsafePreserveChecks?: boolean | undefined
50
- }
51
- | undefined
52
- ): Schema.Struct<To>
53
46
  }
54
47
 
55
48
  /**
@@ -167,6 +160,7 @@ export const make = <
167
160
  KeyPath
168
161
  > extends true ? AutoIncrement | undefined
169
162
  : never
163
+ readonly durability?: IDBTransactionDurability | undefined
170
164
  }): IndexedDbTable<
171
165
  Name,
172
166
  TableSchema,
@@ -178,18 +172,22 @@ export const make = <
178
172
  class Table {}
179
173
  Object.assign(Table, Proto)
180
174
  const readSchema = options.keyPath === undefined
181
- ? (options.schema as Schema.Struct<{}>).mapFields(Struct.assign({ key: IndexedDb.IDBValidKey }))
175
+ ? Schema.Struct({
176
+ ...(options.schema as Schema.Struct<{}>).fields,
177
+ key: IndexedDb.IDBValidKey
178
+ })
182
179
  : options.schema
183
180
  ;(Table as any).tableName = options.name
184
181
  ;(Table as any).tableSchema = options.schema
185
182
  ;(Table as any).readSchema = readSchema
186
183
  ;(Table as any).arraySchema = Schema.Array(readSchema as any)
187
184
  ;(Table as any).autoincrementSchema = options.autoIncrement
188
- ? (options.schema as Schema.Struct<{}>).mapFields(Struct.omit([options.keyPath!] as any))
185
+ ? Schema.Struct(Struct.omit((options.schema as Schema.Struct<{}>).fields, [options.keyPath!] as any))
189
186
  : options.schema
190
187
  ;(Table as any).keyPath = options.keyPath
191
188
  ;(Table as any).indexes = options.indexes
192
189
  ;(Table as any).autoIncrement = options.autoIncrement === true
190
+ ;(Table as any).durability = options.durability ?? "relaxed"
193
191
  return Table as any
194
192
  }
195
193
 
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
+ import * as Context from "effect/Context"
4
5
  import * as Data from "effect/Data"
5
6
  import * as Effect from "effect/Effect"
6
7
  import * as Layer from "effect/Layer"
7
- import * as ServiceMap from "effect/ServiceMap"
8
8
 
9
9
  const TypeId = "~@effect/platform-browser/Permissions"
10
10
  const ErrorTypeId = "~@effect/platform-browser/Permissions/PermissionsError"
@@ -87,7 +87,7 @@ export class PermissionsError extends Data.TaggedError("PermissionsError")<{
87
87
  * @since 1.0.0
88
88
  * @category Service
89
89
  */
90
- export const Permissions: ServiceMap.Service<Permissions, Permissions> = ServiceMap.Service<Permissions>(TypeId)
90
+ export const Permissions: Context.Service<Permissions, Permissions> = Context.Service<Permissions>(TypeId)
91
91
 
92
92
  /**
93
93
  * A layer that directly interfaces with the `navigator.permissions` api