@terascope/data-types 2.15.0 → 2.16.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 (133) hide show
  1. package/dist/src/data-type.d.ts +55 -1
  2. package/dist/src/data-type.d.ts.map +1 -1
  3. package/dist/src/data-type.js +55 -1
  4. package/dist/src/data-type.js.map +1 -1
  5. package/dist/src/types/base-type.d.ts +29 -0
  6. package/dist/src/types/base-type.d.ts.map +1 -1
  7. package/dist/src/types/base-type.js +29 -0
  8. package/dist/src/types/base-type.js.map +1 -1
  9. package/dist/src/types/group-type.d.ts +25 -0
  10. package/dist/src/types/group-type.d.ts.map +1 -1
  11. package/dist/src/types/group-type.js +25 -0
  12. package/dist/src/types/group-type.js.map +1 -1
  13. package/dist/src/types/tuple-type.d.ts +34 -0
  14. package/dist/src/types/tuple-type.d.ts.map +1 -1
  15. package/dist/src/types/tuple-type.js +34 -0
  16. package/dist/src/types/tuple-type.js.map +1 -1
  17. package/dist/src/types/v1/any.d.ts +26 -0
  18. package/dist/src/types/v1/any.d.ts.map +1 -1
  19. package/dist/src/types/v1/any.js +26 -0
  20. package/dist/src/types/v1/any.js.map +1 -1
  21. package/dist/src/types/v1/binary.d.ts +24 -0
  22. package/dist/src/types/v1/binary.d.ts.map +1 -1
  23. package/dist/src/types/v1/binary.js +24 -0
  24. package/dist/src/types/v1/binary.js.map +1 -1
  25. package/dist/src/types/v1/boolean.d.ts +14 -0
  26. package/dist/src/types/v1/boolean.d.ts.map +1 -1
  27. package/dist/src/types/v1/boolean.js +14 -0
  28. package/dist/src/types/v1/boolean.js.map +1 -1
  29. package/dist/src/types/v1/boundary.d.ts +21 -0
  30. package/dist/src/types/v1/boundary.d.ts.map +1 -1
  31. package/dist/src/types/v1/boundary.js +21 -0
  32. package/dist/src/types/v1/boundary.js.map +1 -1
  33. package/dist/src/types/v1/byte.d.ts +18 -0
  34. package/dist/src/types/v1/byte.d.ts.map +1 -1
  35. package/dist/src/types/v1/byte.js +18 -0
  36. package/dist/src/types/v1/byte.js.map +1 -1
  37. package/dist/src/types/v1/date.d.ts +19 -0
  38. package/dist/src/types/v1/date.d.ts.map +1 -1
  39. package/dist/src/types/v1/date.js +19 -0
  40. package/dist/src/types/v1/date.js.map +1 -1
  41. package/dist/src/types/v1/domain.d.ts +24 -0
  42. package/dist/src/types/v1/domain.d.ts.map +1 -1
  43. package/dist/src/types/v1/domain.js +24 -0
  44. package/dist/src/types/v1/domain.js.map +1 -1
  45. package/dist/src/types/v1/double.d.ts +15 -0
  46. package/dist/src/types/v1/double.d.ts.map +1 -1
  47. package/dist/src/types/v1/double.js +15 -0
  48. package/dist/src/types/v1/double.js.map +1 -1
  49. package/dist/src/types/v1/float.d.ts +17 -0
  50. package/dist/src/types/v1/float.d.ts.map +1 -1
  51. package/dist/src/types/v1/float.js +17 -0
  52. package/dist/src/types/v1/float.js.map +1 -1
  53. package/dist/src/types/v1/geo-json.d.ts +18 -0
  54. package/dist/src/types/v1/geo-json.d.ts.map +1 -1
  55. package/dist/src/types/v1/geo-json.js +18 -0
  56. package/dist/src/types/v1/geo-json.js.map +1 -1
  57. package/dist/src/types/v1/geo-point.d.ts +19 -0
  58. package/dist/src/types/v1/geo-point.d.ts.map +1 -1
  59. package/dist/src/types/v1/geo-point.js +19 -0
  60. package/dist/src/types/v1/geo-point.js.map +1 -1
  61. package/dist/src/types/v1/geo.d.ts +20 -0
  62. package/dist/src/types/v1/geo.d.ts.map +1 -1
  63. package/dist/src/types/v1/geo.js +20 -1
  64. package/dist/src/types/v1/geo.js.map +1 -1
  65. package/dist/src/types/v1/hostname.d.ts +20 -0
  66. package/dist/src/types/v1/hostname.d.ts.map +1 -1
  67. package/dist/src/types/v1/hostname.js +20 -0
  68. package/dist/src/types/v1/hostname.js.map +1 -1
  69. package/dist/src/types/v1/integer.d.ts +18 -0
  70. package/dist/src/types/v1/integer.d.ts.map +1 -1
  71. package/dist/src/types/v1/integer.js +18 -0
  72. package/dist/src/types/v1/integer.js.map +1 -1
  73. package/dist/src/types/v1/ip-range.d.ts +16 -0
  74. package/dist/src/types/v1/ip-range.d.ts.map +1 -1
  75. package/dist/src/types/v1/ip-range.js +16 -0
  76. package/dist/src/types/v1/ip-range.js.map +1 -1
  77. package/dist/src/types/v1/ip.d.ts +15 -0
  78. package/dist/src/types/v1/ip.d.ts.map +1 -1
  79. package/dist/src/types/v1/ip.js +15 -0
  80. package/dist/src/types/v1/ip.js.map +1 -1
  81. package/dist/src/types/v1/keyword-case-insensitive.d.ts +23 -0
  82. package/dist/src/types/v1/keyword-case-insensitive.d.ts.map +1 -1
  83. package/dist/src/types/v1/keyword-case-insensitive.js +23 -0
  84. package/dist/src/types/v1/keyword-case-insensitive.js.map +1 -1
  85. package/dist/src/types/v1/keyword-path-analyzer.d.ts +19 -0
  86. package/dist/src/types/v1/keyword-path-analyzer.d.ts.map +1 -1
  87. package/dist/src/types/v1/keyword-path-analyzer.js +19 -0
  88. package/dist/src/types/v1/keyword-path-analyzer.js.map +1 -1
  89. package/dist/src/types/v1/keyword-tokens-case-insensitive.d.ts +20 -0
  90. package/dist/src/types/v1/keyword-tokens-case-insensitive.d.ts.map +1 -1
  91. package/dist/src/types/v1/keyword-tokens-case-insensitive.js +20 -0
  92. package/dist/src/types/v1/keyword-tokens-case-insensitive.js.map +1 -1
  93. package/dist/src/types/v1/keyword-tokens.d.ts +18 -0
  94. package/dist/src/types/v1/keyword-tokens.d.ts.map +1 -1
  95. package/dist/src/types/v1/keyword-tokens.js +18 -0
  96. package/dist/src/types/v1/keyword-tokens.js.map +1 -1
  97. package/dist/src/types/v1/keyword.d.ts +20 -0
  98. package/dist/src/types/v1/keyword.d.ts.map +1 -1
  99. package/dist/src/types/v1/keyword.js +20 -0
  100. package/dist/src/types/v1/keyword.js.map +1 -1
  101. package/dist/src/types/v1/long.d.ts +19 -0
  102. package/dist/src/types/v1/long.d.ts.map +1 -1
  103. package/dist/src/types/v1/long.js +19 -0
  104. package/dist/src/types/v1/long.js.map +1 -1
  105. package/dist/src/types/v1/ngram-tokens.d.ts +21 -0
  106. package/dist/src/types/v1/ngram-tokens.d.ts.map +1 -1
  107. package/dist/src/types/v1/ngram-tokens.js +21 -0
  108. package/dist/src/types/v1/ngram-tokens.js.map +1 -1
  109. package/dist/src/types/v1/number.d.ts +20 -0
  110. package/dist/src/types/v1/number.d.ts.map +1 -1
  111. package/dist/src/types/v1/number.js +20 -0
  112. package/dist/src/types/v1/number.js.map +1 -1
  113. package/dist/src/types/v1/object.d.ts +18 -0
  114. package/dist/src/types/v1/object.d.ts.map +1 -1
  115. package/dist/src/types/v1/object.js +18 -0
  116. package/dist/src/types/v1/object.js.map +1 -1
  117. package/dist/src/types/v1/short.d.ts +17 -0
  118. package/dist/src/types/v1/short.d.ts.map +1 -1
  119. package/dist/src/types/v1/short.js +17 -0
  120. package/dist/src/types/v1/short.js.map +1 -1
  121. package/dist/src/types/v1/string.d.ts +19 -0
  122. package/dist/src/types/v1/string.d.ts.map +1 -1
  123. package/dist/src/types/v1/string.js +19 -0
  124. package/dist/src/types/v1/string.js.map +1 -1
  125. package/dist/src/types/v1/text.d.ts +17 -0
  126. package/dist/src/types/v1/text.d.ts.map +1 -1
  127. package/dist/src/types/v1/text.js +17 -0
  128. package/dist/src/types/v1/text.js.map +1 -1
  129. package/dist/src/types/v1/vector.d.ts +38 -0
  130. package/dist/src/types/v1/vector.d.ts.map +1 -1
  131. package/dist/src/types/v1/vector.js +38 -0
  132. package/dist/src/types/v1/vector.js.map +1 -1
  133. package/package.json +3 -3
@@ -1,5 +1,24 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * A latitude/longitude point stored as an Elasticsearch/OpenSearch
5
+ * `geo_point`. Supports geo-distance, bounding-box, and polygon queries.
6
+ *
7
+ * - **ES/OpenSearch mapping:** `{ type: 'geo_point' }`. Honors
8
+ * `indexed: false` (emitted as `index: false`).
9
+ * - **GraphQL:** a generated object type `DTGeoPointV1` with `lat: String!`
10
+ * and `lon: String!` (an `input` variant named `DTGeoPointInputV1` is
11
+ * emitted when `isInput` is set).
12
+ * - **xLucene:** `GeoPoint`.
13
+ *
14
+ * This is the preferred point type; `Geo` is the deprecated equivalent.
15
+ *
16
+ * @example
17
+ * const config: DataTypeConfig = {
18
+ * version: 1,
19
+ * fields: { location: { type: 'GeoPoint' } }
20
+ * };
21
+ */
3
22
  export default class GeoPointType extends BaseType {
4
23
  toESMapping() {
5
24
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"geo-point.js","sourceRoot":"","sources":["../../../../src/types/v1/geo-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAA8B,MAAM,iBAAiB,CAAC;AAG7D,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,QAAQ;IAC9C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,WAA0B,EAAE,CAAC;QAEnE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS,CAAC,EAAE,OAAO,KAAuB,EAAE;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG;cACb,OAAO,IAAI,IAAI;;;;SAIpB,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IACvD,CAAC;CACJ"}
1
+ {"version":3,"file":"geo-point.js","sourceRoot":"","sources":["../../../../src/types/v1/geo-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAA8B,MAAM,iBAAiB,CAAC;AAG7D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,QAAQ;IAC9C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,WAA0B,EAAE,CAAC;QAEnE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS,CAAC,EAAE,OAAO,KAAuB,EAAE;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG;cACb,OAAO,IAAI,IAAI;;;;SAIpB,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IACvD,CAAC;CACJ"}
@@ -1,6 +1,26 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType, { ToGraphQLOptions } from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * @deprecated Use {@link GeoPointType} (`GeoPoint`) instead.
6
+ *
7
+ * A latitude/longitude point stored as an Elasticsearch/OpenSearch
8
+ * `geo_point`. This is the legacy geo type, kept for backwards compatibility;
9
+ * it is identical to `GeoPoint` at the ES/GraphQL level and differs only in
10
+ * its xLucene type.
11
+ *
12
+ * - **ES/OpenSearch mapping:** `{ type: 'geo_point' }`. Honors
13
+ * `indexed: false` (emitted as `index: false`).
14
+ * - **GraphQL:** a generated object type `DTGeoPointV1` with `lat: String!`
15
+ * and `lon: String!` (an `input` variant is emitted when `isInput` is set).
16
+ * - **xLucene:** `Geo`.
17
+ *
18
+ * @example
19
+ * const config: DataTypeConfig = {
20
+ * version: 1,
21
+ * fields: { location: { type: 'Geo' } }
22
+ * };
23
+ */
4
24
  export default class GeoType extends BaseType {
5
25
  toESMapping(): TypeESMapping;
6
26
  toGraphQL({ isInput }?: ToGraphQLOptions): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"geo.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/geo.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,EAAE,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGjE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW,IAAI,aAAa;IAc5B,SAAS,CAAC,EAAE,OAAO,EAAE,GAAE,gBAAqB,GAAG,WAAW;IAY1D,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"geo.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/geo.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,EAAE,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW,IAAI,aAAa;IAc5B,SAAS,CAAC,EAAE,OAAO,EAAE,GAAE,gBAAqB,GAAG,WAAW;IAY1D,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,6 +1,25 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
- // TODO: This type is deprecated, not sure how to properly indicate it.
3
+ /**
4
+ * @deprecated Use {@link GeoPointType} (`GeoPoint`) instead.
5
+ *
6
+ * A latitude/longitude point stored as an Elasticsearch/OpenSearch
7
+ * `geo_point`. This is the legacy geo type, kept for backwards compatibility;
8
+ * it is identical to `GeoPoint` at the ES/GraphQL level and differs only in
9
+ * its xLucene type.
10
+ *
11
+ * - **ES/OpenSearch mapping:** `{ type: 'geo_point' }`. Honors
12
+ * `indexed: false` (emitted as `index: false`).
13
+ * - **GraphQL:** a generated object type `DTGeoPointV1` with `lat: String!`
14
+ * and `lon: String!` (an `input` variant is emitted when `isInput` is set).
15
+ * - **xLucene:** `Geo`.
16
+ *
17
+ * @example
18
+ * const config: DataTypeConfig = {
19
+ * version: 1,
20
+ * fields: { location: { type: 'Geo' } }
21
+ * };
22
+ */
4
23
  export default class GeoType extends BaseType {
5
24
  toESMapping() {
6
25
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"geo.js","sourceRoot":"","sources":["../../../../src/types/v1/geo.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAA8B,MAAM,iBAAiB,CAAC;AAG7D,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,WAA0B,EAAE,CAAC;QAEnE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS,CAAC,EAAE,OAAO,KAAuB,EAAE;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG;cACb,OAAO,IAAI,IAAI;;;;SAIpB,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,GAAG,EAAE,CAAC;IAClD,CAAC;CACJ"}
1
+ {"version":3,"file":"geo.js","sourceRoot":"","sources":["../../../../src/types/v1/geo.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAA8B,MAAM,iBAAiB,CAAC;AAG7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,WAA0B,EAAE,CAAC;QAEnE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS,CAAC,EAAE,OAAO,KAAuB,EAAE;QACxC,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG;cACb,OAAO,IAAI,IAAI;;;;SAIpB,CAAC;QACF,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,GAAG,EAAE,CAAC;IAClD,CAAC;CACJ"}
@@ -1,6 +1,26 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * A hostname. The base value is analyzed case-insensitively with the custom
6
+ * `lowercase_keyword_analyzer` (single lowercased token), and a `tokens`
7
+ * sub-field is split on `.` by a custom `hostname_analyzer` so individual
8
+ * hostname labels can be matched.
9
+ *
10
+ * - **ES/OpenSearch mapping:** `{ type: 'text', analyzer:
11
+ * 'lowercase_keyword_analyzer', fields: { tokens: { type: 'text', analyzer:
12
+ * 'hostname_analyzer' } } }`, plus the custom `analyzer`
13
+ * (`hostname_analyzer`, `lowercase_keyword_analyzer`) and `tokenizer`
14
+ * (`hostname_tokenizer`, type `pattern`, pattern `\.`) definitions.
15
+ * - **GraphQL:** `String`.
16
+ * - **xLucene:** `String`.
17
+ *
18
+ * @example
19
+ * const config: DataTypeConfig = {
20
+ * version: 1,
21
+ * fields: { host: { type: 'Hostname' } }
22
+ * };
23
+ */
4
24
  export default class Hostname extends BaseType {
5
25
  toESMapping(): TypeESMapping;
6
26
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"hostname.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/hostname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,QAAQ;IAC1C,WAAW,IAAI,aAAa;IAkC5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"hostname.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/hostname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,QAAQ;IAC1C,WAAW,IAAI,aAAa;IAkC5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,25 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * A hostname. The base value is analyzed case-insensitively with the custom
5
+ * `lowercase_keyword_analyzer` (single lowercased token), and a `tokens`
6
+ * sub-field is split on `.` by a custom `hostname_analyzer` so individual
7
+ * hostname labels can be matched.
8
+ *
9
+ * - **ES/OpenSearch mapping:** `{ type: 'text', analyzer:
10
+ * 'lowercase_keyword_analyzer', fields: { tokens: { type: 'text', analyzer:
11
+ * 'hostname_analyzer' } } }`, plus the custom `analyzer`
12
+ * (`hostname_analyzer`, `lowercase_keyword_analyzer`) and `tokenizer`
13
+ * (`hostname_tokenizer`, type `pattern`, pattern `\.`) definitions.
14
+ * - **GraphQL:** `String`.
15
+ * - **xLucene:** `String`.
16
+ *
17
+ * @example
18
+ * const config: DataTypeConfig = {
19
+ * version: 1,
20
+ * fields: { host: { type: 'Hostname' } }
21
+ * };
22
+ */
3
23
  export default class Hostname extends BaseType {
4
24
  toESMapping() {
5
25
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"hostname.js","sourceRoot":"","sources":["../../../../src/types/v1/hostname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,QAAQ;IAC1C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,MAAqB;oBAC3B,QAAQ,EAAE,4BAA4B;oBACtC,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAqB;4BAC3B,QAAQ,EAAE,mBAAmB;yBAChC;qBACJ;iBACJ;aACJ;YACD,QAAQ,EAAE;gBACN,iBAAiB,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,oBAAoB;iBAClC;gBACD,0BAA0B,EAAE;oBACxB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACtB;aACJ;YACD,SAAS,EAAE;gBACP,kBAAkB,EAAE;oBAChB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;iBACjB;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
1
+ {"version":3,"file":"hostname.js","sourceRoot":"","sources":["../../../../src/types/v1/hostname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,QAAQ;IAC1C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,MAAqB;oBAC3B,QAAQ,EAAE,4BAA4B;oBACtC,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAqB;4BAC3B,QAAQ,EAAE,mBAAmB;yBAChC;qBACJ;iBACJ;aACJ;YACD,QAAQ,EAAE;gBACN,iBAAiB,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,oBAAoB;iBAClC;gBACD,0BAA0B,EAAE;oBACxB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACtB;aACJ;YACD,SAAS,EAAE;gBACP,kBAAkB,EAAE;oBAChB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;iBACjB;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
@@ -1,6 +1,24 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * A whole number stored as an Elasticsearch/OpenSearch `integer`
6
+ * (32-bit signed integer, −2^31 to 2^31 - 1).
7
+ *
8
+ * - **ES/OpenSearch mapping:** `{ type: 'integer' }`. Honors `indexed: false`
9
+ * (emitted as `index: false`).
10
+ * - **GraphQL:** `Int` (the GraphQL `Int` scalar is also 32-bit signed, so it
11
+ * maps cleanly).
12
+ * - **xLucene:** `Integer`.
13
+ *
14
+ * Use `Long` for values that exceed the 32-bit range.
15
+ *
16
+ * @example
17
+ * const config: DataTypeConfig = {
18
+ * version: 1,
19
+ * fields: { count: { type: 'Integer' } }
20
+ * };
21
+ */
4
22
  export default class Integer extends BaseType {
5
23
  toESMapping(): TypeESMapping;
6
24
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"integer.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/integer.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW,IAAI,aAAa;IAc5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"integer.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/integer.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW,IAAI,aAAa;IAc5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,23 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * A whole number stored as an Elasticsearch/OpenSearch `integer`
5
+ * (32-bit signed integer, −2^31 to 2^31 - 1).
6
+ *
7
+ * - **ES/OpenSearch mapping:** `{ type: 'integer' }`. Honors `indexed: false`
8
+ * (emitted as `index: false`).
9
+ * - **GraphQL:** `Int` (the GraphQL `Int` scalar is also 32-bit signed, so it
10
+ * maps cleanly).
11
+ * - **xLucene:** `Integer`.
12
+ *
13
+ * Use `Long` for values that exceed the 32-bit range.
14
+ *
15
+ * @example
16
+ * const config: DataTypeConfig = {
17
+ * version: 1,
18
+ * fields: { count: { type: 'Integer' } }
19
+ * };
20
+ */
3
21
  export default class Integer extends BaseType {
4
22
  toESMapping() {
5
23
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"integer.js","sourceRoot":"","sources":["../../../../src/types/v1/integer.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,SAAwB,EAAE,CAAC;QAEjE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;CACJ"}
1
+ {"version":3,"file":"integer.js","sourceRoot":"","sources":["../../../../src/types/v1/integer.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,QAAQ;IACzC,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,SAAwB,EAAE,CAAC;QAEjE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;CACJ"}
@@ -1,6 +1,22 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * An IP range stored as an Elasticsearch/OpenSearch `ip_range` field. Accepts
6
+ * CIDR notation (e.g. `10.0.0.0/24`) and matches queries whose address falls
7
+ * within the stored range.
8
+ *
9
+ * - **ES/OpenSearch mapping:** `{ type: 'ip_range' }`. Honors `indexed: false`
10
+ * (emitted as `index: false`).
11
+ * - **GraphQL:** `String`.
12
+ * - **xLucene:** `IPRange`.
13
+ *
14
+ * @example
15
+ * const config: DataTypeConfig = {
16
+ * version: 1,
17
+ * fields: { subnet: { type: 'IPRange' } }
18
+ * };
19
+ */
4
20
  export default class IpRangeType extends BaseType {
5
21
  toESMapping(): TypeESMapping;
6
22
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"ip-range.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/ip-range.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,QAAQ;IAC7C,WAAW,IAAI,aAAa;IAc5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"ip-range.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/ip-range.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,QAAQ;IAC7C,WAAW,IAAI,aAAa;IAc5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,21 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * An IP range stored as an Elasticsearch/OpenSearch `ip_range` field. Accepts
5
+ * CIDR notation (e.g. `10.0.0.0/24`) and matches queries whose address falls
6
+ * within the stored range.
7
+ *
8
+ * - **ES/OpenSearch mapping:** `{ type: 'ip_range' }`. Honors `indexed: false`
9
+ * (emitted as `index: false`).
10
+ * - **GraphQL:** `String`.
11
+ * - **xLucene:** `IPRange`.
12
+ *
13
+ * @example
14
+ * const config: DataTypeConfig = {
15
+ * version: 1,
16
+ * fields: { subnet: { type: 'IPRange' } }
17
+ * };
18
+ */
3
19
  export default class IpRangeType extends BaseType {
4
20
  toESMapping() {
5
21
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"ip-range.js","sourceRoot":"","sources":["../../../../src/types/v1/ip-range.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,QAAQ;IAC7C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,UAAyB,EAAE,CAAC;QAElE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;CACJ"}
1
+ {"version":3,"file":"ip-range.js","sourceRoot":"","sources":["../../../../src/types/v1/ip-range.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,QAAQ;IAC7C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,UAAyB,EAAE,CAAC;QAElE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;CACJ"}
@@ -1,6 +1,21 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * An IPv4 or IPv6 address stored as an Elasticsearch/OpenSearch `ip` field,
6
+ * enabling CIDR-range queries.
7
+ *
8
+ * - **ES/OpenSearch mapping:** `{ type: 'ip' }`. Honors `indexed: false`
9
+ * (emitted as `index: false`).
10
+ * - **GraphQL:** `String`.
11
+ * - **xLucene:** `IP`.
12
+ *
13
+ * @example
14
+ * const config: DataTypeConfig = {
15
+ * version: 1,
16
+ * fields: { client_ip: { type: 'IP' } }
17
+ * };
18
+ */
4
19
  export default class IPType extends BaseType {
5
20
  toESMapping(): TypeESMapping;
6
21
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"ip.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/ip.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,QAAQ;IACxC,WAAW,IAAI,aAAa;IAc5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"ip.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/ip.ts"],"names":[],"mappings":"AAAA,OAAO,EAC4B,iBAAiB,EAEnD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,QAAQ;IACxC,WAAW,IAAI,aAAa;IAc5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,20 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * An IPv4 or IPv6 address stored as an Elasticsearch/OpenSearch `ip` field,
5
+ * enabling CIDR-range queries.
6
+ *
7
+ * - **ES/OpenSearch mapping:** `{ type: 'ip' }`. Honors `indexed: false`
8
+ * (emitted as `index: false`).
9
+ * - **GraphQL:** `String`.
10
+ * - **xLucene:** `IP`.
11
+ *
12
+ * @example
13
+ * const config: DataTypeConfig = {
14
+ * version: 1,
15
+ * fields: { client_ip: { type: 'IP' } }
16
+ * };
17
+ */
3
18
  export default class IPType extends BaseType {
4
19
  toESMapping() {
5
20
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"ip.js","sourceRoot":"","sources":["../../../../src/types/v1/ip.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,QAAQ;IACxC,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,IAAmB,EAAE,CAAC;QAE5D,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC;IACjD,CAAC;CACJ"}
1
+ {"version":3,"file":"ip.js","sourceRoot":"","sources":["../../../../src/types/v1/ip.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,QAAQ;IACxC,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAkB,EAAE,IAAI,EAAE,IAAmB,EAAE,CAAC;QAE5D,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAExD,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM;aACvB;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,EAAE,EAAE,CAAC;IACjD,CAAC;CACJ"}
@@ -1,6 +1,29 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * A keyword that matches case-insensitively. It defines a custom
6
+ * `lowercase_keyword_analyzer` (a `keyword` tokenizer plus a `lowercase`
7
+ * filter) so the whole value is indexed as a single lowercased token.
8
+ *
9
+ * - **ES/OpenSearch mapping:** depends on `use_fields_hack`:
10
+ * - default → `{ type: 'text', analyzer: 'lowercase_keyword_analyzer' }`.
11
+ * - `use_fields_hack: true` → `{ type: 'keyword' }` with a `text` sub-field
12
+ * (`fields.text`) using the analyzer. This keeps an exact `keyword` for
13
+ * sorting/aggregations while still allowing case-insensitive matching on
14
+ * the sub-field. The mapping always emits the `analyzer` block defining
15
+ * `lowercase_keyword_analyzer`.
16
+ * - **GraphQL:** `String`.
17
+ * - **xLucene:** `AnalyzedString` by default, or `String` when
18
+ * `use_fields_hack` is set (because the base field is then a plain
19
+ * `keyword`).
20
+ *
21
+ * @example
22
+ * const config: DataTypeConfig = {
23
+ * version: 1,
24
+ * fields: { username: { type: 'KeywordCaseInsensitive' } }
25
+ * };
26
+ */
4
27
  export default class KeywordCaseInsensitive extends BaseType {
5
28
  toESMapping(): TypeESMapping;
6
29
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-case-insensitive.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,QAAQ;IACxD,WAAW,IAAI,aAAa;IA4B5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAUjC"}
1
+ {"version":3,"file":"keyword-case-insensitive.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,QAAQ;IACxD,WAAW,IAAI,aAAa;IA4B5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAUjC"}
@@ -1,5 +1,28 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * A keyword that matches case-insensitively. It defines a custom
5
+ * `lowercase_keyword_analyzer` (a `keyword` tokenizer plus a `lowercase`
6
+ * filter) so the whole value is indexed as a single lowercased token.
7
+ *
8
+ * - **ES/OpenSearch mapping:** depends on `use_fields_hack`:
9
+ * - default → `{ type: 'text', analyzer: 'lowercase_keyword_analyzer' }`.
10
+ * - `use_fields_hack: true` → `{ type: 'keyword' }` with a `text` sub-field
11
+ * (`fields.text`) using the analyzer. This keeps an exact `keyword` for
12
+ * sorting/aggregations while still allowing case-insensitive matching on
13
+ * the sub-field. The mapping always emits the `analyzer` block defining
14
+ * `lowercase_keyword_analyzer`.
15
+ * - **GraphQL:** `String`.
16
+ * - **xLucene:** `AnalyzedString` by default, or `String` when
17
+ * `use_fields_hack` is set (because the base field is then a plain
18
+ * `keyword`).
19
+ *
20
+ * @example
21
+ * const config: DataTypeConfig = {
22
+ * version: 1,
23
+ * fields: { username: { type: 'KeywordCaseInsensitive' } }
24
+ * };
25
+ */
3
26
  export default class KeywordCaseInsensitive extends BaseType {
4
27
  toESMapping() {
5
28
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-case-insensitive.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,QAAQ;IACxD,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;oBACrC,CAAC,CAAC;wBACE,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE;4BACJ,IAAI,EAAE;gCACF,IAAI,EAAE,MAAM;gCACZ,QAAQ,EAAE,4BAA4B;6BACzC;yBACJ;qBACJ;oBACD,CAAC,CAAC;wBACE,IAAI,EAAE,MAAqB;wBAC3B,QAAQ,EAAE,4BAA4B;qBACzC;aACR;YACD,QAAQ,EAAE;gBACN,0BAA0B,EAAE;oBACxB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACtB;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC9B,OAAO;gBACH,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM;aACxC,CAAC;QACN,CAAC;QACD,OAAO;YACH,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,cAAc;SAChD,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"keyword-case-insensitive.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,QAAQ;IACxD,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;oBACrC,CAAC,CAAC;wBACE,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE;4BACJ,IAAI,EAAE;gCACF,IAAI,EAAE,MAAM;gCACZ,QAAQ,EAAE,4BAA4B;6BACzC;yBACJ;qBACJ;oBACD,CAAC,CAAC;wBACE,IAAI,EAAE,MAAqB;wBAC3B,QAAQ,EAAE,4BAA4B;qBACzC;aACR;YACD,QAAQ,EAAE;gBACN,0BAA0B,EAAE;oBACxB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACtB;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC9B,OAAO;gBACH,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM;aACxC,CAAC;QACN,CAAC;QACD,OAAO;YACH,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,cAAc;SAChD,CAAC;IACN,CAAC;CACJ"}
@@ -1,6 +1,25 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * A keyword for slash-delimited paths (e.g. filesystem paths or URL paths).
6
+ * The base value is an exact `keyword`, and a `tokens` sub-field is analyzed
7
+ * with a custom `path_analyzer` that splits on `/` via a `pattern` tokenizer,
8
+ * so a query can match on individual path segments.
9
+ *
10
+ * - **ES/OpenSearch mapping:** `{ type: 'keyword', fields: { tokens: { type:
11
+ * 'text', analyzer: 'path_analyzer' } } }`, plus the custom `analyzer`
12
+ * (`path_analyzer`, type `custom`) and `tokenizer` (`path_tokenizer`, type
13
+ * `pattern`, pattern `/`) definitions.
14
+ * - **GraphQL:** `String`.
15
+ * - **xLucene:** `String`.
16
+ *
17
+ * @example
18
+ * const config: DataTypeConfig = {
19
+ * version: 1,
20
+ * fields: { file_path: { type: 'KeywordPathAnalyzer' } }
21
+ * };
22
+ */
4
23
  export default class KeywordPathAnalyzer extends BaseType {
5
24
  toESMapping(): TypeESMapping;
6
25
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-path-analyzer.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-path-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,QAAQ;IACrD,WAAW,IAAI,aAAa;IA6B5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"keyword-path-analyzer.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-path-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,QAAQ;IACrD,WAAW,IAAI,aAAa;IA6B5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,24 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * A keyword for slash-delimited paths (e.g. filesystem paths or URL paths).
5
+ * The base value is an exact `keyword`, and a `tokens` sub-field is analyzed
6
+ * with a custom `path_analyzer` that splits on `/` via a `pattern` tokenizer,
7
+ * so a query can match on individual path segments.
8
+ *
9
+ * - **ES/OpenSearch mapping:** `{ type: 'keyword', fields: { tokens: { type:
10
+ * 'text', analyzer: 'path_analyzer' } } }`, plus the custom `analyzer`
11
+ * (`path_analyzer`, type `custom`) and `tokenizer` (`path_tokenizer`, type
12
+ * `pattern`, pattern `/`) definitions.
13
+ * - **GraphQL:** `String`.
14
+ * - **xLucene:** `String`.
15
+ *
16
+ * @example
17
+ * const config: DataTypeConfig = {
18
+ * version: 1,
19
+ * fields: { file_path: { type: 'KeywordPathAnalyzer' } }
20
+ * };
21
+ */
3
22
  export default class KeywordPathAnalyzer extends BaseType {
4
23
  toESMapping() {
5
24
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-path-analyzer.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-path-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,QAAQ;IACrD,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,SAAwB;oBAC9B,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,eAAe;yBAC5B;qBACJ;iBACJ;aACJ;YACD,QAAQ,EAAE;gBACN,aAAa,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,gBAAgB;iBAC9B;aACJ;YACD,SAAS,EAAE;gBACP,cAAc,EAAE;oBACZ,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,GAAG;iBACf;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
1
+ {"version":3,"file":"keyword-path-analyzer.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-path-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,QAAQ;IACrD,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,SAAwB;oBAC9B,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,eAAe;yBAC5B;qBACJ;iBACJ;aACJ;YACD,QAAQ,EAAE;gBACN,aAAa,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,gBAAgB;iBAC9B;aACJ;YACD,SAAS,EAAE;gBACP,cAAc,EAAE;oBACZ,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,GAAG;iBACf;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
@@ -1,6 +1,26 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * A case-insensitive keyword that also exposes a tokenized sub-field.
6
+ * Combines the behavior of {@link KeywordCaseInsensitive} and
7
+ * {@link KeywordTokens}: the base field is analyzed with the custom
8
+ * `lowercase_keyword_analyzer` (single lowercased token), and a `tokens`
9
+ * sub-field is analyzed with `standard` for word-level matching.
10
+ *
11
+ * - **ES/OpenSearch mapping:** `{ type: 'text', analyzer:
12
+ * 'lowercase_keyword_analyzer', fields: { tokens: { type: 'text', analyzer:
13
+ * 'standard' } } }`, plus the `analyzer` block defining
14
+ * `lowercase_keyword_analyzer` (`keyword` tokenizer + `lowercase` filter).
15
+ * - **GraphQL:** `String`.
16
+ * - **xLucene:** `String`.
17
+ *
18
+ * @example
19
+ * const config: DataTypeConfig = {
20
+ * version: 1,
21
+ * fields: { display_name: { type: 'KeywordTokensCaseInsensitive' } }
22
+ * };
23
+ */
4
24
  export default class KeywordTokensCaseInsensitive extends BaseType {
5
25
  toESMapping(): TypeESMapping;
6
26
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-tokens-case-insensitive.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,4BAA6B,SAAQ,QAAQ;IAC9D,WAAW,IAAI,aAAa;IAwB5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"keyword-tokens-case-insensitive.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,4BAA6B,SAAQ,QAAQ;IAC9D,WAAW,IAAI,aAAa;IAwB5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,25 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * A case-insensitive keyword that also exposes a tokenized sub-field.
5
+ * Combines the behavior of {@link KeywordCaseInsensitive} and
6
+ * {@link KeywordTokens}: the base field is analyzed with the custom
7
+ * `lowercase_keyword_analyzer` (single lowercased token), and a `tokens`
8
+ * sub-field is analyzed with `standard` for word-level matching.
9
+ *
10
+ * - **ES/OpenSearch mapping:** `{ type: 'text', analyzer:
11
+ * 'lowercase_keyword_analyzer', fields: { tokens: { type: 'text', analyzer:
12
+ * 'standard' } } }`, plus the `analyzer` block defining
13
+ * `lowercase_keyword_analyzer` (`keyword` tokenizer + `lowercase` filter).
14
+ * - **GraphQL:** `String`.
15
+ * - **xLucene:** `String`.
16
+ *
17
+ * @example
18
+ * const config: DataTypeConfig = {
19
+ * version: 1,
20
+ * fields: { display_name: { type: 'KeywordTokensCaseInsensitive' } }
21
+ * };
22
+ */
3
23
  export default class KeywordTokensCaseInsensitive extends BaseType {
4
24
  toESMapping() {
5
25
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-tokens-case-insensitive.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,4BAA6B,SAAQ,QAAQ;IAC9D,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,MAAqB;oBAC3B,QAAQ,EAAE,4BAA4B;oBACtC,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAqB;4BAC3B,QAAQ,EAAE,UAAU;yBACvB;qBACJ;iBACJ;aACJ;YACD,QAAQ,EAAE;gBACN,0BAA0B,EAAE;oBACxB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACtB;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
1
+ {"version":3,"file":"keyword-tokens-case-insensitive.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens-case-insensitive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkC,MAAM,kBAAkB,CAAC;AACpF,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,4BAA6B,SAAQ,QAAQ;IAC9D,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,MAAqB;oBAC3B,QAAQ,EAAE,4BAA4B;oBACtC,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAqB;4BAC3B,QAAQ,EAAE,UAAU;yBACvB;qBACJ;iBACJ;aACJ;YACD,QAAQ,EAAE;gBACN,0BAA0B,EAAE;oBACxB,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,WAAW;iBACtB;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
@@ -1,6 +1,24 @@
1
1
  import { xLuceneTypeConfig } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
3
  import { GraphQLType, TypeESMapping } from '../../interfaces.js';
4
+ /**
5
+ * An exact-match keyword that additionally exposes a tokenized sub-field for
6
+ * full-text search. The base value is a `keyword` (exact match, sorting,
7
+ * aggregations), and a `tokens` sub-field runs it through the `standard`
8
+ * analyzer so individual words can be matched.
9
+ *
10
+ * - **ES/OpenSearch mapping:** `{ type: 'keyword', fields: { tokens: { type:
11
+ * 'text', analyzer: 'standard' } } }`. Query `field.tokens` for word-level
12
+ * matches and `field` for exact matches.
13
+ * - **GraphQL:** `String`.
14
+ * - **xLucene:** `String`.
15
+ *
16
+ * @example
17
+ * const config: DataTypeConfig = {
18
+ * version: 1,
19
+ * fields: { title: { type: 'KeywordTokens' } }
20
+ * };
21
+ */
4
22
  export default class KeywordTokens extends BaseType {
5
23
  toESMapping(): TypeESMapping;
6
24
  toGraphQL(): GraphQLType;
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-tokens.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,QAAQ;IAC/C,WAAW,IAAI,aAAa;IAiB5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
1
+ {"version":3,"file":"keyword-tokens.d.ts","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,QAAQ;IAC/C,WAAW,IAAI,aAAa;IAiB5B,SAAS,IAAI,WAAW;IAIxB,SAAS,IAAI,iBAAiB;CAGjC"}
@@ -1,5 +1,23 @@
1
1
  import { xLuceneFieldType } from '@terascope/types';
2
2
  import BaseType from '../base-type.js';
3
+ /**
4
+ * An exact-match keyword that additionally exposes a tokenized sub-field for
5
+ * full-text search. The base value is a `keyword` (exact match, sorting,
6
+ * aggregations), and a `tokens` sub-field runs it through the `standard`
7
+ * analyzer so individual words can be matched.
8
+ *
9
+ * - **ES/OpenSearch mapping:** `{ type: 'keyword', fields: { tokens: { type:
10
+ * 'text', analyzer: 'standard' } } }`. Query `field.tokens` for word-level
11
+ * matches and `field` for exact matches.
12
+ * - **GraphQL:** `String`.
13
+ * - **xLucene:** `String`.
14
+ *
15
+ * @example
16
+ * const config: DataTypeConfig = {
17
+ * version: 1,
18
+ * fields: { title: { type: 'KeywordTokens' } }
19
+ * };
20
+ */
3
21
  export default class KeywordTokens extends BaseType {
4
22
  toESMapping() {
5
23
  this._validateESMapping();
@@ -1 +1 @@
1
- {"version":3,"file":"keyword-tokens.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AACvE,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,QAAQ;IAC/C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,UAAU;yBACvB;qBACJ;iBACJ;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}
1
+ {"version":3,"file":"keyword-tokens.js","sourceRoot":"","sources":["../../../../src/types/v1/keyword-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAqB,MAAM,kBAAkB,CAAC;AACvE,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAGvC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,QAAQ;IAC/C,WAAW;QACP,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO;YACH,OAAO,EAAE;gBACL,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACV,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE;wBACJ,MAAM,EAAE;4BACJ,IAAI,EAAE,MAAM;4BACZ,QAAQ,EAAE,UAAU;yBACvB;qBACJ;iBACJ;aACJ;SACJ,CAAC;IACN,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,SAAS;QACL,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;IACrD,CAAC;CACJ"}