typeorm 0.3.21-dev.83567f5 → 0.3.21-dev.9d15cbd

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 (233) hide show
  1. package/README.md +7 -4
  2. package/browser/cache/QueryResultCache.d.ts +4 -2
  3. package/browser/cache/QueryResultCache.js.map +1 -1
  4. package/browser/connection/ConnectionOptionsReader.d.ts +4 -4
  5. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +0 -1
  6. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +2 -2
  7. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  8. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +4 -0
  9. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  10. package/browser/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +0 -1
  11. package/browser/driver/cockroachdb/CockroachQueryRunner.d.ts +0 -1
  12. package/browser/driver/cockroachdb/CockroachQueryRunner.js +5 -3
  13. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  14. package/browser/driver/mongodb/MongoConnectionOptions.d.ts +0 -1
  15. package/browser/driver/mongodb/MongoQueryRunner.d.ts +0 -1
  16. package/browser/driver/mongodb/typings.d.ts +0 -8
  17. package/browser/driver/mongodb/typings.js +0 -1
  18. package/browser/driver/mongodb/typings.js.map +1 -1
  19. package/browser/driver/mysql/MysqlQueryRunner.d.ts +0 -1
  20. package/browser/driver/oracle/OracleQueryRunner.d.ts +0 -1
  21. package/browser/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +0 -1
  22. package/browser/driver/postgres/PostgresQueryRunner.d.ts +0 -1
  23. package/browser/driver/postgres/PostgresQueryRunner.js +5 -1
  24. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  25. package/browser/driver/sap/SapQueryRunner.d.ts +0 -1
  26. package/browser/driver/spanner/SpannerQueryRunner.d.ts +0 -1
  27. package/browser/driver/sqlite/SqliteDriver.js +2 -2
  28. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  29. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +0 -1
  30. package/browser/driver/sqlserver/SqlServerQueryRunner.d.ts +0 -1
  31. package/browser/find-options/FindOptionsOrder.d.ts +0 -1
  32. package/browser/find-options/FindOptionsRelations.d.ts +0 -1
  33. package/browser/find-options/FindOptionsSelect.d.ts +0 -1
  34. package/browser/find-options/FindOptionsWhere.d.ts +0 -1
  35. package/browser/platform/PlatformTools.d.ts +0 -4
  36. package/browser/platform/PlatformTools.js +3 -9
  37. package/browser/platform/PlatformTools.js.map +1 -1
  38. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  39. package/browser/query-builder/QueryBuilder.js.map +1 -1
  40. package/browser/query-builder/SelectQueryBuilder.d.ts +0 -1
  41. package/browser/query-runner/QueryRunner.d.ts +0 -1
  42. package/browser/schema-builder/RdbmsSchemaBuilder.js +1 -1
  43. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  44. package/browser/util/ImportUtils.js +22 -34
  45. package/browser/util/ImportUtils.js.map +1 -1
  46. package/cache/QueryResultCache.d.ts +4 -2
  47. package/cache/QueryResultCache.js.map +1 -1
  48. package/commands/CommandUtils.d.ts +1 -1
  49. package/commands/CommandUtils.js +18 -16
  50. package/commands/CommandUtils.js.map +1 -1
  51. package/commands/InitCommand.js +1 -1
  52. package/commands/InitCommand.js.map +1 -1
  53. package/connection/ConnectionOptionsReader.d.ts +4 -4
  54. package/container.js +2 -3
  55. package/container.js.map +1 -1
  56. package/decorator/Check.js +1 -2
  57. package/decorator/Check.js.map +1 -1
  58. package/decorator/EntityRepository.js +1 -2
  59. package/decorator/EntityRepository.js.map +1 -1
  60. package/decorator/Exclusion.js +1 -2
  61. package/decorator/Exclusion.js.map +1 -1
  62. package/decorator/Generated.js +1 -2
  63. package/decorator/Generated.js.map +1 -1
  64. package/decorator/Index.js +1 -2
  65. package/decorator/Index.js.map +1 -1
  66. package/decorator/Unique.js +1 -2
  67. package/decorator/Unique.js.map +1 -1
  68. package/decorator/columns/Column.js +1 -2
  69. package/decorator/columns/Column.js.map +1 -1
  70. package/decorator/columns/CreateDateColumn.js +1 -2
  71. package/decorator/columns/CreateDateColumn.js.map +1 -1
  72. package/decorator/columns/DeleteDateColumn.js +1 -2
  73. package/decorator/columns/DeleteDateColumn.js.map +1 -1
  74. package/decorator/columns/ObjectIdColumn.js +1 -2
  75. package/decorator/columns/ObjectIdColumn.js.map +1 -1
  76. package/decorator/columns/PrimaryColumn.js +1 -2
  77. package/decorator/columns/PrimaryColumn.js.map +1 -1
  78. package/decorator/columns/PrimaryGeneratedColumn.js +1 -2
  79. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  80. package/decorator/columns/UpdateDateColumn.js +1 -2
  81. package/decorator/columns/UpdateDateColumn.js.map +1 -1
  82. package/decorator/columns/VersionColumn.js +1 -2
  83. package/decorator/columns/VersionColumn.js.map +1 -1
  84. package/decorator/columns/ViewColumn.js +1 -2
  85. package/decorator/columns/ViewColumn.js.map +1 -1
  86. package/decorator/columns/VirtualColumn.js +1 -2
  87. package/decorator/columns/VirtualColumn.js.map +1 -1
  88. package/decorator/entity/ChildEntity.js +1 -2
  89. package/decorator/entity/ChildEntity.js.map +1 -1
  90. package/decorator/entity/Entity.js +1 -2
  91. package/decorator/entity/Entity.js.map +1 -1
  92. package/decorator/entity/TableInheritance.js +1 -2
  93. package/decorator/entity/TableInheritance.js.map +1 -1
  94. package/decorator/entity-view/ViewEntity.js +1 -2
  95. package/decorator/entity-view/ViewEntity.js.map +1 -1
  96. package/decorator/listeners/AfterInsert.js +1 -2
  97. package/decorator/listeners/AfterInsert.js.map +1 -1
  98. package/decorator/listeners/AfterLoad.js +1 -2
  99. package/decorator/listeners/AfterLoad.js.map +1 -1
  100. package/decorator/listeners/AfterRecover.js +1 -2
  101. package/decorator/listeners/AfterRecover.js.map +1 -1
  102. package/decorator/listeners/AfterRemove.js +1 -2
  103. package/decorator/listeners/AfterRemove.js.map +1 -1
  104. package/decorator/listeners/AfterSoftRemove.js +1 -2
  105. package/decorator/listeners/AfterSoftRemove.js.map +1 -1
  106. package/decorator/listeners/AfterUpdate.js +1 -2
  107. package/decorator/listeners/AfterUpdate.js.map +1 -1
  108. package/decorator/listeners/BeforeInsert.js +1 -2
  109. package/decorator/listeners/BeforeInsert.js.map +1 -1
  110. package/decorator/listeners/BeforeRecover.js +1 -2
  111. package/decorator/listeners/BeforeRecover.js.map +1 -1
  112. package/decorator/listeners/BeforeRemove.js +1 -2
  113. package/decorator/listeners/BeforeRemove.js.map +1 -1
  114. package/decorator/listeners/BeforeSoftRemove.js +1 -2
  115. package/decorator/listeners/BeforeSoftRemove.js.map +1 -1
  116. package/decorator/listeners/BeforeUpdate.js +1 -2
  117. package/decorator/listeners/BeforeUpdate.js.map +1 -1
  118. package/decorator/listeners/EventSubscriber.js +1 -2
  119. package/decorator/listeners/EventSubscriber.js.map +1 -1
  120. package/decorator/relations/JoinColumn.js +1 -2
  121. package/decorator/relations/JoinColumn.js.map +1 -1
  122. package/decorator/relations/JoinTable.js +1 -2
  123. package/decorator/relations/JoinTable.js.map +1 -1
  124. package/decorator/relations/ManyToMany.js +1 -2
  125. package/decorator/relations/ManyToMany.js.map +1 -1
  126. package/decorator/relations/ManyToOne.js +1 -2
  127. package/decorator/relations/ManyToOne.js.map +1 -1
  128. package/decorator/relations/OneToMany.js +1 -2
  129. package/decorator/relations/OneToMany.js.map +1 -1
  130. package/decorator/relations/OneToOne.js +1 -2
  131. package/decorator/relations/OneToOne.js.map +1 -1
  132. package/decorator/relations/RelationCount.js +1 -2
  133. package/decorator/relations/RelationCount.js.map +1 -1
  134. package/decorator/relations/RelationId.js +1 -2
  135. package/decorator/relations/RelationId.js.map +1 -1
  136. package/decorator/tree/Tree.js +1 -2
  137. package/decorator/tree/Tree.js.map +1 -1
  138. package/decorator/tree/TreeChildren.js +1 -2
  139. package/decorator/tree/TreeChildren.js.map +1 -1
  140. package/decorator/tree/TreeLevelColumn.js +1 -2
  141. package/decorator/tree/TreeLevelColumn.js.map +1 -1
  142. package/decorator/tree/TreeParent.js +1 -2
  143. package/decorator/tree/TreeParent.js.map +1 -1
  144. package/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +0 -1
  145. package/driver/better-sqlite3/BetterSqlite3Driver.js +2 -2
  146. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  147. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +4 -0
  148. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  149. package/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +0 -1
  150. package/driver/cockroachdb/CockroachQueryRunner.d.ts +0 -1
  151. package/driver/cockroachdb/CockroachQueryRunner.js +5 -3
  152. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  153. package/driver/mongodb/MongoConnectionOptions.d.ts +0 -1
  154. package/driver/mongodb/MongoQueryRunner.d.ts +0 -1
  155. package/driver/mongodb/typings.d.ts +0 -8
  156. package/driver/mongodb/typings.js +0 -1
  157. package/driver/mongodb/typings.js.map +1 -1
  158. package/driver/mysql/MysqlQueryRunner.d.ts +0 -1
  159. package/driver/oracle/OracleQueryRunner.d.ts +0 -1
  160. package/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +0 -1
  161. package/driver/postgres/PostgresQueryRunner.d.ts +0 -1
  162. package/driver/postgres/PostgresQueryRunner.js +5 -1
  163. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  164. package/driver/sap/SapQueryRunner.d.ts +0 -1
  165. package/driver/spanner/SpannerQueryRunner.d.ts +0 -1
  166. package/driver/sqlite/SqliteDriver.js +2 -2
  167. package/driver/sqlite/SqliteDriver.js.map +1 -1
  168. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +0 -1
  169. package/driver/sqlserver/SqlServerQueryRunner.d.ts +0 -1
  170. package/find-options/FindOptionsOrder.d.ts +0 -1
  171. package/find-options/FindOptionsRelations.d.ts +0 -1
  172. package/find-options/FindOptionsSelect.d.ts +0 -1
  173. package/find-options/FindOptionsWhere.d.ts +0 -1
  174. package/find-options/operator/And.js +1 -2
  175. package/find-options/operator/And.js.map +1 -1
  176. package/find-options/operator/Any.js +1 -2
  177. package/find-options/operator/Any.js.map +1 -1
  178. package/find-options/operator/ArrayContainedBy.js +1 -2
  179. package/find-options/operator/ArrayContainedBy.js.map +1 -1
  180. package/find-options/operator/ArrayContains.js +1 -2
  181. package/find-options/operator/ArrayContains.js.map +1 -1
  182. package/find-options/operator/ArrayOverlap.js +1 -2
  183. package/find-options/operator/ArrayOverlap.js.map +1 -1
  184. package/find-options/operator/Between.js +1 -2
  185. package/find-options/operator/Between.js.map +1 -1
  186. package/find-options/operator/Equal.js +1 -2
  187. package/find-options/operator/Equal.js.map +1 -1
  188. package/find-options/operator/ILike.js +1 -2
  189. package/find-options/operator/ILike.js.map +1 -1
  190. package/find-options/operator/In.js +1 -2
  191. package/find-options/operator/In.js.map +1 -1
  192. package/find-options/operator/IsNull.js +1 -2
  193. package/find-options/operator/IsNull.js.map +1 -1
  194. package/find-options/operator/JsonContains.js +1 -2
  195. package/find-options/operator/JsonContains.js.map +1 -1
  196. package/find-options/operator/LessThan.js +1 -2
  197. package/find-options/operator/LessThan.js.map +1 -1
  198. package/find-options/operator/LessThanOrEqual.js +1 -2
  199. package/find-options/operator/LessThanOrEqual.js.map +1 -1
  200. package/find-options/operator/Like.js +1 -2
  201. package/find-options/operator/Like.js.map +1 -1
  202. package/find-options/operator/MoreThan.js +1 -2
  203. package/find-options/operator/MoreThan.js.map +1 -1
  204. package/find-options/operator/MoreThanOrEqual.js +1 -2
  205. package/find-options/operator/MoreThanOrEqual.js.map +1 -1
  206. package/find-options/operator/Not.js +1 -2
  207. package/find-options/operator/Not.js.map +1 -1
  208. package/find-options/operator/Or.js +1 -2
  209. package/find-options/operator/Or.js.map +1 -1
  210. package/find-options/operator/Raw.js +1 -2
  211. package/find-options/operator/Raw.js.map +1 -1
  212. package/globals.js +14 -15
  213. package/globals.js.map +1 -1
  214. package/package.json +1 -1
  215. package/platform/PlatformTools.d.ts +0 -4
  216. package/platform/PlatformTools.js +12 -18
  217. package/platform/PlatformTools.js.map +1 -1
  218. package/query-builder/InsertQueryBuilder.js.map +1 -1
  219. package/query-builder/QueryBuilder.js.map +1 -1
  220. package/query-builder/SelectQueryBuilder.d.ts +0 -1
  221. package/query-builder/index.js +1 -2
  222. package/query-builder/index.js.map +1 -1
  223. package/query-runner/QueryRunner.d.ts +0 -1
  224. package/schema-builder/RdbmsSchemaBuilder.js +1 -1
  225. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  226. package/util/DirectoryExportedClassesLoader.js +2 -3
  227. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  228. package/util/ImportUtils.js +23 -36
  229. package/util/ImportUtils.js.map +1 -1
  230. package/util/PathUtils.js +3 -4
  231. package/util/PathUtils.js.map +1 -1
  232. package/util/StringUtils.js +6 -7
  233. package/util/StringUtils.js.map +1 -1
package/util/PathUtils.js CHANGED
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isAbsolute = exports.filepathToName = exports.toPortablePath = void 0;
3
+ exports.toPortablePath = toPortablePath;
4
+ exports.filepathToName = filepathToName;
5
+ exports.isAbsolute = isAbsolute;
4
6
  const StringUtils_1 = require("./StringUtils");
5
7
  const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/;
6
8
  const UNC_WINDOWS_PATH_REGEXP = /^\\\\(\.\\)?(.*)$/;
@@ -13,7 +15,6 @@ function toPortablePath(filepath) {
13
15
  filepath = filepath.replace(UNC_WINDOWS_PATH_REGEXP, (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`);
14
16
  return filepath.replace(/\\/g, `/`);
15
17
  }
16
- exports.toPortablePath = toPortablePath;
17
18
  /**
18
19
  * Create deterministic valid database name (class, database) of fixed length from any filepath. Equivalent paths for windows/posix systems should
19
20
  * be equivalent to enable portability
@@ -22,13 +23,11 @@ function filepathToName(filepath) {
22
23
  const uniq = toPortablePath(filepath).toLowerCase();
23
24
  return (0, StringUtils_1.hash)(uniq, { length: 63 });
24
25
  }
25
- exports.filepathToName = filepathToName;
26
26
  /**
27
27
  * Cross platform isAbsolute
28
28
  */
29
29
  function isAbsolute(filepath) {
30
30
  return !!filepath.match(/^(?:[a-z]:|[\\]|[/])/i);
31
31
  }
32
- exports.isAbsolute = isAbsolute;
33
32
 
34
33
  //# sourceMappingURL=PathUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/PathUtils.ts"],"names":[],"mappings":";;;AAAA,+CAAoC;AAEpC,MAAM,mBAAmB,GAAG,iBAAiB,CAAA;AAC7C,MAAM,uBAAuB,GAAG,mBAAmB,CAAA;AAEnD,SAAgB,cAAc,CAAC,QAAgB;IAC3C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAA;IAEjD,IAAI,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC;QACnC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAA;SACtD,IAAI,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC;QAC5C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACvB,uBAAuB,EACvB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtD,CAAA;IAEL,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAZD,wCAYC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,QAAgB;IAC3C,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;IACnD,OAAO,IAAA,kBAAI,EAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;AACrC,CAAC;AAHD,wCAGC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,QAAgB;IACvC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;AACpD,CAAC;AAFD,gCAEC","file":"PathUtils.js","sourcesContent":["import { hash } from \"./StringUtils\"\n\nconst WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/\nconst UNC_WINDOWS_PATH_REGEXP = /^\\\\\\\\(\\.\\\\)?(.*)$/\n\nexport function toPortablePath(filepath: string): string {\n if (process.platform !== `win32`) return filepath\n\n if (filepath.match(WINDOWS_PATH_REGEXP))\n filepath = filepath.replace(WINDOWS_PATH_REGEXP, `/$1`)\n else if (filepath.match(UNC_WINDOWS_PATH_REGEXP))\n filepath = filepath.replace(\n UNC_WINDOWS_PATH_REGEXP,\n (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`,\n )\n\n return filepath.replace(/\\\\/g, `/`)\n}\n\n/**\n * Create deterministic valid database name (class, database) of fixed length from any filepath. Equivalent paths for windows/posix systems should\n * be equivalent to enable portability\n */\nexport function filepathToName(filepath: string): string {\n const uniq = toPortablePath(filepath).toLowerCase()\n return hash(uniq, { length: 63 })\n}\n\n/**\n * Cross platform isAbsolute\n */\nexport function isAbsolute(filepath: string): boolean {\n return !!filepath.match(/^(?:[a-z]:|[\\\\]|[/])/i)\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/PathUtils.ts"],"names":[],"mappings":";;AAKA,wCAYC;AAMD,wCAGC;AAKD,gCAEC;AAjCD,+CAAoC;AAEpC,MAAM,mBAAmB,GAAG,iBAAiB,CAAA;AAC7C,MAAM,uBAAuB,GAAG,mBAAmB,CAAA;AAEnD,SAAgB,cAAc,CAAC,QAAgB;IAC3C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAA;IAEjD,IAAI,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC;QACnC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAA;SACtD,IAAI,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC;QAC5C,QAAQ,GAAG,QAAQ,CAAC,OAAO,CACvB,uBAAuB,EACvB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtD,CAAA;IAEL,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED;;;GAGG;AACH,SAAgB,cAAc,CAAC,QAAgB;IAC3C,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;IACnD,OAAO,IAAA,kBAAI,EAAC,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;AACrC,CAAC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,QAAgB;IACvC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;AACpD,CAAC","file":"PathUtils.js","sourcesContent":["import { hash } from \"./StringUtils\"\n\nconst WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/\nconst UNC_WINDOWS_PATH_REGEXP = /^\\\\\\\\(\\.\\\\)?(.*)$/\n\nexport function toPortablePath(filepath: string): string {\n if (process.platform !== `win32`) return filepath\n\n if (filepath.match(WINDOWS_PATH_REGEXP))\n filepath = filepath.replace(WINDOWS_PATH_REGEXP, `/$1`)\n else if (filepath.match(UNC_WINDOWS_PATH_REGEXP))\n filepath = filepath.replace(\n UNC_WINDOWS_PATH_REGEXP,\n (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`,\n )\n\n return filepath.replace(/\\\\/g, `/`)\n}\n\n/**\n * Create deterministic valid database name (class, database) of fixed length from any filepath. Equivalent paths for windows/posix systems should\n * be equivalent to enable portability\n */\nexport function filepathToName(filepath: string): string {\n const uniq = toPortablePath(filepath).toLowerCase()\n return hash(uniq, { length: 63 })\n}\n\n/**\n * Cross platform isAbsolute\n */\nexport function isAbsolute(filepath: string): boolean {\n return !!filepath.match(/^(?:[a-z]:|[\\\\]|[/])/i)\n}\n"],"sourceRoot":".."}
@@ -1,6 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hash = exports.shorten = exports.abbreviate = exports.titleCase = exports.snakeCase = exports.camelCase = void 0;
3
+ exports.camelCase = camelCase;
4
+ exports.snakeCase = snakeCase;
5
+ exports.titleCase = titleCase;
6
+ exports.abbreviate = abbreviate;
7
+ exports.shorten = shorten;
8
+ exports.hash = hash;
4
9
  const tslib_1 = require("tslib");
5
10
  const sha_js_1 = tslib_1.__importDefault(require("sha.js"));
6
11
  /**
@@ -17,7 +22,6 @@ function camelCase(str, firstCapital = false) {
17
22
  return p1.toLowerCase();
18
23
  });
19
24
  }
20
- exports.camelCase = camelCase;
21
25
  /**
22
26
  * Converts string into snake_case.
23
27
  *
@@ -30,7 +34,6 @@ function snakeCase(str) {
30
34
  .replace(/([a-z0-9])([A-Z])/g, "$1_$2")
31
35
  .toLowerCase());
32
36
  }
33
- exports.snakeCase = snakeCase;
34
37
  /**
35
38
  * Converts string into Title Case.
36
39
  *
@@ -39,7 +42,6 @@ exports.snakeCase = snakeCase;
39
42
  function titleCase(str) {
40
43
  return str.replace(/\w\S*/g, (txt) => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase());
41
44
  }
42
- exports.titleCase = titleCase;
43
45
  /**
44
46
  * Builds abbreviated string from given string;
45
47
  */
@@ -52,7 +54,6 @@ function abbreviate(str, abbrLettersCount = 1) {
52
54
  return res;
53
55
  }, "");
54
56
  }
55
- exports.abbreviate = abbreviate;
56
57
  /**
57
58
  * Shorten a given `input`. Useful for RDBMS imposing a limit on the
58
59
  * maximum length of aliases and column names in SQL queries.
@@ -93,7 +94,6 @@ function shorten(input, options = {}) {
93
94
  }, []);
94
95
  return shortSegments.join(separator);
95
96
  }
96
- exports.shorten = shorten;
97
97
  /**
98
98
  * Returns a hashed input.
99
99
  *
@@ -109,6 +109,5 @@ function hash(input, options = {}) {
109
109
  }
110
110
  return hashedInput;
111
111
  }
112
- exports.hash = hash;
113
112
 
114
113
  //# sourceMappingURL=StringUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/StringUtils.ts"],"names":[],"mappings":"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","file":"StringUtils.js","sourcesContent":["import shajs from \"sha.js\"\n\n/**\n * Converts string into camelCase.\n *\n * @see http://stackoverflow.com/questions/2970525/converting-any-string-into-camel-case\n */\nexport function camelCase(str: string, firstCapital: boolean = false): string {\n if (firstCapital) str = \" \" + str\n return str.replace(/^([A-Z])|[\\s-_](\\w)/g, function (match, p1, p2) {\n if (p2) return p2.toUpperCase()\n return p1.toLowerCase()\n })\n}\n\n/**\n * Converts string into snake_case.\n *\n */\nexport function snakeCase(str: string): string {\n return (\n str\n // ABc -> a_bc\n .replace(/([A-Z])([A-Z])([a-z])/g, \"$1_$2$3\")\n // aC -> a_c\n .replace(/([a-z0-9])([A-Z])/g, \"$1_$2\")\n .toLowerCase()\n )\n}\n\n/**\n * Converts string into Title Case.\n *\n * @see http://stackoverflow.com/questions/196972/convert-string-to-title-case-with-javascript\n */\nexport function titleCase(str: string): string {\n return str.replace(\n /\\w\\S*/g,\n (txt) => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(),\n )\n}\n\n/**\n * Builds abbreviated string from given string;\n */\nexport function abbreviate(str: string, abbrLettersCount: number = 1): string {\n const words = str\n .replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0\\xDF])/g, \"$1 $2\")\n .split(\" \")\n return words.reduce((res, word) => {\n res += word.substr(0, abbrLettersCount)\n return res\n }, \"\")\n}\n\nexport interface IShortenOptions {\n /** String used to split \"segments\" of the alias/column name */\n separator?: string\n /** Maximum length of any \"segment\" */\n segmentLength?: number\n /** Length of any \"term\" in a \"segment\"; \"OrderItem\" is a segment, \"Order\" and \"Items\" are terms */\n termLength?: number\n}\n\n/**\n * Shorten a given `input`. Useful for RDBMS imposing a limit on the\n * maximum length of aliases and column names in SQL queries.\n *\n * @param input String to be shortened.\n * @param options Default to `4` for segments length, `2` for terms length, `'__'` as a separator.\n *\n * @return Shortened `input`.\n *\n * @example\n * // returns: \"UsShCa__orde__mark__dire\"\n * shorten('UserShoppingCart__order__market__director')\n *\n * // returns: \"cat_wit_ver_lon_nam_pos_wit_ver_lon_nam_pos_wit_ver_lon_nam\"\n * shorten(\n * 'category_with_very_long_name_posts_with_very_long_name_post_with_very_long_name',\n * { separator: '_', segmentLength: 3 }\n * )\n *\n * // equals: UsShCa__orde__mark_market_id\n * `${shorten('UserShoppingCart__order__market')}_market_id`\n */\nexport function shorten(input: string, options: IShortenOptions = {}): string {\n const { segmentLength = 4, separator = \"__\", termLength = 2 } = options\n\n const segments = input.split(separator)\n const shortSegments = segments.reduce((acc: string[], val: string) => {\n // split the given segment into many terms based on an eventual camel cased name\n const segmentTerms = val\n .replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0-\\xDF])/g, \"$1 $2\")\n .split(\" \")\n // \"OrderItemList\" becomes \"OrItLi\", while \"company\" becomes \"comp\"\n const length = segmentTerms.length > 1 ? termLength : segmentLength\n const shortSegment = segmentTerms\n .map((term) => term.substr(0, length))\n .join(\"\")\n\n acc.push(shortSegment)\n return acc\n }, [])\n\n return shortSegments.join(separator)\n}\n\ninterface IHashOptions {\n length?: number\n}\n\n/**\n * Returns a hashed input.\n *\n * @param input String to be hashed.\n * @param options.length Optionally, shorten the output to desired length.\n */\nexport function hash(input: string, options: IHashOptions = {}): string {\n const hashFunction = shajs(\"sha1\")\n hashFunction.update(input, \"utf8\")\n const hashedInput = hashFunction.digest(\"hex\")\n if (options.length) {\n return hashedInput.slice(0, options.length)\n }\n return hashedInput\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/StringUtils.ts"],"names":[],"mappings":"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","file":"StringUtils.js","sourcesContent":["import shajs from \"sha.js\"\n\n/**\n * Converts string into camelCase.\n *\n * @see http://stackoverflow.com/questions/2970525/converting-any-string-into-camel-case\n */\nexport function camelCase(str: string, firstCapital: boolean = false): string {\n if (firstCapital) str = \" \" + str\n return str.replace(/^([A-Z])|[\\s-_](\\w)/g, function (match, p1, p2) {\n if (p2) return p2.toUpperCase()\n return p1.toLowerCase()\n })\n}\n\n/**\n * Converts string into snake_case.\n *\n */\nexport function snakeCase(str: string): string {\n return (\n str\n // ABc -> a_bc\n .replace(/([A-Z])([A-Z])([a-z])/g, \"$1_$2$3\")\n // aC -> a_c\n .replace(/([a-z0-9])([A-Z])/g, \"$1_$2\")\n .toLowerCase()\n )\n}\n\n/**\n * Converts string into Title Case.\n *\n * @see http://stackoverflow.com/questions/196972/convert-string-to-title-case-with-javascript\n */\nexport function titleCase(str: string): string {\n return str.replace(\n /\\w\\S*/g,\n (txt) => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(),\n )\n}\n\n/**\n * Builds abbreviated string from given string;\n */\nexport function abbreviate(str: string, abbrLettersCount: number = 1): string {\n const words = str\n .replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0\\xDF])/g, \"$1 $2\")\n .split(\" \")\n return words.reduce((res, word) => {\n res += word.substr(0, abbrLettersCount)\n return res\n }, \"\")\n}\n\nexport interface IShortenOptions {\n /** String used to split \"segments\" of the alias/column name */\n separator?: string\n /** Maximum length of any \"segment\" */\n segmentLength?: number\n /** Length of any \"term\" in a \"segment\"; \"OrderItem\" is a segment, \"Order\" and \"Items\" are terms */\n termLength?: number\n}\n\n/**\n * Shorten a given `input`. Useful for RDBMS imposing a limit on the\n * maximum length of aliases and column names in SQL queries.\n *\n * @param input String to be shortened.\n * @param options Default to `4` for segments length, `2` for terms length, `'__'` as a separator.\n *\n * @return Shortened `input`.\n *\n * @example\n * // returns: \"UsShCa__orde__mark__dire\"\n * shorten('UserShoppingCart__order__market__director')\n *\n * // returns: \"cat_wit_ver_lon_nam_pos_wit_ver_lon_nam_pos_wit_ver_lon_nam\"\n * shorten(\n * 'category_with_very_long_name_posts_with_very_long_name_post_with_very_long_name',\n * { separator: '_', segmentLength: 3 }\n * )\n *\n * // equals: UsShCa__orde__mark_market_id\n * `${shorten('UserShoppingCart__order__market')}_market_id`\n */\nexport function shorten(input: string, options: IShortenOptions = {}): string {\n const { segmentLength = 4, separator = \"__\", termLength = 2 } = options\n\n const segments = input.split(separator)\n const shortSegments = segments.reduce((acc: string[], val: string) => {\n // split the given segment into many terms based on an eventual camel cased name\n const segmentTerms = val\n .replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0-\\xDF])/g, \"$1 $2\")\n .split(\" \")\n // \"OrderItemList\" becomes \"OrItLi\", while \"company\" becomes \"comp\"\n const length = segmentTerms.length > 1 ? termLength : segmentLength\n const shortSegment = segmentTerms\n .map((term) => term.substr(0, length))\n .join(\"\")\n\n acc.push(shortSegment)\n return acc\n }, [])\n\n return shortSegments.join(separator)\n}\n\ninterface IHashOptions {\n length?: number\n}\n\n/**\n * Returns a hashed input.\n *\n * @param input String to be hashed.\n * @param options.length Optionally, shorten the output to desired length.\n */\nexport function hash(input: string, options: IHashOptions = {}): string {\n const hashFunction = shajs(\"sha1\")\n hashFunction.update(input, \"utf8\")\n const hashedInput = hashFunction.digest(\"hex\")\n if (options.length) {\n return hashedInput.slice(0, options.length)\n }\n return hashedInput\n}\n"],"sourceRoot":".."}