@rebasepro/common 0.23.0 → 0.24.1-canary.g56af4a4

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 (141) hide show
  1. package/dist/collections/CollectionRegistry.d.ts +72 -3
  2. package/dist/collections/CollectionRegistry.es.js +404 -0
  3. package/dist/collections/CollectionRegistry.es.js.map +1 -0
  4. package/dist/collections/auth-secrets.es.js +47 -0
  5. package/dist/collections/auth-secrets.es.js.map +1 -0
  6. package/dist/collections/default-collections.es.js +120 -0
  7. package/dist/collections/default-collections.es.js.map +1 -0
  8. package/dist/collections/engine-support.es.js +35 -0
  9. package/dist/collections/engine-support.es.js.map +1 -0
  10. package/dist/collections/field-access.d.ts +13 -0
  11. package/dist/collections/field-access.es.js +142 -0
  12. package/dist/collections/field-access.es.js.map +1 -0
  13. package/dist/collections/index.d.ts +1 -0
  14. package/dist/collections/soft-delete.es.js +34 -0
  15. package/dist/collections/soft-delete.es.js.map +1 -0
  16. package/dist/collections/unknown-field.d.ts +65 -0
  17. package/dist/collections/unknown-field.es.js +135 -0
  18. package/dist/collections/unknown-field.es.js.map +1 -0
  19. package/dist/data/buildRebaseData.d.ts +27 -2
  20. package/dist/data/buildRebaseData.es.js +1026 -0
  21. package/dist/data/buildRebaseData.es.js.map +1 -0
  22. package/dist/data/buildRoutedRebaseData.d.ts +6 -1
  23. package/dist/data/buildRoutedRebaseData.es.js +47 -0
  24. package/dist/data/buildRoutedRebaseData.es.js.map +1 -0
  25. package/dist/data/collection-accessor.d.ts +54 -0
  26. package/dist/data/collection-accessor.es.js +101 -0
  27. package/dist/data/collection-accessor.es.js.map +1 -0
  28. package/dist/data/cursor.d.ts +1 -1
  29. package/dist/data/cursor.es.js +166 -0
  30. package/dist/data/cursor.es.js.map +1 -0
  31. package/dist/data/filter-conditions.es.js +24 -0
  32. package/dist/data/filter-conditions.es.js.map +1 -0
  33. package/dist/data/filter-dialect.d.ts +3 -3
  34. package/dist/data/filter-dialect.es.js +786 -0
  35. package/dist/data/filter-dialect.es.js.map +1 -0
  36. package/dist/data/include-spec.d.ts +2 -0
  37. package/dist/data/include-spec.es.js +273 -0
  38. package/dist/data/include-spec.es.js.map +1 -0
  39. package/dist/data/paginate.d.ts +8 -1
  40. package/dist/data/paginate.es.js +181 -0
  41. package/dist/data/paginate.es.js.map +1 -0
  42. package/dist/data/query_builder.d.ts +52 -4
  43. package/dist/data/query_builder.es.js +151 -0
  44. package/dist/data/query_builder.es.js.map +1 -0
  45. package/dist/data/resolveDataSource.es.js +87 -0
  46. package/dist/data/resolveDataSource.es.js.map +1 -0
  47. package/dist/data/row-etag.d.ts +46 -0
  48. package/dist/data/row-etag.es.js +64 -0
  49. package/dist/data/row-etag.es.js.map +1 -0
  50. package/dist/data/sort-dialect.es.js +236 -0
  51. package/dist/data/sort-dialect.es.js.map +1 -0
  52. package/dist/index.d.ts +2 -0
  53. package/dist/index.es.js +56 -7235
  54. package/dist/table-classification.es.js +107 -0
  55. package/dist/table-classification.es.js.map +1 -0
  56. package/dist/util/auth-default-policies.es.js +184 -0
  57. package/dist/util/auth-default-policies.es.js.map +1 -0
  58. package/dist/util/builders.es.js +15 -0
  59. package/dist/util/builders.es.js.map +1 -0
  60. package/dist/util/callback-errors.es.js +164 -0
  61. package/dist/util/callback-errors.es.js.map +1 -0
  62. package/dist/util/callbacks.es.js +72 -0
  63. package/dist/util/callbacks.es.js.map +1 -0
  64. package/dist/util/collections.es.js +79 -0
  65. package/dist/util/collections.es.js.map +1 -0
  66. package/dist/util/common.es.js +7 -0
  67. package/dist/util/common.es.js.map +1 -0
  68. package/dist/util/conditions.es.js +100 -0
  69. package/dist/util/conditions.es.js.map +1 -0
  70. package/dist/util/copy.d.ts +33 -0
  71. package/dist/util/copy.es.js +74 -0
  72. package/dist/util/copy.es.js.map +1 -0
  73. package/dist/util/download-url-cache.d.ts +122 -0
  74. package/dist/util/download-url-cache.es.js +187 -0
  75. package/dist/util/download-url-cache.es.js.map +1 -0
  76. package/dist/util/email.es.js +36 -0
  77. package/dist/util/email.es.js.map +1 -0
  78. package/dist/util/entities.d.ts +27 -2
  79. package/dist/util/entities.es.js +328 -0
  80. package/dist/util/entities.es.js.map +1 -0
  81. package/dist/util/enums.d.ts +10 -1
  82. package/dist/util/enums.es.js +37 -0
  83. package/dist/util/enums.es.js.map +1 -0
  84. package/dist/util/identity.es.js +138 -0
  85. package/dist/util/identity.es.js.map +1 -0
  86. package/dist/util/index.d.ts +6 -0
  87. package/dist/util/internal-tables.d.ts +10 -0
  88. package/dist/util/internal-tables.es.js +202 -0
  89. package/dist/util/internal-tables.es.js.map +1 -0
  90. package/dist/util/junction-policies.es.js +273 -0
  91. package/dist/util/junction-policies.es.js.map +1 -0
  92. package/dist/util/paths.es.js +26 -0
  93. package/dist/util/paths.es.js.map +1 -0
  94. package/dist/util/permissions.es.js +108 -0
  95. package/dist/util/permissions.es.js.map +1 -0
  96. package/dist/util/pg-column-to-property.es.js +303 -0
  97. package/dist/util/pg-column-to-property.es.js.map +1 -0
  98. package/dist/util/policy/compileRulePolicies.d.ts +32 -0
  99. package/dist/util/policy/compileRulePolicies.es.js +43 -0
  100. package/dist/util/policy/compileRulePolicies.es.js.map +1 -0
  101. package/dist/util/policy/evaluatePolicy.es.js +104 -0
  102. package/dist/util/policy/evaluatePolicy.es.js.map +1 -0
  103. package/dist/util/policy/index.d.ts +1 -0
  104. package/dist/util/policy/policyToPostgres.d.ts +24 -0
  105. package/dist/util/policy/policyToPostgres.es.js +593 -0
  106. package/dist/util/policy/policyToPostgres.es.js.map +1 -0
  107. package/dist/util/policy/policyToSecurityRule.es.js +79 -0
  108. package/dist/util/policy/policyToSecurityRule.es.js.map +1 -0
  109. package/dist/util/policy/securityRuleToConditions.es.js +48 -0
  110. package/dist/util/policy/securityRuleToConditions.es.js.map +1 -0
  111. package/dist/util/policy/sqlToPolicy.es.js +326 -0
  112. package/dist/util/policy/sqlToPolicy.es.js.map +1 -0
  113. package/dist/util/relations.es.js +243 -0
  114. package/dist/util/relations.es.js.map +1 -0
  115. package/dist/util/resolutions.es.js +318 -0
  116. package/dist/util/resolutions.es.js.map +1 -0
  117. package/dist/util/resolve-relation.es.js +163 -0
  118. package/dist/util/resolve-relation.es.js.map +1 -0
  119. package/dist/util/resumable-upload-threshold.d.ts +15 -0
  120. package/dist/util/resumable-upload-threshold.es.js +20 -0
  121. package/dist/util/resumable-upload-threshold.es.js.map +1 -0
  122. package/dist/util/resumable-upload.d.ts +51 -0
  123. package/dist/util/resumable-upload.es.js +121 -0
  124. package/dist/util/resumable-upload.es.js.map +1 -0
  125. package/dist/util/sql-redaction.d.ts +21 -0
  126. package/dist/util/sql-redaction.es.js +107 -0
  127. package/dist/util/sql-redaction.es.js.map +1 -0
  128. package/dist/util/sql-rows.es.js +41 -0
  129. package/dist/util/sql-rows.es.js.map +1 -0
  130. package/dist/util/storage.d.ts +26 -4
  131. package/dist/util/storage.es.js +117 -0
  132. package/dist/util/storage.es.js.map +1 -0
  133. package/dist/util/string-column-length.es.js +31 -0
  134. package/dist/util/string-column-length.es.js.map +1 -0
  135. package/dist/util/tenant.es.js +201 -0
  136. package/dist/util/tenant.es.js.map +1 -0
  137. package/dist/util/untrusted-envelope.d.ts +25 -0
  138. package/dist/util/untrusted-envelope.es.js +40 -0
  139. package/dist/util/untrusted-envelope.es.js.map +1 -0
  140. package/package.json +5 -3
  141. package/dist/index.es.js.map +0 -1
@@ -22,6 +22,28 @@ export interface EntityDataOptions {
22
22
  relations?: unknown[];
23
23
  slug?: string;
24
24
  } | undefined;
25
+ /**
26
+ * Translate the path a collection is addressed by into the path its driver
27
+ * stores it under.
28
+ *
29
+ * The admin addresses every collection by its slug, and a Firestore or
30
+ * MongoDB collection may declare a `path` of its own: `fs_diagnosis` stored
31
+ * at `diagnosis`, and `fs_diagnosis/abc/locales` at `diagnosis/abc/locales`.
32
+ * Only the driver is handed the stored path. Rows keep the address they
33
+ * were asked for by, because that is what the admin resolves their
34
+ * collection, routes and deletes by.
35
+ *
36
+ * Late-bound, like `resolveCollection`. Absent, or answering `undefined`,
37
+ * the address is the stored path.
38
+ */
39
+ resolveDataPath?: (path: string) => string | undefined;
40
+ /**
41
+ * The slug a property of the proxy names (`data.myNotes`). Absent, a
42
+ * property is its snake_case (`my_notes`). The server passes
43
+ * `createAccessorSlugResolver` over its collection registry, so a
44
+ * collection is reachable under the accessor its generated type has.
45
+ */
46
+ resolveAccessor?: (property: string) => string;
25
47
  }
26
48
  export declare function buildRebaseData(driver: DataDriver, options?: EntityDataOptions): RebaseData;
27
49
  /**
@@ -51,7 +73,7 @@ export declare function wrapAsEntityData(sdkData: Pick<RebaseSdkData, "collectio
51
73
  * — e.g. the admin routes its Entity data via `useData()` and exposes the
52
74
  * same routing as flat `context.data` for callbacks by wrapping it here.
53
75
  */
54
- export declare function wrapAsSdkData(entityData: RebaseData): RebaseSdkData;
76
+ export declare function wrapAsSdkData(entityData: RebaseData, options?: Pick<EntityDataOptions, "resolveAccessor">): RebaseSdkData;
55
77
  /**
56
78
  * Build a flat {@link RebaseSdkData} from a `DataDriver`.
57
79
  *
@@ -63,5 +85,8 @@ export declare function wrapAsSdkData(entityData: RebaseData): RebaseSdkData;
63
85
  * the admin's view-model and never reaches here.
64
86
  *
65
87
  * The admin uses {@link buildRebaseData} (Entity) over its own driver.
88
+ *
89
+ * `options.resolveAccessor` names the slug a property is (see
90
+ * `createAccessorSlugResolver`); absent, `data.myNotes` is `my_notes`.
66
91
  */
67
- export declare function buildSdkData(driver: DataDriver): RebaseSdkData;
92
+ export declare function buildSdkData(driver: DataDriver, options?: Pick<EntityDataOptions, "resolveAccessor">): RebaseSdkData;