@journeyapps-labs/reactor-mod-data-browser 3.0.2 → 3.1.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 (256) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/dist/@types/actions/connections/SetConnectionColorAction.d.ts +11 -0
  3. package/dist/@types/actions/saved-queries/OpenSavedQueryAction.d.ts +10 -0
  4. package/dist/@types/actions/saved-queries/RemoveSavedQueryAction.d.ts +9 -0
  5. package/dist/@types/core/AbstractConnection.d.ts +2 -0
  6. package/dist/@types/core/SchemaModelDefinition.d.ts +5 -0
  7. package/dist/@types/core/connection-colors.d.ts +10 -0
  8. package/dist/@types/core/query/StandardModelFields.d.ts +5 -0
  9. package/dist/@types/core/query/filters.d.ts +46 -5
  10. package/dist/@types/core/query/query-simple/SimplePage.d.ts +2 -0
  11. package/dist/@types/core/query/query-simple/SimpleQuery.d.ts +12 -3
  12. package/dist/@types/core/query/query-simple/SimpleQueryColumns.d.ts +12 -0
  13. package/dist/@types/core/query/query-simple/SimpleQueryFilterState.d.ts +37 -0
  14. package/dist/@types/core/query/query-simple/SimpleQueryPlanner.d.ts +4 -0
  15. package/dist/@types/core/query/query-simple/SimpleQuerySortState.d.ts +23 -0
  16. package/dist/@types/core/query/query-simple/SimpleQueryTypes.d.ts +24 -0
  17. package/dist/@types/core/query/widgets/ColumnDisplayWidget.d.ts +1 -0
  18. package/dist/@types/core/query/widgets/PeekRelationshipButton.d.ts +7 -0
  19. package/dist/@types/core/query/widgets/SmartColumnWidget.d.ts +3 -0
  20. package/dist/@types/core/query/widgets/SmartFilterWidget.d.ts +6 -0
  21. package/dist/@types/entities/ConnectionEntityDefinition.d.ts +2 -0
  22. package/dist/@types/entities/SavedQueryEntityDefinition.d.ts +8 -0
  23. package/dist/@types/entities.d.ts +2 -1
  24. package/dist/@types/forms/APIConnectionForm.d.ts +1 -0
  25. package/dist/@types/forms/TypeEngine.d.ts +3 -21
  26. package/dist/@types/forms/types/attachment-handler.d.ts +2 -0
  27. package/dist/@types/forms/types/boolean-handler.d.ts +2 -0
  28. package/dist/@types/forms/types/date-handler.d.ts +2 -0
  29. package/dist/@types/forms/types/filters/ClearableFilterFormDialogDirective.d.ts +10 -0
  30. package/dist/@types/forms/types/filters/ConditionalFilterForm.d.ts +23 -0
  31. package/dist/@types/forms/types/image-handler.d.ts +2 -0
  32. package/dist/@types/forms/types/location-handler.d.ts +2 -0
  33. package/dist/@types/forms/types/multiple-choice-handler.d.ts +2 -0
  34. package/dist/@types/forms/types/multiple-choice-integer-handler.d.ts +2 -0
  35. package/dist/@types/forms/types/number-handler.d.ts +2 -0
  36. package/dist/@types/forms/types/shared/type-handler.d.ts +37 -0
  37. package/dist/@types/forms/types/shared/ui.d.ts +768 -0
  38. package/dist/@types/forms/types/single-choice-handler.d.ts +2 -0
  39. package/dist/@types/forms/types/single-choice-integer-handler.d.ts +2 -0
  40. package/dist/@types/forms/types/text-handler.d.ts +3 -0
  41. package/dist/@types/index.d.ts +1 -0
  42. package/dist/@types/panels/_shared/SharedConnectionPanelFactory.d.ts +19 -0
  43. package/dist/@types/panels/_shared/SharedModelPanelFactory.d.ts +5 -2
  44. package/dist/@types/panels/query/QueryPanelFactory.d.ts +6 -2
  45. package/dist/@types/panels/query/TableControlsWidget.d.ts +2 -0
  46. package/dist/@types/panels/query/table-controls/ChangesControlsWidget.d.ts +8 -0
  47. package/dist/@types/panels/query/table-controls/FilterControlsWidget.d.ts +7 -0
  48. package/dist/@types/panels/query/table-controls/PageControlsWidget.d.ts +9 -0
  49. package/dist/@types/panels/query/table-controls/QueryControlsWidget.d.ts +11 -0
  50. package/dist/@types/panels/query/table-controls/SortChipWidget.d.ts +10 -0
  51. package/dist/@types/panels/query/table-controls/SortControlsWidget.d.ts +7 -0
  52. package/dist/@types/preferences/QueryControlPreferences.d.ts +7 -0
  53. package/dist/@types/stores/SavedQueryStore.d.ts +34 -0
  54. package/dist/@types/widgets/EmptyValueWidget.d.ts +7 -0
  55. package/dist/DataBrowserModule.js +21 -7
  56. package/dist/DataBrowserModule.js.map +1 -1
  57. package/dist/actions/connections/AddConnectionAction.js +2 -2
  58. package/dist/actions/connections/AddConnectionAction.js.map +1 -1
  59. package/dist/actions/connections/RemoveConnectionAction.js +2 -2
  60. package/dist/actions/connections/RemoveConnectionAction.js.map +1 -1
  61. package/dist/actions/connections/SetConnectionColorAction.js +63 -0
  62. package/dist/actions/connections/SetConnectionColorAction.js.map +1 -0
  63. package/dist/actions/saved-queries/OpenSavedQueryAction.js +58 -0
  64. package/dist/actions/saved-queries/OpenSavedQueryAction.js.map +1 -0
  65. package/dist/actions/saved-queries/RemoveSavedQueryAction.js +43 -0
  66. package/dist/actions/saved-queries/RemoveSavedQueryAction.js.map +1 -0
  67. package/dist/actions/schema-definitions/CreateModelAction.js +2 -2
  68. package/dist/actions/schema-definitions/CreateModelAction.js.map +1 -1
  69. package/dist/actions/schema-definitions/QuerySchemaModelAction.js +2 -2
  70. package/dist/actions/schema-definitions/QuerySchemaModelAction.js.map +1 -1
  71. package/dist/actions/schema-model/EditSchemaModelAction.js +2 -2
  72. package/dist/actions/schema-model/EditSchemaModelAction.js.map +1 -1
  73. package/dist/actions/schema-model/ViewSchemaModelAsJsonAction.js +2 -2
  74. package/dist/actions/schema-model/ViewSchemaModelAsJsonAction.js.map +1 -1
  75. package/dist/core/AbstractConnection.js +116 -90
  76. package/dist/core/AbstractConnection.js.map +1 -1
  77. package/dist/core/SchemaModelDefinition.js +14 -0
  78. package/dist/core/SchemaModelDefinition.js.map +1 -1
  79. package/dist/core/connection-colors.js +36 -0
  80. package/dist/core/connection-colors.js.map +1 -0
  81. package/dist/core/query/StandardModelFields.js +10 -0
  82. package/dist/core/query/StandardModelFields.js.map +1 -0
  83. package/dist/core/query/filters.js +86 -4
  84. package/dist/core/query/filters.js.map +1 -1
  85. package/dist/core/query/query-simple/SimplePage.js +2 -4
  86. package/dist/core/query/query-simple/SimplePage.js.map +1 -1
  87. package/dist/core/query/query-simple/SimpleQuery.js +64 -68
  88. package/dist/core/query/query-simple/SimpleQuery.js.map +1 -1
  89. package/dist/core/query/query-simple/SimpleQueryColumns.js +88 -0
  90. package/dist/core/query/query-simple/SimpleQueryColumns.js.map +1 -0
  91. package/dist/core/query/query-simple/SimpleQueryFilterState.js +136 -0
  92. package/dist/core/query/query-simple/SimpleQueryFilterState.js.map +1 -0
  93. package/dist/core/query/query-simple/SimpleQueryPlanner.js +14 -0
  94. package/dist/core/query/query-simple/SimpleQueryPlanner.js.map +1 -0
  95. package/dist/core/query/query-simple/SimpleQuerySortState.js +140 -0
  96. package/dist/core/query/query-simple/SimpleQuerySortState.js.map +1 -0
  97. package/dist/core/query/query-simple/SimpleQueryTypes.js +44 -0
  98. package/dist/core/query/query-simple/SimpleQueryTypes.js.map +1 -0
  99. package/dist/core/query/widgets/BelongsToDisplayWidget.js +14 -7
  100. package/dist/core/query/widgets/BelongsToDisplayWidget.js.map +1 -1
  101. package/dist/core/query/widgets/CellDisplayWidget.js +5 -9
  102. package/dist/core/query/widgets/CellDisplayWidget.js.map +1 -1
  103. package/dist/core/query/widgets/ColumnDisplayWidget.js +13 -12
  104. package/dist/core/query/widgets/ColumnDisplayWidget.js.map +1 -1
  105. package/dist/core/query/widgets/PeekRelationshipButton.js +128 -0
  106. package/dist/core/query/widgets/PeekRelationshipButton.js.map +1 -0
  107. package/dist/core/query/widgets/SmartColumnWidget.js +18 -3
  108. package/dist/core/query/widgets/SmartColumnWidget.js.map +1 -1
  109. package/dist/core/query/widgets/SmartFilterWidget.js +88 -51
  110. package/dist/core/query/widgets/SmartFilterWidget.js.map +1 -1
  111. package/dist/entities/ConnectionEntityDefinition.js +32 -7
  112. package/dist/entities/ConnectionEntityDefinition.js.map +1 -1
  113. package/dist/entities/SavedQueryEntityDefinition.js +68 -0
  114. package/dist/entities/SavedQueryEntityDefinition.js.map +1 -0
  115. package/dist/entities/SchemaModelDefinitionEntityDefinition.js +3 -1
  116. package/dist/entities/SchemaModelDefinitionEntityDefinition.js.map +1 -1
  117. package/dist/entities.js +1 -0
  118. package/dist/entities.js.map +1 -1
  119. package/dist/forms/APIConnectionForm.js +11 -2
  120. package/dist/forms/APIConnectionForm.js.map +1 -1
  121. package/dist/forms/TypeEngine.js +30 -306
  122. package/dist/forms/TypeEngine.js.map +1 -1
  123. package/dist/forms/types/attachment-handler.js +29 -0
  124. package/dist/forms/types/attachment-handler.js.map +1 -0
  125. package/dist/forms/types/boolean-handler.js +22 -0
  126. package/dist/forms/types/boolean-handler.js.map +1 -0
  127. package/dist/forms/types/date-handler.js +97 -0
  128. package/dist/forms/types/date-handler.js.map +1 -0
  129. package/dist/forms/types/filters/ClearableFilterFormDialogDirective.js +25 -0
  130. package/dist/forms/types/filters/ClearableFilterFormDialogDirective.js.map +1 -0
  131. package/dist/forms/types/filters/ConditionalFilterForm.js +87 -0
  132. package/dist/forms/types/filters/ConditionalFilterForm.js.map +1 -0
  133. package/dist/forms/types/image-handler.js +82 -0
  134. package/dist/forms/types/image-handler.js.map +1 -0
  135. package/dist/forms/types/location-handler.js +49 -0
  136. package/dist/forms/types/location-handler.js.map +1 -0
  137. package/dist/forms/types/multiple-choice-handler.js +37 -0
  138. package/dist/forms/types/multiple-choice-handler.js.map +1 -0
  139. package/dist/forms/types/multiple-choice-integer-handler.js +37 -0
  140. package/dist/forms/types/multiple-choice-integer-handler.js.map +1 -0
  141. package/dist/forms/types/number-handler.js +79 -0
  142. package/dist/forms/types/number-handler.js.map +1 -0
  143. package/dist/forms/types/shared/type-handler.js +2 -0
  144. package/dist/forms/types/shared/type-handler.js.map +1 -0
  145. package/dist/forms/types/shared/ui.js +33 -0
  146. package/dist/forms/types/shared/ui.js.map +1 -0
  147. package/dist/forms/types/single-choice-handler.js +41 -0
  148. package/dist/forms/types/single-choice-handler.js.map +1 -0
  149. package/dist/forms/types/single-choice-integer-handler.js +41 -0
  150. package/dist/forms/types/single-choice-integer-handler.js.map +1 -0
  151. package/dist/forms/types/text-handler.js +170 -0
  152. package/dist/forms/types/text-handler.js.map +1 -0
  153. package/dist/index.js +1 -0
  154. package/dist/index.js.map +1 -1
  155. package/dist/panels/_shared/SharedConnectionPanelFactory.js +48 -0
  156. package/dist/panels/_shared/SharedConnectionPanelFactory.js.map +1 -0
  157. package/dist/panels/_shared/SharedModelPanelFactory.js +7 -2
  158. package/dist/panels/_shared/SharedModelPanelFactory.js.map +1 -1
  159. package/dist/panels/query/PageResultsWidget.js +28 -11
  160. package/dist/panels/query/PageResultsWidget.js.map +1 -1
  161. package/dist/panels/query/QueryPanelFactory.js +17 -2
  162. package/dist/panels/query/QueryPanelFactory.js.map +1 -1
  163. package/dist/panels/query/QueryPanelWidget.js +55 -9
  164. package/dist/panels/query/QueryPanelWidget.js.map +1 -1
  165. package/dist/panels/query/TableControlsWidget.js +29 -67
  166. package/dist/panels/query/TableControlsWidget.js.map +1 -1
  167. package/dist/panels/query/table-controls/ChangesControlsWidget.js +36 -0
  168. package/dist/panels/query/table-controls/ChangesControlsWidget.js.map +1 -0
  169. package/dist/panels/query/table-controls/FilterControlsWidget.js +106 -0
  170. package/dist/panels/query/table-controls/FilterControlsWidget.js.map +1 -0
  171. package/dist/panels/query/table-controls/PageControlsWidget.js +65 -0
  172. package/dist/panels/query/table-controls/PageControlsWidget.js.map +1 -0
  173. package/dist/panels/query/table-controls/QueryControlsWidget.js +85 -0
  174. package/dist/panels/query/table-controls/QueryControlsWidget.js.map +1 -0
  175. package/dist/panels/query/table-controls/SortChipWidget.js +75 -0
  176. package/dist/panels/query/table-controls/SortChipWidget.js.map +1 -0
  177. package/dist/panels/query/table-controls/SortControlsWidget.js +65 -0
  178. package/dist/panels/query/table-controls/SortControlsWidget.js.map +1 -0
  179. package/dist/preferences/QueryControlPreferences.js +28 -0
  180. package/dist/preferences/QueryControlPreferences.js.map +1 -0
  181. package/dist/stores/ConnectionStore.js +2 -0
  182. package/dist/stores/ConnectionStore.js.map +1 -1
  183. package/dist/stores/SavedQueryStore.js +131 -0
  184. package/dist/stores/SavedQueryStore.js.map +1 -0
  185. package/dist/tsconfig.tsbuildinfo +1 -1
  186. package/dist/widgets/EmptyValueWidget.js +15 -0
  187. package/dist/widgets/EmptyValueWidget.js.map +1 -0
  188. package/dist-module/bundle.js +181 -51
  189. package/dist-module/bundle.js.map +1 -1
  190. package/package.json +11 -11
  191. package/src/DataBrowserModule.ts +21 -7
  192. package/src/actions/connections/AddConnectionAction.tsx +2 -2
  193. package/src/actions/connections/RemoveConnectionAction.tsx +2 -2
  194. package/src/actions/connections/SetConnectionColorAction.ts +52 -0
  195. package/src/actions/saved-queries/OpenSavedQueryAction.ts +43 -0
  196. package/src/actions/saved-queries/RemoveSavedQueryAction.ts +27 -0
  197. package/src/actions/schema-definitions/CreateModelAction.ts +9 -2
  198. package/src/actions/schema-definitions/QuerySchemaModelAction.ts +9 -2
  199. package/src/actions/schema-model/EditSchemaModelAction.ts +9 -2
  200. package/src/actions/schema-model/ViewSchemaModelAsJsonAction.ts +9 -2
  201. package/src/core/AbstractConnection.ts +7 -1
  202. package/src/core/SchemaModelDefinition.ts +16 -0
  203. package/src/core/connection-colors.ts +49 -0
  204. package/src/core/query/StandardModelFields.ts +9 -0
  205. package/src/core/query/filters.ts +121 -6
  206. package/src/core/query/query-simple/SimplePage.ts +4 -5
  207. package/src/core/query/query-simple/SimpleQuery.tsx +83 -86
  208. package/src/core/query/query-simple/SimpleQueryColumns.tsx +126 -0
  209. package/src/core/query/query-simple/SimpleQueryFilterState.ts +160 -0
  210. package/src/core/query/query-simple/SimpleQueryPlanner.ts +18 -0
  211. package/src/core/query/query-simple/SimpleQuerySortState.ts +133 -0
  212. package/src/core/query/query-simple/SimpleQueryTypes.ts +61 -0
  213. package/src/core/query/widgets/BelongsToDisplayWidget.tsx +19 -11
  214. package/src/core/query/widgets/CellDisplayWidget.tsx +5 -10
  215. package/src/core/query/widgets/ColumnDisplayWidget.tsx +24 -20
  216. package/src/core/query/widgets/PeekRelationshipButton.tsx +161 -0
  217. package/src/core/query/widgets/SmartColumnWidget.tsx +26 -4
  218. package/src/core/query/widgets/SmartFilterWidget.tsx +119 -69
  219. package/src/entities/ConnectionEntityDefinition.tsx +33 -4
  220. package/src/entities/SavedQueryEntityDefinition.ts +72 -0
  221. package/src/entities/SchemaModelDefinitionEntityDefinition.ts +5 -2
  222. package/src/entities.ts +2 -1
  223. package/src/forms/APIConnectionForm.tsx +15 -2
  224. package/src/forms/TypeEngine.tsx +35 -421
  225. package/src/forms/types/attachment-handler.tsx +35 -0
  226. package/src/forms/types/boolean-handler.tsx +28 -0
  227. package/src/forms/types/date-handler.tsx +125 -0
  228. package/src/forms/types/filters/ClearableFilterFormDialogDirective.ts +32 -0
  229. package/src/forms/types/filters/ConditionalFilterForm.tsx +109 -0
  230. package/src/forms/types/image-handler.tsx +90 -0
  231. package/src/forms/types/location-handler.tsx +53 -0
  232. package/src/forms/types/multiple-choice-handler.tsx +37 -0
  233. package/src/forms/types/multiple-choice-integer-handler.tsx +37 -0
  234. package/src/forms/types/number-handler.tsx +100 -0
  235. package/src/forms/types/shared/type-handler.ts +36 -0
  236. package/src/forms/types/shared/ui.tsx +40 -0
  237. package/src/forms/types/single-choice-handler.tsx +47 -0
  238. package/src/forms/types/single-choice-integer-handler.tsx +47 -0
  239. package/src/forms/types/text-handler.tsx +247 -0
  240. package/src/index.ts +1 -0
  241. package/src/panels/_shared/SharedConnectionPanelFactory.tsx +55 -0
  242. package/src/panels/_shared/SharedModelPanelFactory.tsx +8 -2
  243. package/src/panels/query/PageResultsWidget.tsx +40 -28
  244. package/src/panels/query/QueryPanelFactory.tsx +19 -2
  245. package/src/panels/query/QueryPanelWidget.tsx +64 -9
  246. package/src/panels/query/TableControlsWidget.tsx +42 -120
  247. package/src/panels/query/table-controls/ChangesControlsWidget.tsx +72 -0
  248. package/src/panels/query/table-controls/FilterControlsWidget.tsx +145 -0
  249. package/src/panels/query/table-controls/PageControlsWidget.tsx +97 -0
  250. package/src/panels/query/table-controls/QueryControlsWidget.tsx +127 -0
  251. package/src/panels/query/table-controls/SortChipWidget.tsx +119 -0
  252. package/src/panels/query/table-controls/SortControlsWidget.tsx +95 -0
  253. package/src/preferences/QueryControlPreferences.ts +34 -0
  254. package/src/stores/ConnectionStore.ts +2 -0
  255. package/src/stores/SavedQueryStore.ts +121 -0
  256. package/src/widgets/EmptyValueWidget.tsx +20 -0
@@ -1,5 +1,5 @@
1
1
  import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
2
- import { EntityAction, inject, ioc, System, WorkspaceStore } from '@journeyapps-labs/reactor-mod';
2
+ import { ActionStore, EntityAction, inject, ioc, WorkspaceStore } from '@journeyapps-labs/reactor-mod';
3
3
  import { DataBrowserEntities } from '../../entities';
4
4
  import { ModelJsonPanelModel } from '../../panels/model-json/ModelJsonPanelFactory';
5
5
  let ViewSchemaModelAsJsonAction = (() => {
@@ -28,7 +28,7 @@ let ViewSchemaModelAsJsonAction = (() => {
28
28
  }));
29
29
  }
30
30
  static get() {
31
- return ioc.get(System).getActionByID(_a.ID);
31
+ return ioc.get(ActionStore).getActionByID(_a.ID);
32
32
  }
33
33
  },
34
34
  _ViewSchemaModelAsJsonAction_workspaceStore_accessor_storage = new WeakMap(),
@@ -1 +1 @@
1
- {"version":3,"file":"ViewSchemaModelAsJsonAction.js","sourceRoot":"","sources":["../../../src/actions/schema-model/ViewSchemaModelAsJsonAction.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAqB,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACrH,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;IAEvE,2BAA2B;;sBAAS,YAAY;;;;sBAAhD,2BAA4B,SAAQ,WAA+B;YAI9E,IAAS,cAAc,8GAAiB;YAAxC,IAAS,cAAc,mHAAiB;YAExC;gBACE,KAAK,CAAC;oBACJ,EAAE,EAAE,EAA2B,CAAC,EAAE;oBAClC,IAAI,EAAE,2BAA2B;oBACjC,IAAI,EAAE,KAAK;oBACX,MAAM,EAAE,mBAAmB,CAAC,mBAAmB;iBAChD,CAAC,CAAC;gBARI,sIAA+B;;aASvC;YAED,KAAK,CAAC,SAAS,CAAC,KAA2C;gBACzD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAC1B,IAAI,mBAAmB,CAAC;oBACtB,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU;oBACzC,KAAK,EAAE,KAAK,CAAC,YAAY;iBAC1B,CAAC,CACH,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,GAAG;gBACR,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,aAAa,CAA8B,EAA2B,CAAC,EAAE,CAAC,CAAC;YACpG,CAAC;;;;;;0CAvBA,MAAM,CAAC,cAAc,CAAC;YACvB,6LAAS,cAAc,6BAAd,cAAc,uGAAiB;;;QAHjC,KAAE,GAAG,2BAA4B;;;SAD7B,2BAA2B"}
1
+ {"version":3,"file":"ViewSchemaModelAsJsonAction.js","sourceRoot":"","sources":["../../../src/actions/schema-model/ViewSchemaModelAsJsonAction.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,WAAW,EACX,YAAY,EAEZ,MAAM,EACN,GAAG,EACH,cAAc,EACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAC;IAEvE,2BAA2B;;sBAAS,YAAY;;;;sBAAhD,2BAA4B,SAAQ,WAA+B;YAI9E,IAAS,cAAc,8GAAiB;YAAxC,IAAS,cAAc,mHAAiB;YAExC;gBACE,KAAK,CAAC;oBACJ,EAAE,EAAE,EAA2B,CAAC,EAAE;oBAClC,IAAI,EAAE,2BAA2B;oBACjC,IAAI,EAAE,KAAK;oBACX,MAAM,EAAE,mBAAmB,CAAC,mBAAmB;iBAChD,CAAC,CAAC;gBARI,sIAA+B;;aASvC;YAED,KAAK,CAAC,SAAS,CAAC,KAA2C;gBACzD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAC1B,IAAI,mBAAmB,CAAC;oBACtB,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,UAAU;oBACzC,KAAK,EAAE,KAAK,CAAC,YAAY;iBAC1B,CAAC,CACH,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,GAAG;gBACR,OAAO,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,aAAa,CAA8B,EAA2B,CAAC,EAAE,CAAC,CAAC;YACzG,CAAC;;;;;;0CAvBA,MAAM,CAAC,cAAc,CAAC;YACvB,6LAAS,cAAc,6BAAd,cAAc,uGAAiB;;;QAHjC,KAAE,GAAG,2BAA4B;;;SAD7B,2BAA2B"}
@@ -1,99 +1,125 @@
1
+ import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
1
2
  import * as _ from 'lodash';
2
3
  import { SchemaModelDefinition } from './SchemaModelDefinition';
3
4
  import { v4 } from 'uuid';
4
5
  import { BaseObserver } from '@journeyapps-labs/common-utils';
5
6
  import { Collection, LifecycleCollection } from '@journeyapps-labs/lib-reactor-data-layer';
6
7
  import { when } from 'mobx';
7
- export class AbstractConnection extends BaseObserver {
8
- constructor(factory) {
9
- super();
10
- this.factory = factory;
11
- this.id = v4();
12
- this.schema_models_collection = new Collection();
13
- this.schema_models = new LifecycleCollection({
14
- collection: this.schema_models_collection,
15
- generateModel: (o) => {
16
- let model = new SchemaModelDefinition({
17
- definition: o,
18
- connection: this
8
+ import { observable } from 'mobx';
9
+ import { getDefaultConnectionColor } from './connection-colors';
10
+ let AbstractConnection = (() => {
11
+ var _a, _AbstractConnection_color_accessor_storage;
12
+ let _classSuper = BaseObserver;
13
+ let _color_decorators;
14
+ let _color_initializers = [];
15
+ let _color_extraInitializers = [];
16
+ return _a = class AbstractConnection extends _classSuper {
17
+ get color() { return __classPrivateFieldGet(this, _AbstractConnection_color_accessor_storage, "f"); }
18
+ set color(value) { __classPrivateFieldSet(this, _AbstractConnection_color_accessor_storage, value, "f"); }
19
+ constructor(factory) {
20
+ super();
21
+ this.factory = factory;
22
+ _AbstractConnection_color_accessor_storage.set(this, __runInitializers(this, _color_initializers, void 0));
23
+ this.schema_models_collection = __runInitializers(this, _color_extraInitializers);
24
+ this.id = v4();
25
+ this.color = getDefaultConnectionColor(this.id);
26
+ this.schema_models_collection = new Collection();
27
+ this.schema_models = new LifecycleCollection({
28
+ collection: this.schema_models_collection,
29
+ generateModel: (o) => {
30
+ let model = new SchemaModelDefinition({
31
+ definition: o,
32
+ connection: this
33
+ });
34
+ model.init();
35
+ return model;
36
+ },
37
+ getKeyForSerialized: (o) => {
38
+ return o.name;
39
+ }
19
40
  });
20
- model.init();
21
- return model;
22
- },
23
- getKeyForSerialized: (o) => {
24
- return o.name;
25
41
  }
26
- });
27
- }
28
- async getIndexes() {
29
- if (!this.fetch_indexes_promise) {
30
- this.fetch_indexes_promise = this.getBackendClient()
31
- .getIndexes()
32
- .then((res) => res.models)
33
- .finally(() => {
34
- this.fetch_indexes_promise = null;
35
- });
36
- }
37
- return this.fetch_indexes_promise;
38
- }
39
- async batchSave(models) {
40
- if (models.length === 0) {
41
- return;
42
- }
43
- const database = await this.getConnection();
44
- let batch = new database.Batch();
45
- for (let model of models) {
46
- await model.applyPatches();
47
- batch.save(model.model);
48
- }
49
- await batch.execute();
50
- for (let model of models) {
51
- model.reload();
52
- }
53
- }
54
- getSchemaModelDefinitionByName(name) {
55
- return this.schema_models.items.find((i) => i.definition.name === name);
56
- }
57
- async waitForSchemaModelDefinitionByName(name) {
58
- await when(() => !!this.getSchemaModelDefinitionByName(name));
59
- return this.getSchemaModelDefinitionByName(name);
60
- }
61
- async getSchema() {
62
- const connection = await this.getConnection();
63
- return connection.schema;
64
- }
65
- async reload() {
66
- await this.schema_models_collection.load(async () => {
67
- const schema = await this.getSchema();
68
- return _.values(schema.objects);
69
- });
70
- }
71
- async init() {
72
- await this.reload();
73
- }
74
- async getSchemaModelDefinitions() {
75
- const schema = await this.getSchema();
76
- return _.map(schema.objects, (o) => {
77
- return new SchemaModelDefinition({
78
- definition: o,
79
- connection: this
80
- });
81
- });
82
- }
83
- remove() {
84
- this.iterateListeners((cb) => { var _a; return (_a = cb.removed) === null || _a === void 0 ? void 0 : _a.call(cb); });
85
- }
86
- serialize() {
87
- return {
88
- id: this.id,
89
- factory: this.factory.options.key,
90
- payload: this._serialize()
91
- };
92
- }
93
- get name() {
94
- return {
95
- simpleName: this.id
96
- };
97
- }
98
- }
42
+ async getIndexes() {
43
+ if (!this.fetch_indexes_promise) {
44
+ this.fetch_indexes_promise = this.getBackendClient()
45
+ .getIndexes()
46
+ .then((res) => res.models)
47
+ .finally(() => {
48
+ this.fetch_indexes_promise = null;
49
+ });
50
+ }
51
+ return this.fetch_indexes_promise;
52
+ }
53
+ async batchSave(models) {
54
+ if (models.length === 0) {
55
+ return;
56
+ }
57
+ const database = await this.getConnection();
58
+ let batch = new database.Batch();
59
+ for (let model of models) {
60
+ await model.applyPatches();
61
+ batch.save(model.model);
62
+ }
63
+ await batch.execute();
64
+ for (let model of models) {
65
+ model.reload();
66
+ }
67
+ }
68
+ getSchemaModelDefinitionByName(name) {
69
+ return this.schema_models.items.find((i) => i.definition.name === name);
70
+ }
71
+ async waitForSchemaModelDefinitionByName(name) {
72
+ await when(() => !!this.getSchemaModelDefinitionByName(name));
73
+ return this.getSchemaModelDefinitionByName(name);
74
+ }
75
+ async getSchema() {
76
+ const connection = await this.getConnection();
77
+ return connection.schema;
78
+ }
79
+ async reload() {
80
+ await this.schema_models_collection.load(async () => {
81
+ const schema = await this.getSchema();
82
+ return _.values(schema.objects);
83
+ });
84
+ }
85
+ async init() {
86
+ await this.reload();
87
+ }
88
+ async getSchemaModelDefinitions() {
89
+ const schema = await this.getSchema();
90
+ return _.map(schema.objects, (o) => {
91
+ return new SchemaModelDefinition({
92
+ definition: o,
93
+ connection: this
94
+ });
95
+ });
96
+ }
97
+ remove() {
98
+ this.iterateListeners((cb) => { var _b; return (_b = cb.removed) === null || _b === void 0 ? void 0 : _b.call(cb); });
99
+ }
100
+ serialize() {
101
+ return {
102
+ id: this.id,
103
+ factory: this.factory.options.key,
104
+ payload: this._serialize(),
105
+ color: this.color
106
+ };
107
+ }
108
+ get name() {
109
+ return {
110
+ simpleName: this.id
111
+ };
112
+ }
113
+ },
114
+ _AbstractConnection_color_accessor_storage = new WeakMap(),
115
+ (() => {
116
+ var _b;
117
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create((_b = _classSuper[Symbol.metadata]) !== null && _b !== void 0 ? _b : null) : void 0;
118
+ _color_decorators = [observable];
119
+ __esDecorate(_a, null, _color_decorators, { kind: "accessor", name: "color", static: false, private: false, access: { has: obj => "color" in obj, get: obj => obj.color, set: (obj, value) => { obj.color = value; } }, metadata: _metadata }, _color_initializers, _color_extraInitializers);
120
+ if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
121
+ })(),
122
+ _a;
123
+ })();
124
+ export { AbstractConnection };
99
125
  //# sourceMappingURL=AbstractConnection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractConnection.js","sourceRoot":"","sources":["../../src/core/AbstractConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractConnection.js","sourceRoot":"","sources":["../../src/core/AbstractConnection.ts"],"names":[],"mappings":"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"}
@@ -143,6 +143,20 @@ let SchemaModelDefinition = (() => {
143
143
  adapter: collection.adapter
144
144
  });
145
145
  }
146
+ getFilterableFields(typeEngine) {
147
+ return Object.values(this.definition.attributes)
148
+ .map((attribute) => {
149
+ const handler = typeEngine.getHandler(attribute.type);
150
+ if (!(handler === null || handler === void 0 ? void 0 : handler.setupFilter)) {
151
+ return null;
152
+ }
153
+ return {
154
+ key: attribute.name,
155
+ label: attribute.label || attribute.name
156
+ };
157
+ })
158
+ .filter((value) => !!value);
159
+ }
146
160
  },
147
161
  _SchemaModelDefinition_indexes_accessor_storage = new WeakMap(),
148
162
  (() => {
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaModelDefinition.js","sourceRoot":"","sources":["../../src/core/SchemaModelDefinition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaModelDefinition.js","sourceRoot":"","sources":["../../src/core/SchemaModelDefinition.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ export const CONNECTION_COLOR_OPTIONS = [
2
+ { key: '#00bcd4', label: 'Cyan' },
3
+ { key: '#4caf50', label: 'Green' },
4
+ { key: '#ff9800', label: 'Orange' },
5
+ { key: '#e91e63', label: 'Pink' },
6
+ { key: '#9c27b0', label: 'Purple' },
7
+ { key: '#f44336', label: 'Red' },
8
+ { key: '#2196f3', label: 'Blue' },
9
+ { key: '#ffc107', label: 'Amber' }
10
+ ];
11
+ export const DEFAULT_CONNECTION_COLOR = CONNECTION_COLOR_OPTIONS[0].key;
12
+ export function getConnectionColorComboBoxItems() {
13
+ return CONNECTION_COLOR_OPTIONS.map((option) => ({
14
+ key: option.key,
15
+ title: option.label,
16
+ icon: 'circle',
17
+ color: option.key
18
+ }));
19
+ }
20
+ export function getConnectionColorSetOptions() {
21
+ return CONNECTION_COLOR_OPTIONS.reduce((prev, option) => {
22
+ prev[option.key] = option.label;
23
+ return prev;
24
+ }, {});
25
+ }
26
+ export function getDefaultConnectionColor(seed) {
27
+ if (!seed) {
28
+ return DEFAULT_CONNECTION_COLOR;
29
+ }
30
+ let hash = 0;
31
+ for (let i = 0; i < seed.length; i++) {
32
+ hash = (hash * 31 + seed.charCodeAt(i)) >>> 0;
33
+ }
34
+ return CONNECTION_COLOR_OPTIONS[hash % CONNECTION_COLOR_OPTIONS.length].key;
35
+ }
36
+ //# sourceMappingURL=connection-colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-colors.js","sourceRoot":"","sources":["../../src/core/connection-colors.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,wBAAwB,GAA4B;IAC/D,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE;IACjC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE;IAClC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE;IACnC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE;IACjC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE;IACnC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE;IAChC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE;IACjC,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE;CACnC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAExE,MAAM,UAAU,+BAA+B;IAC7C,OAAO,wBAAwB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/C,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,MAAM,CAAC,GAAG;KAClB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,OAAO,wBAAwB,CAAC,MAAM,CACpC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC,EACD,EAA4B,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,wBAAwB,CAAC;IAClC,CAAC;IACD,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,wBAAwB,CAAC,IAAI,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC;AAC9E,CAAC"}
@@ -0,0 +1,10 @@
1
+ export var StandardModelFields;
2
+ (function (StandardModelFields) {
3
+ StandardModelFields["ID"] = "id";
4
+ StandardModelFields["UPDATED_AT"] = "updated_at";
5
+ })(StandardModelFields || (StandardModelFields = {}));
6
+ export const STANDARD_MODEL_FIELD_LABELS = {
7
+ [StandardModelFields.ID]: 'ID',
8
+ [StandardModelFields.UPDATED_AT]: 'Updated at'
9
+ };
10
+ //# sourceMappingURL=StandardModelFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StandardModelFields.js","sourceRoot":"","sources":["../../../src/core/query/StandardModelFields.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,gCAAS,CAAA;IACT,gDAAyB,CAAA;AAC3B,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,QAG9B;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAwC;IAC9E,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,IAAI;IAC9B,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,YAAY;CAC/C,CAAC"}
@@ -1,17 +1,99 @@
1
- export class AbstractFilter {
1
+ import { BaseObserver } from '@journeyapps-labs/common-utils';
2
+ export class AbstractFilter extends BaseObserver {
3
+ constructor() {
4
+ super();
5
+ }
6
+ delete() {
7
+ this.iterateListeners((listener) => { var _a; return (_a = listener.removeRequested) === null || _a === void 0 ? void 0 : _a.call(listener); });
8
+ }
2
9
  }
3
10
  export var Condition;
4
11
  (function (Condition) {
5
12
  Condition["EQUALS"] = "=";
13
+ Condition["NOT_EQUALS"] = "!=";
14
+ Condition["GREATER_THAN"] = ">";
15
+ Condition["GREATER_THAN_OR_EQUAL"] = ">=";
16
+ Condition["LESS_THAN"] = "<";
17
+ Condition["LESS_THAN_OR_EQUAL"] = "<=";
18
+ Condition["STARTS_WITH"] = "starts with";
19
+ Condition["CONTAINS"] = "contains";
6
20
  })(Condition || (Condition = {}));
21
+ export var StatementMatch;
22
+ (function (StatementMatch) {
23
+ StatementMatch["ANY"] = "ANY";
24
+ StatementMatch["ALL"] = "ALL";
25
+ })(StatementMatch || (StatementMatch = {}));
26
+ export var FilterType;
27
+ (function (FilterType) {
28
+ FilterType["SIMPLE"] = "simple";
29
+ })(FilterType || (FilterType = {}));
30
+ export class Statement {
31
+ constructor(condition, arg) {
32
+ this.condition = condition;
33
+ this.arg = arg;
34
+ }
35
+ serialize() {
36
+ return {
37
+ condition: this.condition,
38
+ arg: this.arg
39
+ };
40
+ }
41
+ static deserialize(data) {
42
+ if (data.condition === Condition.EQUALS ||
43
+ data.condition === Condition.NOT_EQUALS ||
44
+ data.condition === Condition.GREATER_THAN ||
45
+ data.condition === Condition.GREATER_THAN_OR_EQUAL ||
46
+ data.condition === Condition.LESS_THAN ||
47
+ data.condition === Condition.LESS_THAN_OR_EQUAL ||
48
+ data.condition === Condition.STARTS_WITH ||
49
+ data.condition === Condition.CONTAINS) {
50
+ return new Statement(data.condition, data.arg);
51
+ }
52
+ throw new Error(`Unsupported statement condition: ${data.condition}`);
53
+ }
54
+ getMetadataLabel() {
55
+ return {
56
+ label: this.condition,
57
+ value: `${this.arg}`
58
+ };
59
+ }
60
+ }
7
61
  export class SimpleFilter extends AbstractFilter {
8
- constructor(variable, statements) {
62
+ constructor(variable, statements, match = StatementMatch.ANY) {
9
63
  super();
64
+ this.type = FilterType.SIMPLE;
10
65
  this.variable = variable;
11
- this.statements = statements;
66
+ this.match = match;
67
+ this.statements = (statements || []).map((statement) => {
68
+ if (statement instanceof Statement) {
69
+ return statement;
70
+ }
71
+ return Statement.deserialize(statement);
72
+ });
12
73
  }
13
74
  augment(query) {
14
- return query.where(this.statements.map((s) => `${this.variable.name} ${s.condition} ?`).join(' or '), ...this.statements.map((s) => s.arg));
75
+ const separator = this.match === StatementMatch.ALL ? ' and ' : ' or ';
76
+ return query.where(this.statements.map((s) => `${this.variable.name} ${s.condition} ?`).join(separator), ...this.statements.map((s) => s.arg));
77
+ }
78
+ serialize() {
79
+ return {
80
+ type: this.type,
81
+ variable: this.variable.name,
82
+ match: this.match,
83
+ statements: this.statements.map((statement) => statement.serialize())
84
+ };
85
+ }
86
+ static deserialize(variable, data) {
87
+ return new SimpleFilter(variable, (data === null || data === void 0 ? void 0 : data.statements) || [], (data === null || data === void 0 ? void 0 : data.match) || StatementMatch.ANY);
88
+ }
89
+ static canDeserialize(data) {
90
+ return !!data && (data.type == null || data.type === FilterType.SIMPLE);
91
+ }
92
+ getMetadata() {
93
+ if (!this.statements || this.statements.length === 0) {
94
+ return [];
95
+ }
96
+ return this.statements.map((statement) => statement.getMetadataLabel());
15
97
  }
16
98
  }
17
99
  //# sourceMappingURL=filters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/core/query/filters.ts"],"names":[],"mappings":"AAEA,MAAM,OAAgB,cAAc;CAEnC;AAED,MAAM,CAAN,IAAY,SAEX;AAFD,WAAY,SAAS;IACnB,yBAAY,CAAA;AACd,CAAC,EAFW,SAAS,KAAT,SAAS,QAEpB;AAOD,MAAM,OAAO,YAAa,SAAQ,cAAc;IAC9C,YACS,QAAkB,EAClB,UAAuB;QAE9B,KAAK,EAAE,CAAC;QAHD,aAAQ,GAAR,QAAQ,CAAU;QAClB,eAAU,GAAV,UAAU,CAAa;IAGhC,CAAC;IAED,OAAO,CAAC,KAAY;QAClB,OAAO,KAAK,CAAC,KAAK,CAChB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EACjF,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CACrC,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/core/query/filters.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Page } from '../Page';
2
+ import { applyFiltersAndSorts } from './SimpleQueryPlanner';
2
3
  export class SimplePage extends Page {
3
4
  constructor(options2) {
4
5
  super(options2);
@@ -7,10 +8,7 @@ export class SimplePage extends Page {
7
8
  async load() {
8
9
  this.loading = true;
9
10
  let collection = await this.options.definition.getCollection();
10
- let query = collection.all();
11
- this.options2.filters.forEach((f) => {
12
- query = f.augment(query);
13
- });
11
+ let query = applyFiltersAndSorts(collection.all(), this.options2.filters, this.options2.sorts || []);
14
12
  this.models = await this.options.definition.executeQuery(query.limit(this.options2.limit).skip(this.options2.offset));
15
13
  this.loading = false;
16
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SimplePage.js","sourceRoot":"","sources":["../../../../src/core/query/query-simple/SimplePage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,SAAS,CAAC;AAS5C,MAAM,OAAO,UAAW,SAAQ,IAAI;IAClC,YAAsB,QAA2B;QAC/C,KAAK,CAAC,QAAQ,CAAC,CAAC;QADI,aAAQ,GAAR,QAAQ,CAAmB;IAEjD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;QAC/D,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CACtD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5D,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"SimplePage.js","sourceRoot":"","sources":["../../../../src/core/query/query-simple/SimplePage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,SAAS,CAAC;AAG5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAS5D,MAAM,OAAO,UAAW,SAAQ,IAAI;IAClC,YAAsB,QAA2B;QAC/C,KAAK,CAAC,QAAQ,CAAC,CAAC;QADI,aAAQ,GAAR,QAAQ,CAAmB;IAEjD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;QAC/D,IAAI,KAAK,GAAG,oBAAoB,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAErG,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CACtD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5D,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;CACF"}