@aiao/rxdb-model 0.0.19 → 0.0.28

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 (182) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +43 -6
  3. package/dist/cn.d.ts +19 -0
  4. package/dist/cn.d.ts.map +1 -0
  5. package/dist/entity-capabilities.d.ts +25 -0
  6. package/dist/entity-capabilities.d.ts.map +1 -0
  7. package/dist/entity-detail/detail-tabs.d.ts +7 -1
  8. package/dist/entity-detail/detail-tabs.d.ts.map +1 -1
  9. package/dist/entity-detail/index.d.ts +5 -0
  10. package/dist/entity-detail/index.d.ts.map +1 -1
  11. package/dist/entity-detail/interfaces.d.ts +25 -1
  12. package/dist/entity-detail/interfaces.d.ts.map +1 -1
  13. package/dist/entity-field.utils.d.ts +54 -2
  14. package/dist/entity-field.utils.d.ts.map +1 -1
  15. package/dist/entity-form/form-data.d.ts +21 -0
  16. package/dist/entity-form/form-data.d.ts.map +1 -1
  17. package/dist/entity-form/form-fields.d.ts +19 -1
  18. package/dist/entity-form/form-fields.d.ts.map +1 -1
  19. package/dist/entity-form/form-validation.d.ts +13 -0
  20. package/dist/entity-form/form-validation.d.ts.map +1 -1
  21. package/dist/entity-form/index.d.ts +5 -0
  22. package/dist/entity-form/index.d.ts.map +1 -1
  23. package/dist/entity-form/interfaces.d.ts +60 -0
  24. package/dist/entity-form/interfaces.d.ts.map +1 -1
  25. package/dist/entity-list/manual-order-list.d.ts +92 -0
  26. package/dist/entity-list/manual-order-list.d.ts.map +1 -0
  27. package/dist/entity-list/types.d.ts +25 -0
  28. package/dist/entity-list/types.d.ts.map +1 -0
  29. package/dist/entity-table/columns/build-editable-columns.d.ts +24 -2
  30. package/dist/entity-table/columns/build-editable-columns.d.ts.map +1 -1
  31. package/dist/entity-table/columns/column-utils.d.ts +75 -9
  32. package/dist/entity-table/columns/column-utils.d.ts.map +1 -1
  33. package/dist/entity-table/editors/color-editor.d.ts +23 -0
  34. package/dist/entity-table/editors/color-editor.d.ts.map +1 -0
  35. package/dist/entity-table/editors/date-editor.d.ts +5 -0
  36. package/dist/entity-table/editors/date-editor.d.ts.map +1 -1
  37. package/dist/entity-table/editors/enum-editor.d.ts +10 -0
  38. package/dist/entity-table/editors/enum-editor.d.ts.map +1 -1
  39. package/dist/entity-table/editors/global-overlay-editor.d.ts +26 -3
  40. package/dist/entity-table/editors/global-overlay-editor.d.ts.map +1 -1
  41. package/dist/entity-table/editors/icon-list-editor.d.ts +12 -0
  42. package/dist/entity-table/editors/icon-list-editor.d.ts.map +1 -1
  43. package/dist/entity-table/editors/json-editor.d.ts +5 -0
  44. package/dist/entity-table/editors/json-editor.d.ts.map +1 -1
  45. package/dist/entity-table/editors/key-value-editor.d.ts +11 -1
  46. package/dist/entity-table/editors/key-value-editor.d.ts.map +1 -1
  47. package/dist/entity-table/editors/lucide-svg.d.ts +3 -2
  48. package/dist/entity-table/editors/lucide-svg.d.ts.map +1 -1
  49. package/dist/entity-table/editors/multiselect-editor.d.ts +24 -6
  50. package/dist/entity-table/editors/multiselect-editor.d.ts.map +1 -1
  51. package/dist/entity-table/editors/number-editor.d.ts +32 -2
  52. package/dist/entity-table/editors/number-editor.d.ts.map +1 -1
  53. package/dist/entity-table/editors/relation-editor.d.ts +12 -0
  54. package/dist/entity-table/editors/relation-editor.d.ts.map +1 -1
  55. package/dist/entity-table/editors/safe-list-editor.d.ts +1 -0
  56. package/dist/entity-table/editors/safe-list-editor.d.ts.map +1 -1
  57. package/dist/entity-table/editors/tags-editor.d.ts +11 -0
  58. package/dist/entity-table/editors/tags-editor.d.ts.map +1 -1
  59. package/dist/entity-table/editors/text-format-editor.d.ts +32 -0
  60. package/dist/entity-table/editors/text-format-editor.d.ts.map +1 -0
  61. package/dist/entity-table/editors/uuid-editor.d.ts +13 -0
  62. package/dist/entity-table/editors/uuid-editor.d.ts.map +1 -1
  63. package/dist/entity-table/index.d.ts +13 -3
  64. package/dist/entity-table/index.d.ts.map +1 -1
  65. package/dist/entity-table/interfaces.d.ts +38 -0
  66. package/dist/entity-table/interfaces.d.ts.map +1 -1
  67. package/dist/entity-table/vtable/table-clipboard.d.ts +30 -1
  68. package/dist/entity-table/vtable/table-clipboard.d.ts.map +1 -1
  69. package/dist/entity-table/vtable/table-factory.d.ts +23 -3
  70. package/dist/entity-table/vtable/table-factory.d.ts.map +1 -1
  71. package/dist/entity-table/vtable/table-keyboard.d.ts +18 -1
  72. package/dist/entity-table/vtable/table-keyboard.d.ts.map +1 -1
  73. package/dist/entity-table/vtable/table-operations.d.ts +42 -1
  74. package/dist/entity-table/vtable/table-operations.d.ts.map +1 -1
  75. package/dist/entity-table/vtable/table-row-move.d.ts +88 -0
  76. package/dist/entity-table/vtable/table-row-move.d.ts.map +1 -0
  77. package/dist/entity-table/vtable/table-theme.d.ts +47 -2
  78. package/dist/entity-table/vtable/table-theme.d.ts.map +1 -1
  79. package/dist/entity-table/vtable/table-tooltip.d.ts +7 -1
  80. package/dist/entity-table/vtable/table-tooltip.d.ts.map +1 -1
  81. package/dist/entity-table/vtable/vtable-compat.d.ts +33 -5
  82. package/dist/entity-table/vtable/vtable-compat.d.ts.map +1 -1
  83. package/dist/entity-value.utils.d.ts +49 -1
  84. package/dist/entity-value.utils.d.ts.map +1 -1
  85. package/dist/index.d.ts +10 -0
  86. package/dist/index.d.ts.map +1 -1
  87. package/dist/index.js +4394 -64471
  88. package/dist/query-builder/models/operator.interface.d.ts +5 -1
  89. package/dist/query-builder/models/operator.interface.d.ts.map +1 -1
  90. package/dist/query-builder/models/query-builder-state.d.ts +31 -2
  91. package/dist/query-builder/models/query-builder-state.d.ts.map +1 -1
  92. package/dist/query-builder/models/validation.interface.d.ts +1 -1
  93. package/dist/query-builder/services/operator-registry.service.d.ts +7 -1
  94. package/dist/query-builder/services/operator-registry.service.d.ts.map +1 -1
  95. package/dist/query-builder/services/query-builder.service.d.ts +10 -4
  96. package/dist/query-builder/services/query-builder.service.d.ts.map +1 -1
  97. package/dist/query-builder/services/query-converter.service.d.ts +5 -1
  98. package/dist/query-builder/services/query-converter.service.d.ts.map +1 -1
  99. package/dist/query-builder/services/schema-parser.service.d.ts +5 -1
  100. package/dist/query-builder/services/schema-parser.service.d.ts.map +1 -1
  101. package/dist/query-builder/services/validation.service.d.ts +29 -3
  102. package/dist/query-builder/services/validation.service.d.ts.map +1 -1
  103. package/dist/query-builder/utils/date.d.ts +12 -0
  104. package/dist/query-builder/utils/date.d.ts.map +1 -1
  105. package/dist/query-builder/utils/field-tree.d.ts.map +1 -1
  106. package/dist/query-builder/utils/id.d.ts +2 -0
  107. package/dist/query-builder/utils/id.d.ts.map +1 -1
  108. package/dist/query-builder/utils/metadata-field-extractor.d.ts +13 -2
  109. package/dist/query-builder/utils/metadata-field-extractor.d.ts.map +1 -1
  110. package/dist/query-builder/utils/popover-position.d.ts +11 -0
  111. package/dist/query-builder/utils/popover-position.d.ts.map +1 -1
  112. package/dist/query-builder/utils/schema-factory.d.ts +1 -1
  113. package/dist/query-builder/utils/structural-equal.d.ts +4 -0
  114. package/dist/query-builder/utils/structural-equal.d.ts.map +1 -1
  115. package/dist/query-builder/utils/value-input.d.ts +20 -0
  116. package/dist/query-builder/utils/value-input.d.ts.map +1 -1
  117. package/dist/structural-equal.d.ts +5 -1
  118. package/dist/structural-equal.d.ts.map +1 -1
  119. package/package.json +34 -10
  120. package/src/cn.ts +21 -0
  121. package/src/entity-capabilities.ts +37 -0
  122. package/src/entity-detail/detail-tabs.ts +48 -0
  123. package/src/entity-detail/index.ts +7 -0
  124. package/src/entity-detail/interfaces.ts +55 -0
  125. package/src/entity-field.utils.ts +205 -0
  126. package/src/entity-form/form-data.ts +83 -0
  127. package/src/entity-form/form-fields.ts +48 -0
  128. package/src/entity-form/form-validation.ts +34 -0
  129. package/src/entity-form/index.ts +9 -0
  130. package/src/entity-form/interfaces.ts +116 -0
  131. package/src/entity-list/manual-order-list.ts +159 -0
  132. package/src/entity-list/types.ts +22 -0
  133. package/src/entity-table/columns/build-editable-columns.ts +184 -0
  134. package/src/entity-table/columns/column-utils.ts +657 -0
  135. package/src/entity-table/editors/color-editor.ts +239 -0
  136. package/src/entity-table/editors/date-editor.ts +169 -0
  137. package/src/entity-table/editors/enum-editor.ts +167 -0
  138. package/src/entity-table/editors/global-overlay-editor.ts +277 -0
  139. package/src/entity-table/editors/icon-list-editor.ts +130 -0
  140. package/src/entity-table/editors/json-editor.ts +212 -0
  141. package/src/entity-table/editors/key-value-editor.ts +595 -0
  142. package/src/entity-table/editors/lucide-svg.ts +78 -0
  143. package/src/entity-table/editors/multiselect-editor.ts +171 -0
  144. package/src/entity-table/editors/number-editor.ts +322 -0
  145. package/src/entity-table/editors/relation-editor.ts +316 -0
  146. package/src/entity-table/editors/safe-list-editor.ts +17 -0
  147. package/src/entity-table/editors/tags-editor.ts +239 -0
  148. package/src/entity-table/editors/text-format-editor.ts +220 -0
  149. package/src/entity-table/editors/uuid-editor.ts +198 -0
  150. package/src/entity-table/index.ts +96 -0
  151. package/src/entity-table/interfaces.ts +100 -0
  152. package/src/entity-table/vtable/table-clipboard.ts +419 -0
  153. package/src/entity-table/vtable/table-factory.ts +117 -0
  154. package/src/entity-table/vtable/table-keyboard.ts +89 -0
  155. package/src/entity-table/vtable/table-operations.ts +123 -0
  156. package/src/entity-table/vtable/table-row-move.ts +122 -0
  157. package/src/entity-table/vtable/table-theme.ts +181 -0
  158. package/src/entity-table/vtable/table-tooltip.ts +70 -0
  159. package/src/entity-table/vtable/vtable-compat.ts +84 -0
  160. package/src/entity-value.utils.ts +456 -0
  161. package/src/index.ts +58 -0
  162. package/src/query-builder/models/config.interface.ts +31 -0
  163. package/src/query-builder/models/index.ts +8 -0
  164. package/src/query-builder/models/operator.interface.ts +191 -0
  165. package/src/query-builder/models/query-builder-state.ts +222 -0
  166. package/src/query-builder/models/validation.interface.ts +184 -0
  167. package/src/query-builder/services/index.ts +9 -0
  168. package/src/query-builder/services/operator-registry.service.ts +243 -0
  169. package/src/query-builder/services/query-builder.service.ts +568 -0
  170. package/src/query-builder/services/query-converter.service.ts +153 -0
  171. package/src/query-builder/services/schema-parser.service.ts +312 -0
  172. package/src/query-builder/services/validation.service.ts +390 -0
  173. package/src/query-builder/utils/date.ts +35 -0
  174. package/src/query-builder/utils/field-tree.ts +400 -0
  175. package/src/query-builder/utils/id.ts +15 -0
  176. package/src/query-builder/utils/index.ts +12 -0
  177. package/src/query-builder/utils/metadata-field-extractor.ts +460 -0
  178. package/src/query-builder/utils/popover-position.ts +63 -0
  179. package/src/query-builder/utils/schema-factory.ts +75 -0
  180. package/src/query-builder/utils/structural-equal.ts +5 -0
  181. package/src/query-builder/utils/value-input.ts +105 -0
  182. package/src/structural-equal.ts +49 -0
@@ -1,4 +1,4 @@
1
- import { OperatorName } from '../../../packages/rxdb/src/index.ts';
1
+ import { OperatorName } from '@aiao/rxdb';
2
2
  import { PropertyType } from './query-builder-state.js';
3
3
  /**
4
4
  * 操作符定义
@@ -37,6 +37,10 @@ export type QueryBuilderOperator = OperatorName;
37
37
  export declare const DEFAULT_OPERATORS: OperatorDefinition[];
38
38
  /**
39
39
  * 根据字段类型获取适用的操作符
40
+ *
41
+ * @param type - 字段类型
42
+ * @param operators - 操作符定义列表(默认使用内置操作符 DEFAULT_OPERATORS)
43
+ * @returns 适用于该字段类型的操作符数组
40
44
  */
41
45
  export declare function getOperatorsForType(type: PropertyType, operators?: OperatorDefinition[]): OperatorDefinition[];
42
46
  //# sourceMappingURL=operator.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator.interface.d.ts","sourceRoot":"","sources":["../../../src/query-builder/models/operator.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,GAAG,EAAE,YAAY,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,SAAS,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IAE9D;;OAEG;IACH,eAAe,EAAE,YAAY,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EAsIjD,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,SAAS,GAAE,kBAAkB,EAAsB,GAClD,kBAAkB,EAAE,CAEtB"}
1
+ {"version":3,"file":"operator.interface.d.ts","sourceRoot":"","sources":["../../../src/query-builder/models/operator.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,GAAG,EAAE,YAAY,CAAC;IAElB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,SAAS,EAAE,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;IAE9D;;OAEG;IACH,eAAe,EAAE,YAAY,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,kBAAkB,EAsIjD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,SAAS,GAAE,kBAAkB,EAAsB,GAClD,kBAAkB,EAAE,CAEtB"}
@@ -1,4 +1,4 @@
1
- import { OperatorName, Rule, RuleGroup } from '../../../packages/rxdb/src/index.ts';
1
+ import { OperatorName, Rule, RuleGroup } from '@aiao/rxdb';
2
2
  /**
3
3
  * UI 规则(宽松类型,用于查询构建器组件内部)
4
4
  *
@@ -7,9 +7,21 @@ import { OperatorName, Rule, RuleGroup } from '../../../packages/rxdb/src/index.
7
7
  * 此类型提供宽松的字段类型,方便 UI 组件操作。
8
8
  */
9
9
  export interface UIRule {
10
+ /**
11
+ * 规则唯一标识符
12
+ */
10
13
  id: string;
14
+ /**
15
+ * 字段名
16
+ */
11
17
  field: string;
18
+ /**
19
+ * 操作符
20
+ */
12
21
  operator: string;
22
+ /**
23
+ * 规则值(可选)
24
+ */
13
25
  value?: unknown;
14
26
  /**
15
27
  * EXISTS/NOT EXISTS 操作符的子查询条件
@@ -38,12 +50,20 @@ export interface UIRule {
38
50
  * };
39
51
  * ```
40
52
  */
41
- export type QueryBuilderRule<T = Record<string, unknown>> = Rule<T> & {
53
+ export type QueryBuilderRule<T = Record<string, unknown>> = UIRule & {
42
54
  /**
43
55
  * 规则唯一标识符
44
56
  * 用于 React key, Angular trackBy, Vue :key
45
57
  */
46
58
  id: string;
59
+ /**
60
+ * 字段名(类型安全的实体字段键或字符串)
61
+ */
62
+ field: string | (keyof T & string);
63
+ /**
64
+ * 操作符(RxDB OperatorName 或自定义字符串)
65
+ */
66
+ operator: OperatorName | string;
47
67
  };
48
68
  /**
49
69
  * 规则组(复用 RxDB RuleGroup 类型 + UI 元数据)
@@ -149,11 +169,20 @@ export interface FieldMetadata {
149
169
  export type PropertyType = 'uuid' | 'string' | 'number' | 'boolean' | 'date' | 'array' | 'object' | 'relation' | 'enum' | 'keyValue';
150
170
  /**
151
171
  * 类型守卫:判断是否为规则组
172
+ *
173
+ * @param item - 待判断的规则或规则组
174
+ * @returns 若为规则组则返回 true,否则返回 false
152
175
  */
153
176
  export declare function isRuleGroup<T>(item: QueryBuilderRule<T> | QueryBuilderRuleGroup<T>): item is QueryBuilderRuleGroup<T>;
154
177
  /**
155
178
  * 类型守卫:判断是否为规则
179
+ *
180
+ * @param item - 待判断的规则或规则组
181
+ * @returns 若为规则则返回 true,否则返回 false
156
182
  */
157
183
  export declare function isRule<T>(item: QueryBuilderRule<T> | QueryBuilderRuleGroup<T>): item is QueryBuilderRule<T>;
184
+ /**
185
+ * 类型重导出:操作符名及 RxDB 原生规则、规则组类型
186
+ */
158
187
  export type { OperatorName, Rule, RuleGroup };
159
188
  //# sourceMappingURL=query-builder-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-builder-state.d.ts","sourceRoot":"","sources":["../../../src/query-builder/models/query-builder-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-builder-state.d.ts","sourceRoot":"","sources":["../../../src/query-builder/models/query-builder-state.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { OperatorName } from '../../../packages/rxdb/src/index.ts';
1
+ import { OperatorName } from '@aiao/rxdb';
2
2
  import { PropertyType } from './query-builder-state.js';
3
3
  /**
4
4
  * 验证规则
@@ -1,4 +1,4 @@
1
- import { OperatorName } from '../../../packages/rxdb/src/index.ts';
1
+ import { OperatorName } from '@aiao/rxdb';
2
2
  import { OperatorDefinition } from '../models/operator.interface.js';
3
3
  import { FieldMetadata, PropertyType } from '../models/query-builder-state.js';
4
4
  /**
@@ -26,6 +26,7 @@ export declare class OperatorRegistry {
26
26
  * 获取操作符数量
27
27
  */
28
28
  get size(): number;
29
+ /** @param options - 初始注册的操作符集合 */
29
30
  constructor(options?: OperatorRegistryOptions);
30
31
  /**
31
32
  * 注册新操作符
@@ -123,10 +124,15 @@ export declare class OperatorRegistry {
123
124
  }
124
125
  /**
125
126
  * 创建 OperatorRegistry 实例的工厂函数
127
+ *
128
+ * @param options - 操作符注册表选项
129
+ * @returns 新的 OperatorRegistry 实例
126
130
  */
127
131
  export declare function createOperatorRegistry(options?: OperatorRegistryOptions): OperatorRegistry;
128
132
  /**
129
133
  * 获取默认操作符注册表
134
+ *
135
+ * @returns 全局共享的默认 OperatorRegistry 实例(懒初始化)
130
136
  */
131
137
  export declare function getDefaultOperatorRegistry(): OperatorRegistry;
132
138
  //# sourceMappingURL=operator-registry.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator-registry.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/operator-registry.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAEjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwC;IAElE;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;gBAEW,OAAO,GAAE,uBAA4B;IAkBjD;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IAI5C;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,kBAAkB,EAAE,GAAG,IAAI;IAMnD;;;;;OAKG;IACH,UAAU,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO;IAItC;;;;;OAKG;IACH,GAAG,CAAC,GAAG,EAAE,YAAY,GAAG,kBAAkB,GAAG,SAAS;IAItD;;;;OAIG;IACH,MAAM,IAAI,kBAAkB,EAAE;IAI9B;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,SAAS,EAAE,YAAY,GAAG,kBAAkB,EAAE;IAIzD;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,kBAAkB,EAAE;IAyBvD;;;;;;OAMG;IACH,0BAA0B,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,GAAG,OAAO;IAKvF;;;;;;OAMG;IACH,2BAA2B,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO;IAIrF;;;;;OAKG;IACH,YAAY,CAAC,WAAW,EAAE,YAAY,GAAG,kBAAkB,CAAC,WAAW,CAAC,GAAG,SAAS;IAKpF;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,KAAK,IAAI,IAAI;CAMd;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,gBAAgB,CAE1F;AAOD;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,gBAAgB,CAK7D"}
1
+ {"version":3,"file":"operator-registry.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/operator-registry.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC7F,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAEjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwC;IAElE;;OAEG;IACH,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,kCAAkC;gBACtB,OAAO,GAAE,uBAA4B;IAkBjD;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IAI5C;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,kBAAkB,EAAE,GAAG,IAAI;IAMnD;;;;;OAKG;IACH,UAAU,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO;IAItC;;;;;OAKG;IACH,GAAG,CAAC,GAAG,EAAE,YAAY,GAAG,kBAAkB,GAAG,SAAS;IAItD;;;;OAIG;IACH,MAAM,IAAI,kBAAkB,EAAE;IAI9B;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,SAAS,EAAE,YAAY,GAAG,kBAAkB,EAAE;IAIzD;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,kBAAkB,EAAE;IAyBvD;;;;;;OAMG;IACH,0BAA0B,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,GAAG,OAAO;IAKvF;;;;;;OAMG;IACH,2BAA2B,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO;IAIrF;;;;;OAKG;IACH,YAAY,CAAC,WAAW,EAAE,YAAY,GAAG,kBAAkB,CAAC,WAAW,CAAC,GAAG,SAAS;IAKpF;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,KAAK,IAAI,IAAI;CAMd;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,gBAAgB,CAE1F;AAOD;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,gBAAgB,CAK7D"}
@@ -1,7 +1,7 @@
1
- import { RuleGroup } from '../../../packages/rxdb/src/index.ts';
1
+ import { RuleGroup } from '@aiao/rxdb';
2
2
  import { Observable } from 'rxjs';
3
3
  import { QueryBuilderConfig } from '../models/config.interface.js';
4
- import { FieldMetadata, QueryBuilderRule, QueryBuilderRuleGroup, QueryBuilderState } from '../models/query-builder-state.js';
4
+ import { FieldMetadata, QueryBuilderRuleGroup, QueryBuilderState, UIRule } from '../models/query-builder-state.js';
5
5
  import { ValidationResult } from '../models/validation.interface.js';
6
6
  import { OperatorRegistry } from './operator-registry.service.js';
7
7
  import { QueryConverter } from './query-converter.service.js';
@@ -67,6 +67,7 @@ export declare class QueryBuilderService<T = Record<string, unknown>> {
67
67
  * RxDB Query 格式的 Observable
68
68
  */
69
69
  readonly query$: Observable<RuleGroup<T>>;
70
+ /** @param options - 查询构建器配置(schema / initialQuery / 嵌套上限等) */
70
71
  constructor(options?: QueryBuilderServiceOptions<T>);
71
72
  /**
72
73
  * 获取当前状态快照
@@ -99,7 +100,7 @@ export declare class QueryBuilderService<T = Record<string, unknown>> {
99
100
  /**
100
101
  * 添加规则
101
102
  */
102
- addRule(parentGroupId?: string | null, rule?: Partial<Omit<QueryBuilderRule<T>, 'id'>>): string;
103
+ addRule(parentGroupId?: string | null, rule?: Partial<Omit<UIRule, 'id'>>): string;
103
104
  /**
104
105
  * 添加规则组
105
106
  */
@@ -107,7 +108,7 @@ export declare class QueryBuilderService<T = Record<string, unknown>> {
107
108
  /**
108
109
  * 更新规则
109
110
  */
110
- updateRule(ruleId: string, updates: Partial<Omit<QueryBuilderRule<T>, 'id'>>): void;
111
+ updateRule(ruleId: string, updates: Partial<Omit<UIRule, 'id'>>): void;
111
112
  /**
112
113
  * 更新组的组合器
113
114
  */
@@ -152,11 +153,16 @@ export declare class QueryBuilderService<T = Record<string, unknown>> {
152
153
  private removeItemFromGroup;
153
154
  private getGroupDepth;
154
155
  private findItem;
156
+ private findGroup;
157
+ private getGroupHeight;
155
158
  private isDescendant;
156
159
  private insertItemInGroup;
157
160
  }
158
161
  /**
159
162
  * 创建 QueryBuilderService 实例的工厂函数
163
+ *
164
+ * @param options - 服务选项
165
+ * @returns 新的 QueryBuilderService 实例
160
166
  */
161
167
  export declare function createQueryBuilderService<T = Record<string, unknown>>(options?: QueryBuilderServiceOptions<T>): QueryBuilderService<T>;
162
168
  //# sourceMappingURL=query-builder.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-builder.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/query-builder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-builder.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/query-builder.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAmB,UAAU,EAA6B,MAAM,MAAM,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,KAAK,EACV,aAAa,EAEb,qBAAqB,EACrB,iBAAiB,EACjB,MAAM,EACP,MAAM,kCAAkC,CAAC;AAE1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAG1E,OAAO,EAAE,gBAAgB,EAA0B,MAAM,gCAAgC,CAAC;AAC1F,OAAO,EAAE,cAAc,EAAwB,MAAM,8BAA8B,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAsD,MAAM,yBAAyB,CAAC;AAEhH;;GAEG;AACH,MAAM,WAAW,0BAA0B,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrE;;OAEG;IACH,YAAY,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAEpC;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAE5B;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAE/B;;OAEG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;OAEG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;CACpC;AA2BD;;;GAGG;AACH,qBAAa,mBAAmB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwC;IACrE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoB;IACnD,OAAO,CAAC,sBAAsB,CAAS;IAEvC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAElD;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1D;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAEnD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1C,8DAA8D;gBAClD,OAAO,GAAE,0BAA0B,CAAC,CAAC,CAAM;IAyDvD;;OAEG;IACH,QAAQ,IAAI,iBAAiB,CAAC,CAAC,CAAC;IAIhC;;OAEG;IACH,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC;IAIlC;;OAEG;IACH,kBAAkB,IAAI,MAAM;IAI5B;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIvC;;OAEG;IACH,SAAS,IAAI,aAAa,EAAE;IAI5B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI;IAOxC;;OAEG;IACH,mBAAmB,IAAI,gBAAgB;IAMvC;;OAEG;IACH,OAAO,CAAC,aAAa,GAAE,MAAM,GAAG,IAAW,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,MAAM;IAqBxF;;OAEG;IACH,QAAQ,CAAC,aAAa,GAAE,MAAM,GAAG,IAAW,EAAE,UAAU,GAAE,KAAK,GAAG,IAAyB,GAAG,MAAM;IAyBpG;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI;IAUtE;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,GAAG,IAAI,GAAG,IAAI;IAMtE;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAY5B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAqC1E;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,OAAO,IAAI,IAAI;IAMf;;OAEG;IACH,WAAW,IAAI,SAAS,CAAC,CAAC,CAAC;IAI3B;;;;;OAKG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC,GAAG,IAAI;IAOnE;;OAEG;IACH,QAAQ,IAAI,gBAAgB;IAO5B;;OAEG;IACH,OAAO,IAAI,OAAO;IAMlB,OAAO,CAAC,cAAc;IAuBtB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,QAAQ;IAchB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,iBAAiB;CAuB1B;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnE,OAAO,CAAC,EAAE,0BAA0B,CAAC,CAAC,CAAC,GACtC,mBAAmB,CAAC,CAAC,CAAC,CAExB"}
@@ -1,4 +1,4 @@
1
- import { RuleGroup } from '../../../packages/rxdb/src/index.ts';
1
+ import { RuleGroup } from '@aiao/rxdb';
2
2
  import { QueryBuilderState } from '../models/query-builder-state.js';
3
3
  /**
4
4
  * 转换选项
@@ -18,6 +18,7 @@ export declare class QueryConverter<T = Record<string, unknown>> {
18
18
  private readonly idGenerator;
19
19
  /** 不需要 value 字段的操作符 */
20
20
  private readonly noValueOperators;
21
+ /** @param options - 转换器配置 */
21
22
  constructor(options?: QueryConverterOptions);
22
23
  /**
23
24
  * 将 QueryBuilder 状态转换为 RxDB Query
@@ -67,6 +68,9 @@ export declare class QueryConverter<T = Record<string, unknown>> {
67
68
  }
68
69
  /**
69
70
  * 创建 QueryConverter 实例的工厂函数
71
+ *
72
+ * @param options - 转换选项
73
+ * @returns 新的 QueryConverter 实例
70
74
  */
71
75
  export declare function createQueryConverter<T = Record<string, unknown>>(options?: QueryConverterOptions): QueryConverter<T>;
72
76
  //# sourceMappingURL=query-converter.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-converter.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/query-converter.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAQ,SAAS,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAA2C,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAInH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,qBAAa,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAE3C,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuD;gBAE5E,OAAO,GAAE,qBAA0B;IAI/C;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAItD;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;IASxD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IASzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAM5B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,CAEpH"}
1
+ {"version":3,"file":"query-converter.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/query-converter.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAQ,SAAS,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAA2C,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAInH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,qBAAa,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAE3C,uBAAuB;IACvB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuD;IAExF,6BAA6B;gBACjB,OAAO,GAAE,qBAA0B;IAI/C;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;IAItD;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;IASxD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAazB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAM5B;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,CAEpH"}
@@ -1,4 +1,4 @@
1
- import { EntityMetadata } from '../../../packages/rxdb/src/index.ts';
1
+ import { EntityMetadata } from '@aiao/rxdb';
2
2
  import { FieldMetadata } from '../models/query-builder-state.js';
3
3
  /**
4
4
  * 解析器配置选项
@@ -42,6 +42,7 @@ export interface SchemaParserOptions {
42
42
  export declare class SchemaParser {
43
43
  private readonly options;
44
44
  private readonly relationFieldsCache;
45
+ /** @param options - 解析器配置(含关系目标字段递归解析缓存) */
45
46
  constructor(options?: SchemaParserOptions);
46
47
  /**
47
48
  * 从 EntityMetadata 解析字段元数据
@@ -79,6 +80,9 @@ export declare class SchemaParser {
79
80
  }
80
81
  /**
81
82
  * 创建 SchemaParser 实例的工厂函数
83
+ *
84
+ * @param options - 解析器配置选项
85
+ * @returns 新的 SchemaParser 实例
82
86
  */
83
87
  export declare function createSchemaParser(options?: SchemaParserOptions): SchemaParser;
84
88
  //# sourceMappingURL=schema-parser.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-parser.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/schema-parser.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAA0C,MAAM,YAAY,CAAC;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAqBtE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEhD;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC;IAEhD;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;CAC3F;AA4BD;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAEtB;IAEF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsC;gBAE9D,OAAO,GAAE,mBAAwB;IAW7C;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,QAAQ,EAAE,cAAc,GAAG,aAAa,EAAE;IAwDhD;;;;;OAKG;IACH,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC;IAUjF;;OAEG;IACH,OAAO,CAAC,aAAa;IA8CrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,aAAa;CAsCtB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY,CAE9E"}
1
+ {"version":3,"file":"schema-parser.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/schema-parser.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAA0C,MAAM,YAAY,CAAC;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAqBtE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEhD;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,OAAO,CAAC;IAEhD;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;CAC3F;AA+BD;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAEtB;IAEF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsC;IAE1E,4CAA4C;gBAChC,OAAO,GAAE,mBAAwB;IAW7C;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,QAAQ,EAAE,cAAc,GAAG,aAAa,EAAE;IAwDhD;;;;;OAKG;IACH,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC;IAUjF;;OAEG;IACH,OAAO,CAAC,aAAa;IA8CrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,aAAa;CAsCtB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,YAAY,CAE9E"}
@@ -1,6 +1,27 @@
1
- import { FieldMetadata, QueryBuilderRule, QueryBuilderRuleGroup } from '../models/query-builder-state.js';
1
+ import { FieldMetadata, QueryBuilderRule, UIRule } from '../models/query-builder-state.js';
2
2
  import { ValidationResult, ValidationRule } from '../models/validation.interface.js';
3
3
  import { OperatorRegistry } from './operator-registry.service.js';
4
+ /**
5
+ * 单条校验规则输入(兼容 QueryBuilderRule 与 UIRule)
6
+ */
7
+ type ValidationRuleInput = QueryBuilderRule<Record<string, unknown>> | UIRule;
8
+ /**
9
+ * 校验规则组输入(宽松递归结构)
10
+ */
11
+ export type ValidationGroupInput = {
12
+ /**
13
+ * 规则组唯一标识符
14
+ */
15
+ id: string;
16
+ /**
17
+ * 逻辑组合符
18
+ */
19
+ combinator: 'and' | 'or';
20
+ /**
21
+ * 子规则列表(支持嵌套)
22
+ */
23
+ rules: Array<ValidationRuleInput | ValidationGroupInput>;
24
+ };
4
25
  /**
5
26
  * 校验服务选项
6
27
  */
@@ -26,15 +47,16 @@ export interface ValidationServiceOptions {
26
47
  export declare class ValidationService {
27
48
  private readonly rules;
28
49
  private readonly operatorRegistry;
50
+ /** @param options - 校验服务配置(自定义规则等) */
29
51
  constructor(options?: ValidationServiceOptions);
30
52
  /**
31
53
  * 校验单条规则
32
54
  */
33
- validateRule<T>(rule: QueryBuilderRule<T>, field: FieldMetadata): ValidationResult;
55
+ validateRule(rule: ValidationRuleInput, field: FieldMetadata): ValidationResult;
34
56
  /**
35
57
  * 校验整个规则组
36
58
  */
37
- validateGroup<T>(group: QueryBuilderRuleGroup<T>, fields: Map<string, FieldMetadata>): ValidationResult;
59
+ validateGroup(group: ValidationGroupInput, fields: Map<string, FieldMetadata>): ValidationResult;
38
60
  /**
39
61
  * 注册自定义校验规则
40
62
  */
@@ -62,6 +84,10 @@ export declare class ValidationService {
62
84
  }
63
85
  /**
64
86
  * 创建 ValidationService 实例的工厂函数
87
+ *
88
+ * @param options - 校验服务选项
89
+ * @returns 新的 ValidationService 实例
65
90
  */
66
91
  export declare function createValidationService(options?: ValidationServiceOptions): ValidationService;
92
+ export {};
67
93
  //# sourceMappingURL=validation.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/validation.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAE/G,OAAO,KAAK,EAGV,gBAAgB,EAChB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAA8B,MAAM,gCAAgC,CAAC;AAU9F;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAE/B;;OAEG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiBD;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;gBAExC,OAAO,GAAE,wBAA6B;IAmBlD;;OAEG;IACH,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,GAAG,gBAAgB;IA8FlF;;OAEG;IACH,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,gBAAgB;IAiCvG;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAIxC;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC;;OAEG;IACH,QAAQ,IAAI,cAAc,EAAE;IAI5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoDzB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;CAgD9B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,iBAAiB,CAE7F"}
1
+ {"version":3,"file":"validation.service.d.ts","sourceRoot":"","sources":["../../../src/query-builder/services/validation.service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAyB,MAAM,EAAE,MAAM,kCAAkC,CAAC;AACvH,OAAO,KAAK,EAGV,gBAAgB,EAChB,cAAc,EACf,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAA8B,MAAM,gCAAgC,CAAC;AAE9F;;GAEG;AACH,KAAK,mBAAmB,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IAEzB;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC,mBAAmB,GAAG,oBAAoB,CAAC,CAAC;CAC1D,CAAC;AAkBF;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAE/B;;OAEG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAiBD;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IAEpD,sCAAsC;gBAC1B,OAAO,GAAE,wBAA6B;IAalD;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,aAAa,GAAG,gBAAgB;IA8F/E;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,gBAAgB;IAiChG;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAIxC;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC;;OAEG;IACH,QAAQ,IAAI,cAAc,EAAE;IAI5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoDzB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;CAgD9B;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,iBAAiB,CAE7F"}
@@ -1,3 +1,15 @@
1
+ /**
2
+ * 将日期格式化为 YYYY-MM-DD 字符串。
3
+ *
4
+ * @param date 要格式化的日期(Date 对象或可解析的日期字符串)
5
+ * @returns YYYY-MM-DD 格式的日期字符串;输入为空值或无法解析时返回空字符串
6
+ */
1
7
  export declare function formatDateToYmd(date: Date | string | null | undefined): string;
8
+ /**
9
+ * 将 YYYY-MM-DD 字符串解析为本地时区的 Date。
10
+ *
11
+ * @param ymd YYYY-MM-DD 格式的日期字符串
12
+ * @returns 本地时区当天 00:00:00 的 Date 对象;输入为空、段数不为 3 或任一段 parseInt 结果为 NaN 时返回 null
13
+ */
2
14
  export declare function parseYmdToLocalDate(ymd: string | null | undefined): Date | null;
3
15
  //# sourceMappingURL=date.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/date.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAQ9E;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAY/E"}
1
+ {"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/date.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAQ9E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAY/E"}
@@ -1 +1 @@
1
- {"version":3,"file":"field-tree.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/field-tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKpF;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,cAAc;IACd,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,cAAc;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU;IACV,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU;IACV,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,iCAAiC;IACjC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,gCAAgC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAkHvE;AAiED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,aAAa,EAAE,EACtB,SAAS,SAAQ,EACjB,MAAM,SAAK,GACV,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAWzC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAWhG;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAcpF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,SAAK,GAAG,MAAM,EAAE,CAE9D;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAmB/E"}
1
+ {"version":3,"file":"field-tree.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/field-tree.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAcpF;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,cAAc;IACd,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,cAAc;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU;IACV,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU;IACV,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,iCAAiC;IACjC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,gCAAgC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAoHvE;AAoDD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,aAAa,EAAE,EACtB,SAAS,SAAQ,EACjB,MAAM,SAAK,GACV,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAIzC;AAmBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAWhG;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAcpF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,SAAK,GAAG,MAAM,EAAE,CAE9D;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAyB/E"}
@@ -4,6 +4,8 @@
4
4
  /**
5
5
  * 生成唯一 ID
6
6
  * 用于 QueryBuilder 规则和规则组的标识
7
+ *
8
+ * @returns 唯一 ID 字符串(uuid v7)
7
9
  */
8
10
  export declare function generateId(): string;
9
11
  //# sourceMappingURL=id.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/id.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;GAGG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC"}
1
+ {"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/id.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;GAKG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC"}
@@ -1,21 +1,29 @@
1
- import { EntityMetadata, EntityRelationMetadata, KeyValuePropertyMetadata, PropertyType } from '../../../packages/rxdb/src/index.ts';
1
+ import { EntityMetadata, EntityRelationMetadata, KeyValuePropertyMetadata, PropertyType } from '@aiao/rxdb';
2
2
  import { FieldMetadata, PropertyType as QBPropertyType } from '../models/query-builder-state.js';
3
3
  /**
4
4
  * 模型信息接口
5
5
  */
6
6
  export interface ModelInfo {
7
+ /** 实体名称 */
7
8
  name: string;
9
+ /** 实体显示名称 */
8
10
  displayName: string;
9
- entityClass: new (...args: any[]) => unknown;
11
+ /** 实体类构造函数 */
12
+ entityClass: new (...args: never[]) => unknown;
13
+ /** RxDB 实体元数据 */
10
14
  metadata: EntityMetadata;
11
15
  }
12
16
  /**
13
17
  * 查询示例接口
14
18
  */
15
19
  export interface QueryExample {
20
+ /** 示例名称 */
16
21
  name: string;
22
+ /** 示例描述 */
17
23
  description: string;
24
+ /** 示例对应的模型名称 */
18
25
  modelName: string;
26
+ /** 示例查询内容(结构由具体模型决定) */
19
27
  query: unknown;
20
28
  }
21
29
  /**
@@ -114,6 +122,9 @@ export declare function extractFieldsFromMetadata(metadata: EntityMetadata, allM
114
122
  export declare function extractRelationTargetFields(metadata: EntityMetadata, config?: FieldExtractorConfig): FieldMetadata[];
115
123
  /**
116
124
  * 从 keyValue 属性的 properties 提取子字段列表
125
+ *
126
+ * @param properties keyValue 属性的子属性元数据列表
127
+ * @returns 子字段元数据列表
117
128
  */
118
129
  export declare function extractKeyValueFields(properties: KeyValuePropertyMetadata[]): FieldMetadata[];
119
130
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"metadata-field-extractor.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/metadata-field-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,YAAY,EAAgB,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,IAAI,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEtG;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IAEpB,WAAW,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;IAC7C,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAYD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAyBlE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,EAAE,CAKhF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EACjC,MAAM,GAAE,oBAAyB,GAChC,aAAa,EAAE,CAEjB;AAkJD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,MAAM,GAAE,oBAAyB,GAChC,aAAa,EAAE,CAgDjB;AAmBD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,wBAAwB,EAAE,GAAG,aAAa,EAAE,CAQ7F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAOvE"}
1
+ {"version":3,"file":"metadata-field-extractor.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/metadata-field-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,EAAE,YAAY,EAAgB,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,IAAI,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEtG;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,WAAW,EAAE,MAAM,CAAC;IAEpB,cAAc;IACd,WAAW,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;IAC/C,iBAAiB;IACjB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAYD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAyBlE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,EAAE,CAKhF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EACjC,MAAM,GAAE,oBAAyB,GAChC,aAAa,EAAE,CAEjB;AAyJD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,MAAM,GAAE,oBAAyB,GAChC,aAAa,EAAE,CAmDjB;AAmBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,wBAAwB,EAAE,GAAG,aAAa,EAAE,CAQ7F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAcvE"}
@@ -4,6 +4,7 @@
4
4
  * @param triggerRect 触发按钮的 DOMRect
5
5
  * @param gap 触发元素与弹出层之间的间距(单位 px,默认 2)
6
6
  * @param minSpaceBelow 判断下方空间是否充足的阈值(单位 px,默认 120)
7
+ * @returns 弹出层定位信息:left、minWidth,以及 top(下方展示)或 bottom(上方展示)
7
8
  */
8
9
  export declare function calcPopoverPosition(triggerRect: DOMRect, gap?: number, minSpaceBelow?: number): {
9
10
  left: number;
@@ -13,10 +14,20 @@ export declare function calcPopoverPosition(triggerRect: DOMRect, gap?: number,
13
14
  };
14
15
  /**
15
16
  * 将 calcPopoverPosition 的结果直接应用到弹出层 DOM 元素。
17
+ *
18
+ * @param el 弹出层 DOM 元素
19
+ * @param triggerRect 触发按钮的 DOMRect
20
+ * @param gap 触发元素与弹出层之间的间距(单位 px,默认 2)
21
+ * @param minSpaceBelow 判断下方空间是否充足的阈值(单位 px,默认 120)
16
22
  */
17
23
  export declare function applyPopoverPosition(el: HTMLElement, triggerRect: DOMRect, gap?: number, minSpaceBelow?: number): void;
18
24
  /**
19
25
  * 在弹出层选项列表中查找匹配项的 label。
26
+ *
27
+ * @param options 选项列表(value 为选中值、label 为显示文本)
28
+ * @param selected 当前选中的 value
29
+ * @param placeholder 未找到匹配项时返回的占位文本
30
+ * @returns 匹配项的 label;未找到时返回 placeholder
20
31
  */
21
32
  export declare function findOptionLabel(options: ReadonlyArray<{
22
33
  value: string;
@@ -1 +1 @@
1
- {"version":3,"file":"popover-position.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/popover-position.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,OAAO,EACpB,GAAG,SAAI,EACP,aAAa,SAAM,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAMnE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,SAAI,EAAE,aAAa,SAAM,GAAG,IAAI,CAc9G;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EACxD,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,MAAM,CAER"}
1
+ {"version":3,"file":"popover-position.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/popover-position.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,OAAO,EACpB,GAAG,SAAI,EACP,aAAa,SAAM,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAMnE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,SAAI,EAAE,aAAa,SAAM,GAAG,IAAI,CAkB9G;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EACxD,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,MAAM,CAER"}
@@ -1,4 +1,4 @@
1
- import { EntityMetadata } from '../../../packages/rxdb/src/index.ts';
1
+ import { EntityMetadata } from '@aiao/rxdb';
2
2
  import { FieldMetadata } from '../models/query-builder-state.js';
3
3
  import { SchemaParserOptions } from '../services/schema-parser.service.js';
4
4
  /**
@@ -1,2 +1,6 @@
1
+ /**
2
+ * 重新导出 structuralEqual:结构化深比较,替代 JSON.stringify 比较。
3
+ * 递归比较对象和数组,不依赖 key 序列化顺序,支持循环引用检测。
4
+ */
1
5
  export { structuralEqual } from '../../structural-equal.js';
2
6
  //# sourceMappingURL=structural-equal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"structural-equal.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/structural-equal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"structural-equal.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/structural-equal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC"}
@@ -1,11 +1,31 @@
1
1
  import { UUID_RE } from '../../entity-value.utils.js';
2
2
  import { OperatorRegistry } from '../services/operator-registry.service.js';
3
+ /** 标准 UUID 格式正则(8-4-4-4-12 十六进制,忽略大小写),重新导出供校验使用 */
3
4
  export { UUID_RE };
5
+ /**
6
+ * 根据字段类型和运算符确定查询条件值的输入控件类型。
7
+ *
8
+ * @param fieldType 字段类型(如 'string'、'number'、'date'、'enum' 等)
9
+ * @param operator 运算符 key(如 'between'、'in'、'null' 等)
10
+ * @param enumOptions 字段的枚举选项列表
11
+ * @param operatorRegistry 运算符注册表(默认使用全局默认注册表)
12
+ * @returns 输入控件类型标识(如 'string'、'number'、'boolean'、'date'、'range'、'array'、'enum'、'enum-array'、'subquery'、'uuid'、'none')
13
+ */
4
14
  export declare function getInputType(fieldType: string, operator: string, enumOptions?: unknown[], operatorRegistry?: OperatorRegistry): string;
15
+ /**
16
+ * 返回指定输入控件类型的默认值。
17
+ *
18
+ * @param type 输入控件类型(getInputType 的返回值)
19
+ * @returns 对应类型的默认值:boolean 为 false、range/array/enum-array 为 []、subquery 为 undefined、none/number/date 为 null、其余为 ''
20
+ */
5
21
  export declare function getDefaultValueForType(type: string): unknown;
6
22
  /**
7
23
  * 将逗号分隔的字符串解析为数组。
8
24
  * 当 fieldType 为 'number' 时返回数字数组,否则返回字符串数组。
25
+ *
26
+ * @param text 逗号分隔的字符串
27
+ * @param fieldType 字段类型;为 'number' 时各项解析为数字并过滤无效值
28
+ * @returns 解析后的数组(空白项被过滤)
9
29
  */
10
30
  export declare function parseCommaSeparatedInput(text: string, fieldType: string): unknown[];
11
31
  //# sourceMappingURL=value-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"value-input.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/value-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAGjF,OAAO,EAAE,OAAO,EAAE,CAAC;AAEnB,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,OAAO,EAAE,EACvB,gBAAgB,GAAE,gBAA+C,GAChE,MAAM,CAiCR;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAqB5D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE,CASnF"}
1
+ {"version":3,"file":"value-input.d.ts","sourceRoot":"","sources":["../../../src/query-builder/utils/value-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAGtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAGjF,oDAAoD;AACpD,OAAO,EAAE,OAAO,EAAE,CAAC;AAEnB;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,OAAO,EAAE,EACvB,gBAAgB,GAAE,gBAA+C,GAChE,MAAM,CAiCR;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAqB5D;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE,CASnF"}
@@ -2,6 +2,10 @@
2
2
  * 结构化深比较,替代 JSON.stringify 比较。
3
3
  * 递归比较对象和数组,不依赖 key 序列化顺序。
4
4
  * 支持循环引用检测,避免无限递归。
5
+ * @param a - 参与比较的第一个值
6
+ * @param b - 参与比较的第二个值
7
+ * @param seen - 已访问的对象集合,用于循环引用检测
8
+ * @returns 两者结构相等时返回 true
5
9
  */
6
- export declare function structuralEqual(a: unknown, b: unknown, seen?: WeakSet<object>): boolean;
10
+ export declare function structuralEqual(a: unknown, b: unknown): boolean;
7
11
  //# sourceMappingURL=structural-equal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"structural-equal.d.ts","sourceRoot":"","sources":["../src/structural-equal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,kBAAwB,GAAG,OAAO,CA+B7F"}
1
+ {"version":3,"file":"structural-equal.d.ts","sourceRoot":"","sources":["../src/structural-equal.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAE/D"}