@nymphjs/query-parser 1.0.0-beta.7 → 1.0.0-beta.71

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,268 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.0.0-beta.71](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.70...v1.0.0-beta.71) (2024-09-20)
7
+
8
+ **Note:** Version bump only for package @nymphjs/query-parser
9
+
10
+ # [1.0.0-beta.70](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.69...v1.0.0-beta.70) (2024-09-20)
11
+
12
+ **Note:** Version bump only for package @nymphjs/query-parser
13
+
14
+ # [1.0.0-beta.69](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.68...v1.0.0-beta.69) (2024-09-19)
15
+
16
+ **Note:** Version bump only for package @nymphjs/query-parser
17
+
18
+ # [1.0.0-beta.68](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.67...v1.0.0-beta.68) (2024-09-19)
19
+
20
+ **Note:** Version bump only for package @nymphjs/query-parser
21
+
22
+ # [1.0.0-beta.67](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.66...v1.0.0-beta.67) (2024-09-03)
23
+
24
+ **Note:** Version bump only for package @nymphjs/query-parser
25
+
26
+ # [1.0.0-beta.66](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.65...v1.0.0-beta.66) (2024-08-06)
27
+
28
+ **Note:** Version bump only for package @nymphjs/query-parser
29
+
30
+ # [1.0.0-beta.65](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.64...v1.0.0-beta.65) (2024-08-05)
31
+
32
+ **Note:** Version bump only for package @nymphjs/query-parser
33
+
34
+ # [1.0.0-beta.64](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.63...v1.0.0-beta.64) (2024-08-04)
35
+
36
+ **Note:** Version bump only for package @nymphjs/query-parser
37
+
38
+ # [1.0.0-beta.63](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.62...v1.0.0-beta.63) (2024-06-18)
39
+
40
+ **Note:** Version bump only for package @nymphjs/query-parser
41
+
42
+ # [1.0.0-beta.62](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.61...v1.0.0-beta.62) (2024-06-15)
43
+
44
+ **Note:** Version bump only for package @nymphjs/query-parser
45
+
46
+ # [1.0.0-beta.61](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.60...v1.0.0-beta.61) (2024-06-14)
47
+
48
+ **Note:** Version bump only for package @nymphjs/query-parser
49
+
50
+ # [1.0.0-beta.60](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.59...v1.0.0-beta.60) (2024-06-14)
51
+
52
+ **Note:** Version bump only for package @nymphjs/query-parser
53
+
54
+ # [1.0.0-beta.59](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.58...v1.0.0-beta.59) (2024-06-14)
55
+
56
+ **Note:** Version bump only for package @nymphjs/query-parser
57
+
58
+ # [1.0.0-beta.58](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.57...v1.0.0-beta.58) (2024-06-12)
59
+
60
+ **Note:** Version bump only for package @nymphjs/query-parser
61
+
62
+ # [1.0.0-beta.57](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.56...v1.0.0-beta.57) (2024-06-12)
63
+
64
+ **Note:** Version bump only for package @nymphjs/query-parser
65
+
66
+ # [1.0.0-beta.56](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.55...v1.0.0-beta.56) (2024-06-11)
67
+
68
+ **Note:** Version bump only for package @nymphjs/query-parser
69
+
70
+ # [1.0.0-beta.55](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.54...v1.0.0-beta.55) (2024-05-26)
71
+
72
+ **Note:** Version bump only for package @nymphjs/query-parser
73
+
74
+ # [1.0.0-beta.54](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.53...v1.0.0-beta.54) (2024-05-26)
75
+
76
+ **Note:** Version bump only for package @nymphjs/query-parser
77
+
78
+ # [1.0.0-beta.53](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.52...v1.0.0-beta.53) (2024-05-26)
79
+
80
+ **Note:** Version bump only for package @nymphjs/query-parser
81
+
82
+ # [1.0.0-beta.52](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.51...v1.0.0-beta.52) (2024-05-25)
83
+
84
+ **Note:** Version bump only for package @nymphjs/query-parser
85
+
86
+ # [1.0.0-beta.51](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.50...v1.0.0-beta.51) (2024-04-12)
87
+
88
+ ### Bug Fixes
89
+
90
+ - query parser nested qref clauses ([10bd94d](https://github.com/sciactive/nymphjs/commit/10bd94df0329a3abc76cecb9d05f9a7fb2fdf29a))
91
+
92
+ # [1.0.0-beta.50](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.49...v1.0.0-beta.50) (2024-04-08)
93
+
94
+ **Note:** Version bump only for package @nymphjs/query-parser
95
+
96
+ # [1.0.0-beta.49](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.48...v1.0.0-beta.49) (2024-03-04)
97
+
98
+ **Note:** Version bump only for package @nymphjs/query-parser
99
+
100
+ # [1.0.0-beta.48](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.47...v1.0.0-beta.48) (2023-11-10)
101
+
102
+ **Note:** Version bump only for package @nymphjs/query-parser
103
+
104
+ # [1.0.0-beta.47](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.46...v1.0.0-beta.47) (2023-11-10)
105
+
106
+ **Note:** Version bump only for package @nymphjs/query-parser
107
+
108
+ # [1.0.0-beta.46](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.45...v1.0.0-beta.46) (2023-08-29)
109
+
110
+ **Note:** Version bump only for package @nymphjs/query-parser
111
+
112
+ # [1.0.0-beta.45](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.44...v1.0.0-beta.45) (2023-07-17)
113
+
114
+ **Note:** Version bump only for package @nymphjs/query-parser
115
+
116
+ # [1.0.0-beta.44](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.43...v1.0.0-beta.44) (2023-07-13)
117
+
118
+ **Note:** Version bump only for package @nymphjs/query-parser
119
+
120
+ # [1.0.0-beta.43](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.42...v1.0.0-beta.43) (2023-07-12)
121
+
122
+ **Note:** Version bump only for package @nymphjs/query-parser
123
+
124
+ # [1.0.0-beta.42](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.41...v1.0.0-beta.42) (2023-07-12)
125
+
126
+ **Note:** Version bump only for package @nymphjs/query-parser
127
+
128
+ # [1.0.0-beta.41](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.40...v1.0.0-beta.41) (2023-07-12)
129
+
130
+ **Note:** Version bump only for package @nymphjs/query-parser
131
+
132
+ # [1.0.0-beta.40](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.39...v1.0.0-beta.40) (2023-07-10)
133
+
134
+ **Note:** Version bump only for package @nymphjs/query-parser
135
+
136
+ # [1.0.0-beta.39](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.38...v1.0.0-beta.39) (2023-07-09)
137
+
138
+ **Note:** Version bump only for package @nymphjs/query-parser
139
+
140
+ # [1.0.0-beta.38](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.37...v1.0.0-beta.38) (2023-07-09)
141
+
142
+ **Note:** Version bump only for package @nymphjs/query-parser
143
+
144
+ # [1.0.0-beta.37](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.36...v1.0.0-beta.37) (2023-07-09)
145
+
146
+ **Note:** Version bump only for package @nymphjs/query-parser
147
+
148
+ # [1.0.0-beta.36](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.35...v1.0.0-beta.36) (2023-07-09)
149
+
150
+ **Note:** Version bump only for package @nymphjs/query-parser
151
+
152
+ # [1.0.0-beta.35](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.34...v1.0.0-beta.35) (2023-06-14)
153
+
154
+ **Note:** Version bump only for package @nymphjs/query-parser
155
+
156
+ # [1.0.0-beta.34](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.33...v1.0.0-beta.34) (2023-05-13)
157
+
158
+ **Note:** Version bump only for package @nymphjs/query-parser
159
+
160
+ # [1.0.0-beta.33](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.32...v1.0.0-beta.33) (2023-05-13)
161
+
162
+ **Note:** Version bump only for package @nymphjs/query-parser
163
+
164
+ # [1.0.0-beta.32](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.31...v1.0.0-beta.32) (2023-05-13)
165
+
166
+ **Note:** Version bump only for package @nymphjs/query-parser
167
+
168
+ # [1.0.0-beta.31](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.30...v1.0.0-beta.31) (2023-05-12)
169
+
170
+ **Note:** Version bump only for package @nymphjs/query-parser
171
+
172
+ # [1.0.0-beta.30](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.29...v1.0.0-beta.30) (2023-05-12)
173
+
174
+ **Note:** Version bump only for package @nymphjs/query-parser
175
+
176
+ # [1.0.0-beta.29](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.28...v1.0.0-beta.29) (2023-05-08)
177
+
178
+ **Note:** Version bump only for package @nymphjs/query-parser
179
+
180
+ # [1.0.0-beta.28](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.27...v1.0.0-beta.28) (2023-05-05)
181
+
182
+ **Note:** Version bump only for package @nymphjs/query-parser
183
+
184
+ # [1.0.0-beta.27](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.26...v1.0.0-beta.27) (2023-05-04)
185
+
186
+ **Note:** Version bump only for package @nymphjs/query-parser
187
+
188
+ # [1.0.0-beta.26](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.25...v1.0.0-beta.26) (2023-05-04)
189
+
190
+ ### Features
191
+
192
+ - update packages and migrate to mysql2 ([72ad611](https://github.com/sciactive/nymphjs/commit/72ad611bd2bf7bf85c3ba8a3486503d9b50c49d6))
193
+
194
+ # [1.0.0-beta.25](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.24...v1.0.0-beta.25) (2023-05-04)
195
+
196
+ **Note:** Version bump only for package @nymphjs/query-parser
197
+
198
+ # [1.0.0-beta.24](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.23...v1.0.0-beta.24) (2023-05-02)
199
+
200
+ **Note:** Version bump only for package @nymphjs/query-parser
201
+
202
+ # [1.0.0-beta.23](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.22...v1.0.0-beta.23) (2023-05-02)
203
+
204
+ **Note:** Version bump only for package @nymphjs/query-parser
205
+
206
+ # [1.0.0-beta.22](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.21...v1.0.0-beta.22) (2023-05-01)
207
+
208
+ **Note:** Version bump only for package @nymphjs/query-parser
209
+
210
+ # [1.0.0-beta.21](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.20...v1.0.0-beta.21) (2023-05-01)
211
+
212
+ **Note:** Version bump only for package @nymphjs/query-parser
213
+
214
+ # [1.0.0-beta.20](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.19...v1.0.0-beta.20) (2023-04-30)
215
+
216
+ **Note:** Version bump only for package @nymphjs/query-parser
217
+
218
+ # [1.0.0-beta.19](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.18...v1.0.0-beta.19) (2023-04-29)
219
+
220
+ **Note:** Version bump only for package @nymphjs/query-parser
221
+
222
+ # [1.0.0-beta.18](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.17...v1.0.0-beta.18) (2023-04-27)
223
+
224
+ **Note:** Version bump only for package @nymphjs/query-parser
225
+
226
+ # [1.0.0-beta.17](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.16...v1.0.0-beta.17) (2023-04-24)
227
+
228
+ **Note:** Version bump only for package @nymphjs/query-parser
229
+
230
+ # [1.0.0-beta.16](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.15...v1.0.0-beta.16) (2023-03-31)
231
+
232
+ **Note:** Version bump only for package @nymphjs/query-parser
233
+
234
+ # [1.0.0-beta.15](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.14...v1.0.0-beta.15) (2023-03-23)
235
+
236
+ ### Features
237
+
238
+ - add option to sort results by a property ([16384e7](https://github.com/sciactive/nymphjs/commit/16384e7bdab88abb55ccccabb06ac09f92fa8a03))
239
+
240
+ # [1.0.0-beta.14](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.13...v1.0.0-beta.14) (2023-03-17)
241
+
242
+ **Note:** Version bump only for package @nymphjs/query-parser
243
+
244
+ # [1.0.0-beta.13](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.12...v1.0.0-beta.13) (2023-03-16)
245
+
246
+ **Note:** Version bump only for package @nymphjs/query-parser
247
+
248
+ # [1.0.0-beta.12](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.11...v1.0.0-beta.12) (2023-03-04)
249
+
250
+ **Note:** Version bump only for package @nymphjs/query-parser
251
+
252
+ # [1.0.0-beta.11](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.10...v1.0.0-beta.11) (2023-02-27)
253
+
254
+ **Note:** Version bump only for package @nymphjs/query-parser
255
+
256
+ # [1.0.0-beta.10](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.9...v1.0.0-beta.10) (2023-01-19)
257
+
258
+ **Note:** Version bump only for package @nymphjs/query-parser
259
+
260
+ # [1.0.0-beta.9](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.8...v1.0.0-beta.9) (2023-01-09)
261
+
262
+ **Note:** Version bump only for package @nymphjs/query-parser
263
+
264
+ # [1.0.0-beta.8](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.7...v1.0.0-beta.8) (2023-01-09)
265
+
266
+ **Note:** Version bump only for package @nymphjs/query-parser
267
+
6
268
  # [1.0.0-beta.7](https://github.com/sciactive/nymphjs/compare/v1.0.0-beta.6...v1.0.0-beta.7) (2023-01-05)
7
269
 
8
270
  **Note:** Version bump only for package @nymphjs/query-parser
package/README.md CHANGED
@@ -23,7 +23,7 @@ import Category from './Category';
23
23
  async function doQuery() {
24
24
  const [options, ...selectors] = queryParser({
25
25
  query:
26
- 'limit:4 foobar (| [archived] mdate<"2 weeks ago") category<{cat Tech}>',
26
+ 'limit:4 sort:mdate foobar (| [archived] mdate<"2 weeks ago") category<{cat Tech}>',
27
27
  entityClass: BlogPost,
28
28
  defaultFields: ['title', 'body'],
29
29
  qrefMap: {
@@ -37,7 +37,8 @@ async function doQuery() {
37
37
  Options will be
38
38
  {
39
39
  class: BlogPost,
40
- limit: 4
40
+ limit: 4,
41
+ sort: 'mdate'
41
42
  }
42
43
 
43
44
  And selectors will be (equivalent to)
@@ -81,10 +82,11 @@ async function doQuery() {
81
82
 
82
83
  ## Options
83
84
 
84
- You can set limit, offset, and reverse like this.
85
+ You can set limit, offset, sort, and reverse like this.
85
86
 
86
87
  - `limit:number`
87
88
  - `offset:number`
89
+ - `sort:string`
88
90
  - `reverse:true`, `reverse:false`, `reverse:1`, or `reverse:0`
89
91
 
90
92
  These must appear in the top level of the query (outside of any parentheses).
@@ -132,7 +134,7 @@ Check for a reference to another entity.
132
134
  Check for a reference to another entity using a query.
133
135
 
134
136
  - `name<{refclassname inner query}>` or `name!<{refclassname inner query}>`
135
- - (Esacpe curly brackets with a leading backslash.)
137
+ - (Escape curly brackets with a leading backslash.)
136
138
  - (Requires a map of refclassname to their actual class and default fields.)
137
139
 
138
140
  ### contain and !contain
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["@nymphjs/client"]=t():e["@nymphjs/client"]=t()}(this,(()=>(()=>{"use strict";var e={568:function(e,t,l){var r=this&&this.__createBinding||(Object.create?function(e,t,l,r){void 0===r&&(r=l);var i=Object.getOwnPropertyDescriptor(t,l);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[l]}}),Object.defineProperty(e,r,i)}:function(e,t,l,r){void 0===r&&(r=l),e[r]=t[l]}),i=this&&this.__exportStar||function(e,t){for(var l in e)"default"===l||Object.prototype.hasOwnProperty.call(t,l)||r(t,e,l)},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.queryParser=void 0,i(l(138),t);const n=c(l(138));t.queryParser=n.default,t.default=n.default},138:function(e,t,l){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(l(87));function c({query:e,entityClass:t,defaultFields:l=["name"],qrefMap:r={},bareHandler:i=((e,t,l=["name"])=>(e.match(/[_%]/)||(e=`%${e}%`),l.length?{type:"|",ilike:l.map((t=>[t,e]))}:{}))}){const c={class:t};return[c,...n({query:e,entityClass:t,type:"&",defaultFields:l,qrefMap:r,options:c,bareHandler:i})]}function n({query:e,entityClass:t,type:l,defaultFields:r,qrefMap:o,options:h,bareHandler:u}){const p={type:l};let f=e;const g=[];let d=!1,m=0,y=null;for(let e=0;e<f.length;e++)if('"'===f[e])d?"\\"!==f[e-1]&&(d=!1):d=!0;else{if(d)continue;"("===f[e]?null==y?y=e:m++:")"===f[e]&&(0===m?null==y||(g.push([y,e+1]),y=null):m--)}if(g.length){p.selector=[],g.reverse();for(let e of g){let l=f.slice(e[0]+1,e[1]-1);f=f.slice(0,e[0])+f.slice(e[1]);let i="&";l.startsWith("&")?l=l.slice(1):l.startsWith("!&")?(i="!&",l=l.slice(2)):l.startsWith("|")?(i="|",l=l.slice(1)):l.startsWith("!|")?(i="!|",l=l.slice(2)):l.startsWith("!")&&(i="!&",l=l.slice(1)),p.selector.push(...n({query:l,entityClass:t,type:i,defaultFields:r,qrefMap:o,bareHandler:u}))}}if(f=function({query:e,selector:t,qrefMap:l,bareHandler:r}){let n=e;const o=/(?: |^)(\w+)!?<\{(\w+) (.*?[^\\])\}>(?= |$)/g,h=n.match(o);if(h){t.qref=[],t["!qref"]=[];for(let e of h)try{let[n,a]=(0,i.default)(e.trim().slice(0,-1),"<",2);u=a.slice(1,-1),a=u.replace(/\\\{/g,"{").replace(/\\\}/g,"}").replace(/\\\\/g,"\\");let[s,o]=a.split(" ",2);const h=l[s].class;if(null==h)continue;const p=c({query:o,entityClass:h,defaultFields:l[s].defaultFields,qrefMap:l,bareHandler:r});n.endsWith("!")?t["!qref"].push([n.slice(0,-1),p]):t.qref.push([n,p])}catch(e){continue}t.qref.length||delete t.qref,t["!qref"].length||delete t["!qref"]}var u;n=n.replace(o,"");const p=/(?: |^)(\w+)!?=(""|".*?[^\\]"|[^ ]+)(?= |$)/g,f=n.match(p);if(f){t.equal=[],t["!equal"]=[];for(let e of f)try{let[l,r]=e.trim().split("=",2);try{l.endsWith("!")?t["!equal"].push([l.slice(0,-1),JSON.parse(r)]):t.equal.push([l,JSON.parse(r)])}catch(e){l.endsWith("!")?t["!equal"].push([l.slice(0,-1),a(r)]):t.equal.push([l,a(r)])}}catch(e){continue}t.equal.length||delete t.equal,t["!equal"].length||delete t["!equal"]}n=n.replace(p,"");const g=/(?: |^)(\w+)!?<\{([0-9a-f]{24})\}>(?= |$)/g,d=n.match(g);if(d){t.ref=[],t["!ref"]=[];for(let e of d)try{let[l,r]=e.trim().slice(0,-1).split("<",2);l.endsWith("!")?t["!ref"].push([l.slice(0,-1),r.slice(1,-1)]):t.ref.push([l,r.slice(1,-1)])}catch(e){continue}t.ref.length||delete t.ref,t["!ref"].length||delete t["!ref"]}n=n.replace(g,"");const m=/(?: |^)(\w+)!?(<.*?[^\\]>)(?= |$)/g,y=n.match(m);if(y){t.contain=[],t["!contain"]=[];for(let e of y)try{let[l,r]=e.trim().slice(0,-1).split("<",2);try{l.endsWith("!")?t["!contain"].push([l.slice(0,-1),JSON.parse(s(r))]):t.contain.push([l,JSON.parse(s(r))])}catch(e){l.endsWith("!")?t["!contain"].push([l.slice(0,-1),s(r)]):t.contain.push([l,s(r)])}}catch(e){continue}t.contain.length||delete t.contain,t["!contain"].length||delete t["!contain"]}n=n.replace(m,"");const b=/(?: |^)(\w+)!?~(\/\/|\/.*?[^\\]\/)i?(?= |$)/g,q=n.match(b);if(q){t.match=[],t["!match"]=[],t.imatch=[],t["!imatch"]=[];for(let e of q)try{let[l,r]=e.trim().split("~",2);l.endsWith("!")?r.endsWith("i")?t["!imatch"].push([l.slice(0,-1),r.replace(/^\/|\/i$/g,"")]):t["!match"].push([l.slice(0,-1),r.replace(/^\/|\/$/g,"")]):r.endsWith("i")?t.imatch.push([l,r.replace(/^\/|\/i$/g,"")]):t.match.push([l,r.replace(/^\/|\/$/g,"")])}catch(e){continue}t.match.length||delete t.match,t["!match"].length||delete t["!match"],t.imatch.length||delete t.imatch,t["!imatch"].length||delete t["!imatch"]}n=n.replace(b,"");const $=/(?: |^)(\w+)!?~(""i?|".*?[^\\]"i?|[^ ]+)(?= |$)/g,w=n.match($);if(w){t.like=[],t["!like"]=[],t.ilike=[],t["!ilike"]=[];for(let e of w)try{let[l,r]=e.trim().split("~",2);l.endsWith("!")?r.endsWith('"i')?t["!ilike"].push([l.slice(0,-1),a(r.slice(0,-1))]):t["!like"].push([l.slice(0,-1),a(r)]):r.endsWith('"i')?t.ilike.push([l,a(r.slice(0,-1))]):t.like.push([l,a(r)])}catch(e){continue}t.like.length||delete t.like,t["!like"].length||delete t["!like"],t.ilike.length||delete t.ilike,t["!ilike"].length||delete t["!ilike"]}n=n.replace($,"");const _=/(?: |^)\{!?([0-9a-f]{24})\}(?= |$)/g,k=n.match(_);if(k){t.guid=[],t["!guid"]=[];for(let e of k)try{let l=e.trim().replace(/^\{|\}$/g,"");l.startsWith("!")?t["!guid"].push(l.slice(1)):t.guid.push(l)}catch(e){continue}t.guid.length||delete t.guid,t["!guid"].length||delete t["!guid"]}n=n.replace(_,"");const v=/(?: |^)\[(!?\w+)\](?= |$)/g,O=n.match(v);if(O){t.truthy=[],t["!truthy"]=[];for(let e of O)try{let l=e.trim().replace(/^\[|\]$/g,"");l.startsWith("!")?t["!truthy"].push(l.slice(1)):t.truthy.push(l)}catch(e){continue}t.truthy.length||delete t.truthy,t["!truthy"].length||delete t["!truthy"]}n=n.replace(v,"");const W=/(?: |^)<(!?\w+)>(?= |$)/g,j=n.match(W);if(j){t.tag=[],t["!tag"]=[];for(let e of j)try{let l=e.trim().replace(/^<|>$/g,"");l.startsWith("!")?t["!tag"].push(l.slice(1)):t.tag.push(l)}catch(e){continue}t.tag.length||delete t.tag,t["!tag"].length||delete t["!tag"]}n=n.replace(W,"");const M=/(?: |^)(\w+)>(-?\d+(?:\.\d+)?)(?= |$)/g,P=n.match(M);if(P){t.gt=[];for(let e of P)try{let[l,r]=e.trim().split(">",2);t.gt.push([l,Number(r)])}catch(e){continue}t.gt.length||delete t.gt}n=n.replace(M,"");const x=/(?: |^)(\w+)>(\w+|"[^"]+")(?= |$)/g,N=n.match(x);if(N){null==t.gt&&(t.gt=[]);for(let e of N)try{let[l,r]=e.trim().split(">",2);t.gt.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.gt.length||delete t.gt}n=n.replace(x,"");const S=/(?: |^)(\w+)>=(-?\d+(?:\.\d+)?)(?= |$)/g,H=n.match(S);if(H){t.gte=[];for(let e of H)try{let[l,r]=e.trim().split(">=",2);t.gte.push([l,Number(r)])}catch(e){continue}t.gte.length||delete t.gte}n=n.replace(S,"");const F=/(?: |^)(\w+)>=(\w+|"[^"]+")(?= |$)/g,C=n.match(F);if(C){null==t.gte&&(t.gte=[]);for(let e of C)try{let[l,r]=e.trim().split(">=",2);t.gte.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.gte.length||delete t.gte}n=n.replace(F,"");const J=/(?: |^)(\w+)<(-?\d+(?:\.\d+)?)(?= |$)/g,D=n.match(J);if(D){t.lt=[];for(let e of D)try{let[l,r]=e.trim().split("<",2);t.lt.push([l,Number(r)])}catch(e){continue}t.lt.length||delete t.lt}n=n.replace(J,"");const T=/(?: |^)(\w+)<(\w+|"[^"]+")(?= |$)/g,B=n.match(T);if(B){null==t.lt&&(t.lt=[]);for(let e of B)try{let[l,r]=e.trim().split("<",2);t.lt.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.lt.length||delete t.lt}n=n.replace(T,"");const z=/(?: |^)(\w+)<=(-?\d+(?:\.\d+)?)(?= |$)/g,A=n.match(z);if(A){t.lte=[];for(let e of A)try{let[l,r]=e.trim().split("<=",2);t.lte.push([l,Number(r)])}catch(e){continue}t.lte.length||delete t.lte}n=n.replace(z,"");const E=/(?: |^)(\w+)<=(\w+|"[^"]+")(?= |$)/g,G=n.match(E);if(G){null==t.lte&&(t.lte=[]);for(let e of G)try{let[l,r]=e.trim().split("<=",2);t.lte.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.lte.length||delete t.lte}return n=n.replace(E,""),n.trim()}({query:f,selector:p,qrefMap:o,bareHandler:u}),h){const e=/(?: |^)limit:(\d+)(?= |$)/,t=f.match(e);t&&(h.limit=Number(t[1])),f=f.replace(e,"");const l=/(?: |^)offset:(\d+)(?= |$)/,r=f.match(l);r&&(h.offset=Number(r[1])),f=f.replace(l,"");const i=/(?: |^)reverse:(true|false|1|0)(?= |$)/,c=f.match(i);c&&(h.reverse="true"===c[1]||"1"===c[1]),f=f.replace(i,"")}if(f=f.trim(),f.length){const e=u(f,t,r);if(Object.keys(e).length)return[...Object.keys(p).length>1?[p]:[],{type:"|",...e}]}return!("selector"in p)||1!==p.selector.length||2!==Object.keys(p).length||"&"!==p.type&&"|"!==p.type?[p]:p.selector}function a(e){return e.match(/^".*?[^\\]"$/)?e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"):e}function s(e){return e.replace(/\\</g,"<").replace(/\\>/g,">").replace(/\\\\/g,"\\")}t.default=c},87:(e,t,l)=>{function r(e,t,l=1/0){let r=e;const i=[];for(;i.length<l&&r.length;){const e=r.split(t,1);i.push(e[0]),r=r.slice(e[0].length),i.length<l&&r&&(r=r.replace(t,""),r||i.push(r))}return r&&l>0&&(i[i.length-1]+=r),i}l.r(t),l.d(t,{default:()=>r})}},t={};function l(r){var i=t[r];if(void 0!==i)return i.exports;var c=t[r]={exports:{}};return e[r].call(c.exports,c,c.exports,l),c.exports}return l.d=(e,t)=>{for(var r in t)l.o(t,r)&&!l.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l(568)})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["@nymphjs/client"]=t():e["@nymphjs/client"]=t()}(this,(()=>(()=>{"use strict";var e={750:(e,t,l)=>{function r(e,t,l=1/0){let r=e;const c=[];for(;c.length<l&&r.length;){const e=r.split(t,1);c.push(e[0]),r=r.slice(e[0].length),c.length<l&&r&&(r=r.replace(t,""),r||c.push(r))}return r&&l>0&&(c[c.length-1]+=r),c}l.r(t),l.d(t,{default:()=>c,splitn:()=>r});const c=r},509:function(e,t,l){var r=this&&this.__createBinding||(Object.create?function(e,t,l,r){void 0===r&&(r=l);var c=Object.getOwnPropertyDescriptor(t,l);c&&!("get"in c?!t.__esModule:c.writable||c.configurable)||(c={enumerable:!0,get:function(){return t[l]}}),Object.defineProperty(e,r,c)}:function(e,t,l,r){void 0===r&&(r=l),e[r]=t[l]}),c=this&&this.__exportStar||function(e,t){for(var l in e)"default"===l||Object.prototype.hasOwnProperty.call(t,l)||r(t,e,l)},n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.queryParser=void 0,c(l(822),t);const i=n(l(822));t.queryParser=i.default,t.default=i.default},822:function(e,t,l){var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const c=r(l(750));function n({query:e,entityClass:t,defaultFields:l=["name"],qrefMap:r={},bareHandler:c=((e,t,l=["name"])=>(e.match(/[_%]/)||(e=`%${e}%`),l.length?{type:"|",ilike:l.map((t=>[t,e]))}:{}))}){const n={class:t};return[n,...i({query:e,entityClass:t,type:"&",defaultFields:l,qrefMap:r,options:n,bareHandler:c})]}function i({query:e,entityClass:t,type:l,defaultFields:r,qrefMap:u,options:o,bareHandler:h}){const f={type:l};let p=e;const d=[];let g=!1,m=0,y=null;for(let e=0;e<p.length;e++)if('"'===p[e])g?"\\"!==p[e-1]&&(g=!1):g=!0;else{if(g)continue;"("===p[e]?null==y?y=e:m++:")"===p[e]&&(0===m?null==y||(d.push([y,e+1]),y=null):m--)}if(d.length){f.selector=[],d.reverse();for(let e of d){let l=p.slice(e[0]+1,e[1]-1);p=p.slice(0,e[0])+p.slice(e[1]);let c="&";l.startsWith("&")?l=l.slice(1):l.startsWith("!&")?(c="!&",l=l.slice(2)):l.startsWith("|")?(c="|",l=l.slice(1)):l.startsWith("!|")?(c="!|",l=l.slice(2)):l.startsWith("!")&&(c="!&",l=l.slice(1)),f.selector.push(...i({query:l,entityClass:t,type:c,defaultFields:r,qrefMap:u,bareHandler:h}))}}if(p=function({query:e,selector:t,qrefMap:l,bareHandler:r}){let i=e;const u=/(?: |^)(\w+)!?<\{(\w+) (.*?[^\\])\}>(?= |$)/g,o=i.match(u);if(o){t.qref=[],t["!qref"]=[];for(let e of o)try{let[i,a]=(0,c.default)(e.trim().slice(0,-1),"<",2);h=a.slice(1,-1),a=h.replace(/\\\{/g,"{").replace(/\\\}/g,"}").replace(/\\\\/g,"\\");let[s,u]=(0,c.default)(a," ",2);const o=l[s].class;if(null==o)continue;const f=n({query:u,entityClass:o,defaultFields:l[s].defaultFields,qrefMap:l,bareHandler:r});i.endsWith("!")?t["!qref"].push([i.slice(0,-1),f]):t.qref.push([i,f])}catch(e){continue}t.qref.length||delete t.qref,t["!qref"].length||delete t["!qref"]}var h;i=i.replace(u,"");const f=/(?: |^)(\w+)!?=(""|".*?[^\\]"|[^ ]+)(?= |$)/g,p=i.match(f);if(p){t.equal=[],t["!equal"]=[];for(let e of p)try{let[l,r]=(0,c.default)(e.trim(),"=",2);try{l.endsWith("!")?t["!equal"].push([l.slice(0,-1),JSON.parse(r)]):t.equal.push([l,JSON.parse(r)])}catch(e){l.endsWith("!")?t["!equal"].push([l.slice(0,-1),a(r)]):t.equal.push([l,a(r)])}}catch(e){continue}t.equal.length||delete t.equal,t["!equal"].length||delete t["!equal"]}i=i.replace(f,"");const d=/(?: |^)(\w+)!?<\{([0-9a-f]{24})\}>(?= |$)/g,g=i.match(d);if(g){t.ref=[],t["!ref"]=[];for(let e of g)try{let[l,r]=(0,c.default)(e.trim().slice(0,-1),"<",2);l.endsWith("!")?t["!ref"].push([l.slice(0,-1),r.slice(1,-1)]):t.ref.push([l,r.slice(1,-1)])}catch(e){continue}t.ref.length||delete t.ref,t["!ref"].length||delete t["!ref"]}i=i.replace(d,"");const m=/(?: |^)(\w+)!?(<.*?[^\\]>)(?= |$)/g,y=i.match(m);if(y){t.contain=[],t["!contain"]=[];for(let e of y)try{let[l,r]=(0,c.default)(e.trim().slice(0,-1),"<",2);try{l.endsWith("!")?t["!contain"].push([l.slice(0,-1),JSON.parse(s(r))]):t.contain.push([l,JSON.parse(s(r))])}catch(e){l.endsWith("!")?t["!contain"].push([l.slice(0,-1),s(r)]):t.contain.push([l,s(r)])}}catch(e){continue}t.contain.length||delete t.contain,t["!contain"].length||delete t["!contain"]}i=i.replace(m,"");const b=/(?: |^)(\w+)!?~(\/\/|\/.*?[^\\]\/)i?(?= |$)/g,q=i.match(b);if(q){t.match=[],t["!match"]=[],t.imatch=[],t["!imatch"]=[];for(let e of q)try{let[l,r]=(0,c.default)(e.trim(),"~",2);l.endsWith("!")?r.endsWith("i")?t["!imatch"].push([l.slice(0,-1),r.replace(/^\/|\/i$/g,"")]):t["!match"].push([l.slice(0,-1),r.replace(/^\/|\/$/g,"")]):r.endsWith("i")?t.imatch.push([l,r.replace(/^\/|\/i$/g,"")]):t.match.push([l,r.replace(/^\/|\/$/g,"")])}catch(e){continue}t.match.length||delete t.match,t["!match"].length||delete t["!match"],t.imatch.length||delete t.imatch,t["!imatch"].length||delete t["!imatch"]}i=i.replace(b,"");const $=/(?: |^)(\w+)!?~(""i?|".*?[^\\]"i?|[^ ]+)(?= |$)/g,w=i.match($);if(w){t.like=[],t["!like"]=[],t.ilike=[],t["!ilike"]=[];for(let e of w)try{let[l,r]=(0,c.default)(e.trim(),"~",2);l.endsWith("!")?r.endsWith('"i')?t["!ilike"].push([l.slice(0,-1),a(r.slice(0,-1))]):t["!like"].push([l.slice(0,-1),a(r)]):r.endsWith('"i')?t.ilike.push([l,a(r.slice(0,-1))]):t.like.push([l,a(r)])}catch(e){continue}t.like.length||delete t.like,t["!like"].length||delete t["!like"],t.ilike.length||delete t.ilike,t["!ilike"].length||delete t["!ilike"]}i=i.replace($,"");const _=/(?: |^)\{!?([0-9a-f]{24})\}(?= |$)/g,k=i.match(_);if(k){t.guid=[],t["!guid"]=[];for(let e of k)try{let l=e.trim().replace(/^\{|\}$/g,"");l.startsWith("!")?t["!guid"].push(l.slice(1)):t.guid.push(l)}catch(e){continue}t.guid.length||delete t.guid,t["!guid"].length||delete t["!guid"]}i=i.replace(_,"");const v=/(?: |^)\[(!?\w+)\](?= |$)/g,O=i.match(v);if(O){t.truthy=[],t["!truthy"]=[];for(let e of O)try{let l=e.trim().replace(/^\[|\]$/g,"");l.startsWith("!")?t["!truthy"].push(l.slice(1)):t.truthy.push(l)}catch(e){continue}t.truthy.length||delete t.truthy,t["!truthy"].length||delete t["!truthy"]}i=i.replace(v,"");const W=/(?: |^)<(!?\w+)>(?= |$)/g,j=i.match(W);if(j){t.tag=[],t["!tag"]=[];for(let e of j)try{let l=e.trim().replace(/^<|>$/g,"");l.startsWith("!")?t["!tag"].push(l.slice(1)):t.tag.push(l)}catch(e){continue}t.tag.length||delete t.tag,t["!tag"].length||delete t["!tag"]}i=i.replace(W,"");const F=/(?: |^)(\w+)>(-?\d+(?:\.\d+)?)(?= |$)/g,M=i.match(F);if(M){t.gt=[];for(let e of M)try{let[l,r]=(0,c.default)(e.trim(),">",2);t.gt.push([l,Number(r)])}catch(e){continue}t.gt.length||delete t.gt}i=i.replace(F,"");const x=/(?: |^)(\w+)>(\w+|"[^"]+")(?= |$)/g,P=i.match(x);if(P){null==t.gt&&(t.gt=[]);for(let e of P)try{let[l,r]=(0,c.default)(e.trim(),">",2);t.gt.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.gt.length||delete t.gt}i=i.replace(x,"");const N=/(?: |^)(\w+)>=(-?\d+(?:\.\d+)?)(?= |$)/g,S=i.match(N);if(S){t.gte=[];for(let e of S)try{let[l,r]=(0,c.default)(e.trim(),">=",2);t.gte.push([l,Number(r)])}catch(e){continue}t.gte.length||delete t.gte}i=i.replace(N,"");const H=/(?: |^)(\w+)>=(\w+|"[^"]+")(?= |$)/g,C=i.match(H);if(C){null==t.gte&&(t.gte=[]);for(let e of C)try{let[l,r]=(0,c.default)(e.trim(),">=",2);t.gte.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.gte.length||delete t.gte}i=i.replace(H,"");const A=/(?: |^)(\w+)<(-?\d+(?:\.\d+)?)(?= |$)/g,J=i.match(A);if(J){t.lt=[];for(let e of J)try{let[l,r]=(0,c.default)(e.trim(),"<",2);t.lt.push([l,Number(r)])}catch(e){continue}t.lt.length||delete t.lt}i=i.replace(A,"");const D=/(?: |^)(\w+)<(\w+|"[^"]+")(?= |$)/g,z=i.match(D);if(z){null==t.lt&&(t.lt=[]);for(let e of z)try{let[l,r]=(0,c.default)(e.trim(),"<",2);t.lt.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.lt.length||delete t.lt}i=i.replace(D,"");const T=/(?: |^)(\w+)<=(-?\d+(?:\.\d+)?)(?= |$)/g,Z=i.match(T);if(Z){t.lte=[];for(let e of Z)try{let[l,r]=(0,c.default)(e.trim(),"<=",2);t.lte.push([l,Number(r)])}catch(e){continue}t.lte.length||delete t.lte}i=i.replace(T,"");const B=/(?: |^)(\w+)<=(\w+|"[^"]+")(?= |$)/g,E=i.match(B);if(E){null==t.lte&&(t.lte=[]);for(let e of E)try{let[l,r]=(0,c.default)(e.trim(),"<=",2);t.lte.push([l,null,r.replace(/"/g,"")])}catch(e){continue}t.lte.length||delete t.lte}return i=i.replace(B,""),i.trim()}({query:p,selector:f,qrefMap:u,bareHandler:h}),o){const e=/(?: |^)limit:(\d+)(?= |$)/,t=p.match(e);t&&(o.limit=Number(t[1])),p=p.replace(e,"");const l=/(?: |^)offset:(\d+)(?= |$)/,r=p.match(l);r&&(o.offset=Number(r[1])),p=p.replace(l,"");const c=/(?: |^)sort:([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)(?= |$)/,n=p.match(c);n&&(o.sort=n[1]),p=p.replace(c,"");const i=/(?: |^)reverse:(true|false|1|0)(?= |$)/,a=p.match(i);a&&(o.reverse="true"===a[1]||"1"===a[1]),p=p.replace(i,"")}if(p=p.trim(),p.length){const e=h(p,t,r);if(Object.keys(e).length)return[...Object.keys(f).length>1?[f]:[],{type:"|",...e}]}return!("selector"in f)||1!==f.selector.length||2!==Object.keys(f).length||"&"!==f.type&&"|"!==f.type?[f]:f.selector}function a(e){return e.match(/^".*?[^\\]"$/)?e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"):e}function s(e){return e.replace(/\\</g,"<").replace(/\\>/g,">").replace(/\\\\/g,"\\")}t.default=n}},t={};function l(r){var c=t[r];if(void 0!==c)return c.exports;var n=t[r]={exports:{}};return e[r].call(n.exports,n,n.exports,l),n.exports}return l.d=(e,t)=>{for(var r in t)l.o(t,r)&&!l.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l(509)})()));
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"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","sources":["webpack://@nymphjs/client/webpack/universalModuleDefinition","webpack://@nymphjs/client/./lib/index.js","webpack://@nymphjs/client/./lib/queryParser.js","webpack://@nymphjs/client/./node_modules/@sciactive/splitn/dist/es/index.js","webpack://@nymphjs/client/webpack/bootstrap","webpack://@nymphjs/client/webpack/runtime/define property getters","webpack://@nymphjs/client/webpack/runtime/hasOwnProperty shorthand","webpack://@nymphjs/client/webpack/runtime/make namespace object","webpack://@nymphjs/client/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@nymphjs/client\"] = factory();\n\telse\n\t\troot[\"@nymphjs/client\"] = factory();\n})(this, () => {\nreturn ","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.queryParser = void 0;\n__exportStar(require(\"./queryParser\"), exports);\nconst queryParser_1 = __importDefault(require(\"./queryParser\"));\nexports.queryParser = queryParser_1.default;\nexports.default = queryParser_1.default;\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst splitn_1 = __importDefault(require(\"@sciactive/splitn\"));\nfunction queryParser({ query, entityClass, defaultFields = ['name'], qrefMap = {}, bareHandler = (input, _class, defaultFields = ['name']) => {\n if (!input.match(/[_%]/)) {\n input = `%${input}%`;\n }\n if (defaultFields.length) {\n return {\n type: '|',\n ilike: defaultFields.map((field) => [field, input]),\n };\n }\n return {};\n}, }) {\n const options = { class: entityClass };\n return [\n options,\n ...selectorsParser({\n query,\n entityClass,\n type: '&',\n defaultFields,\n qrefMap,\n options,\n bareHandler,\n }),\n ];\n}\nexports.default = queryParser;\nfunction selectorsParser({ query, entityClass, type, defaultFields, qrefMap, options, bareHandler, }) {\n const selector = { type };\n let curQuery = query;\n const subSelectorPairs = [];\n let inQuote = false;\n let nesting = 0;\n let currentStart = null;\n for (let i = 0; i < curQuery.length; i++) {\n if (curQuery[i] === '\"') {\n if (!inQuote) {\n inQuote = true;\n }\n else if (curQuery[i - 1] !== '\\\\') {\n inQuote = false;\n }\n }\n else if (inQuote) {\n continue;\n }\n else if (curQuery[i] === '(') {\n if (currentStart == null) {\n currentStart = i;\n }\n else {\n nesting++;\n }\n }\n else if (curQuery[i] === ')') {\n if (nesting === 0) {\n if (currentStart == null) {\n }\n else {\n subSelectorPairs.push([currentStart, i + 1]);\n currentStart = null;\n }\n }\n else {\n nesting--;\n }\n }\n }\n if (subSelectorPairs.length) {\n selector.selector = [];\n subSelectorPairs.reverse();\n for (let pair of subSelectorPairs) {\n let selectorQuery = curQuery.slice(pair[0] + 1, pair[1] - 1);\n curQuery = curQuery.slice(0, pair[0]) + curQuery.slice(pair[1]);\n let type = '&';\n if (selectorQuery.startsWith('&')) {\n selectorQuery = selectorQuery.slice(1);\n }\n else if (selectorQuery.startsWith('!&')) {\n type = '!&';\n selectorQuery = selectorQuery.slice(2);\n }\n else if (selectorQuery.startsWith('|')) {\n type = '|';\n selectorQuery = selectorQuery.slice(1);\n }\n else if (selectorQuery.startsWith('!|')) {\n type = '!|';\n selectorQuery = selectorQuery.slice(2);\n }\n else if (selectorQuery.startsWith('!')) {\n type = '!&';\n selectorQuery = selectorQuery.slice(1);\n }\n selector.selector.push(...selectorsParser({\n query: selectorQuery,\n entityClass,\n type,\n defaultFields,\n qrefMap,\n bareHandler,\n }));\n }\n }\n curQuery = selectorParser({\n query: curQuery,\n selector,\n qrefMap,\n bareHandler,\n });\n if (options) {\n const limitRegex = /(?: |^)limit:(\\d+)(?= |$)/;\n const limitMatch = curQuery.match(limitRegex);\n if (limitMatch) {\n options.limit = Number(limitMatch[1]);\n }\n curQuery = curQuery.replace(limitRegex, '');\n const offsetRegex = /(?: |^)offset:(\\d+)(?= |$)/;\n const offsetMatch = curQuery.match(offsetRegex);\n if (offsetMatch) {\n options.offset = Number(offsetMatch[1]);\n }\n curQuery = curQuery.replace(offsetRegex, '');\n const reverseRegex = /(?: |^)reverse:(true|false|1|0)(?= |$)/;\n const reverseMatch = curQuery.match(reverseRegex);\n if (reverseMatch) {\n options.reverse = reverseMatch[1] === 'true' || reverseMatch[1] === '1';\n }\n curQuery = curQuery.replace(reverseRegex, '');\n }\n curQuery = curQuery.trim();\n if (curQuery.length) {\n const bareSelector = bareHandler(curQuery, entityClass, defaultFields);\n if (Object.keys(bareSelector).length) {\n return [\n ...(Object.keys(selector).length > 1 ? [selector] : []),\n {\n type: '|',\n ...bareSelector,\n },\n ];\n }\n }\n if ('selector' in selector &&\n selector.selector.length === 1 &&\n Object.keys(selector).length === 2 &&\n (selector.type === '&' || selector.type === '|')) {\n return selector.selector;\n }\n return [selector];\n}\nfunction selectorParser({ query, selector, qrefMap, bareHandler, }) {\n let curQuery = query;\n const qrefRegex = /(?: |^)(\\w+)!?<\\{(\\w+) (.*?[^\\\\])\\}>(?= |$)/g;\n const qrefMatch = curQuery.match(qrefRegex);\n if (qrefMatch) {\n selector.qref = [];\n selector['!qref'] = [];\n for (let match of qrefMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim().slice(0, -1), '<', 2);\n value = unQuoteCurlies(value.slice(1, -1));\n let [className, qrefQuery] = value.split(' ', 2);\n const EntityClass = qrefMap[className].class;\n if (EntityClass == null) {\n continue;\n }\n const qref = queryParser({\n query: qrefQuery,\n entityClass: EntityClass,\n defaultFields: qrefMap[className].defaultFields,\n qrefMap,\n bareHandler,\n });\n if (name.endsWith('!')) {\n selector['!qref'].push([name.slice(0, -1), qref]);\n }\n else {\n selector.qref.push([name, qref]);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.qref.length) {\n delete selector.qref;\n }\n if (!selector['!qref'].length) {\n delete selector['!qref'];\n }\n }\n curQuery = curQuery.replace(qrefRegex, '');\n const equalRegex = /(?: |^)(\\w+)!?=(\"\"|\".*?[^\\\\]\"|[^ ]+)(?= |$)/g;\n const equalMatch = curQuery.match(equalRegex);\n if (equalMatch) {\n selector.equal = [];\n selector['!equal'] = [];\n for (let match of equalMatch) {\n try {\n let [name, value] = match.trim().split('=', 2);\n try {\n if (name.endsWith('!')) {\n selector['!equal'].push([name.slice(0, -1), JSON.parse(value)]);\n }\n else {\n selector.equal.push([name, JSON.parse(value)]);\n }\n }\n catch (e) {\n if (name.endsWith('!')) {\n selector['!equal'].push([name.slice(0, -1), unQuoteString(value)]);\n }\n else {\n selector.equal.push([name, unQuoteString(value)]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.equal.length) {\n delete selector.equal;\n }\n if (!selector['!equal'].length) {\n delete selector['!equal'];\n }\n }\n curQuery = curQuery.replace(equalRegex, '');\n const refRegex = /(?: |^)(\\w+)!?<\\{([0-9a-f]{24})\\}>(?= |$)/g;\n const refMatch = curQuery.match(refRegex);\n if (refMatch) {\n selector.ref = [];\n selector['!ref'] = [];\n for (let match of refMatch) {\n try {\n let [name, value] = match.trim().slice(0, -1).split('<', 2);\n if (name.endsWith('!')) {\n selector['!ref'].push([name.slice(0, -1), value.slice(1, -1)]);\n }\n else {\n selector.ref.push([name, value.slice(1, -1)]);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.ref.length) {\n delete selector.ref;\n }\n if (!selector['!ref'].length) {\n delete selector['!ref'];\n }\n }\n curQuery = curQuery.replace(refRegex, '');\n const containRegex = /(?: |^)(\\w+)!?(<.*?[^\\\\]>)(?= |$)/g;\n const containMatch = curQuery.match(containRegex);\n if (containMatch) {\n selector.contain = [];\n selector['!contain'] = [];\n for (let match of containMatch) {\n try {\n let [name, value] = match.trim().slice(0, -1).split('<', 2);\n try {\n if (name.endsWith('!')) {\n selector['!contain'].push([\n name.slice(0, -1),\n JSON.parse(unQuoteAngles(value)),\n ]);\n }\n else {\n selector.contain.push([name, JSON.parse(unQuoteAngles(value))]);\n }\n }\n catch (e) {\n if (name.endsWith('!')) {\n selector['!contain'].push([\n name.slice(0, -1),\n unQuoteAngles(value),\n ]);\n }\n else {\n selector.contain.push([name, unQuoteAngles(value)]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.contain.length) {\n delete selector.contain;\n }\n if (!selector['!contain'].length) {\n delete selector['!contain'];\n }\n }\n curQuery = curQuery.replace(containRegex, '');\n const posixRegex = /(?: |^)(\\w+)!?~(\\/\\/|\\/.*?[^\\\\]\\/)i?(?= |$)/g;\n const posixMatch = curQuery.match(posixRegex);\n if (posixMatch) {\n selector.match = [];\n selector['!match'] = [];\n selector.imatch = [];\n selector['!imatch'] = [];\n for (let match of posixMatch) {\n try {\n let [name, value] = match.trim().split('~', 2);\n if (name.endsWith('!')) {\n if (value.endsWith('i')) {\n selector['!imatch'].push([\n name.slice(0, -1),\n value.replace(/^\\/|\\/i$/g, ''),\n ]);\n }\n else {\n selector['!match'].push([\n name.slice(0, -1),\n value.replace(/^\\/|\\/$/g, ''),\n ]);\n }\n }\n else {\n if (value.endsWith('i')) {\n selector.imatch.push([name, value.replace(/^\\/|\\/i$/g, '')]);\n }\n else {\n selector.match.push([name, value.replace(/^\\/|\\/$/g, '')]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.match.length) {\n delete selector.match;\n }\n if (!selector['!match'].length) {\n delete selector['!match'];\n }\n if (!selector.imatch.length) {\n delete selector.imatch;\n }\n if (!selector['!imatch'].length) {\n delete selector['!imatch'];\n }\n }\n curQuery = curQuery.replace(posixRegex, '');\n const likeRegex = /(?: |^)(\\w+)!?~(\"\"i?|\".*?[^\\\\]\"i?|[^ ]+)(?= |$)/g;\n const likeMatch = curQuery.match(likeRegex);\n if (likeMatch) {\n selector.like = [];\n selector['!like'] = [];\n selector.ilike = [];\n selector['!ilike'] = [];\n for (let match of likeMatch) {\n try {\n let [name, value] = match.trim().split('~', 2);\n if (name.endsWith('!')) {\n if (value.endsWith('\"i')) {\n selector['!ilike'].push([\n name.slice(0, -1),\n unQuoteString(value.slice(0, -1)),\n ]);\n }\n else {\n selector['!like'].push([name.slice(0, -1), unQuoteString(value)]);\n }\n }\n else {\n if (value.endsWith('\"i')) {\n selector.ilike.push([name, unQuoteString(value.slice(0, -1))]);\n }\n else {\n selector.like.push([name, unQuoteString(value)]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.like.length) {\n delete selector.like;\n }\n if (!selector['!like'].length) {\n delete selector['!like'];\n }\n if (!selector.ilike.length) {\n delete selector.ilike;\n }\n if (!selector['!ilike'].length) {\n delete selector['!ilike'];\n }\n }\n curQuery = curQuery.replace(likeRegex, '');\n const guidRegex = /(?: |^)\\{!?([0-9a-f]{24})\\}(?= |$)/g;\n const guidMatch = curQuery.match(guidRegex);\n if (guidMatch) {\n selector.guid = [];\n selector['!guid'] = [];\n for (let match of guidMatch) {\n try {\n let guid = match.trim().replace(/^\\{|\\}$/g, '');\n if (guid.startsWith('!')) {\n selector['!guid'].push(guid.slice(1));\n }\n else {\n selector.guid.push(guid);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.guid.length) {\n delete selector.guid;\n }\n if (!selector['!guid'].length) {\n delete selector['!guid'];\n }\n }\n curQuery = curQuery.replace(guidRegex, '');\n const truthyRegex = /(?: |^)\\[(!?\\w+)\\](?= |$)/g;\n const truthyMatch = curQuery.match(truthyRegex);\n if (truthyMatch) {\n selector.truthy = [];\n selector['!truthy'] = [];\n for (let match of truthyMatch) {\n try {\n let name = match.trim().replace(/^\\[|\\]$/g, '');\n if (name.startsWith('!')) {\n selector['!truthy'].push(name.slice(1));\n }\n else {\n selector.truthy.push(name);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.truthy.length) {\n delete selector.truthy;\n }\n if (!selector['!truthy'].length) {\n delete selector['!truthy'];\n }\n }\n curQuery = curQuery.replace(truthyRegex, '');\n const tagRegex = /(?: |^)<(!?\\w+)>(?= |$)/g;\n const tagMatch = curQuery.match(tagRegex);\n if (tagMatch) {\n selector.tag = [];\n selector['!tag'] = [];\n for (let match of tagMatch) {\n try {\n let name = match.trim().replace(/^<|>$/g, '');\n if (name.startsWith('!')) {\n selector['!tag'].push(name.slice(1));\n }\n else {\n selector.tag.push(name);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.tag.length) {\n delete selector.tag;\n }\n if (!selector['!tag'].length) {\n delete selector['!tag'];\n }\n }\n curQuery = curQuery.replace(tagRegex, '');\n const gtRegex = /(?: |^)(\\w+)>(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const gtMatch = curQuery.match(gtRegex);\n if (gtMatch) {\n selector.gt = [];\n for (let match of gtMatch) {\n try {\n let [name, value] = match.trim().split('>', 2);\n selector.gt.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gt.length) {\n delete selector.gt;\n }\n }\n curQuery = curQuery.replace(gtRegex, '');\n const gtRelativeRegex = /(?: |^)(\\w+)>(\\w+|\"[^\"]+\")(?= |$)/g;\n const gtRelativeMatch = curQuery.match(gtRelativeRegex);\n if (gtRelativeMatch) {\n if (selector.gt == null) {\n selector.gt = [];\n }\n for (let match of gtRelativeMatch) {\n try {\n let [name, value] = match.trim().split('>', 2);\n selector.gt.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gt.length) {\n delete selector.gt;\n }\n }\n curQuery = curQuery.replace(gtRelativeRegex, '');\n const gteRegex = /(?: |^)(\\w+)>=(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const gteMatch = curQuery.match(gteRegex);\n if (gteMatch) {\n selector.gte = [];\n for (let match of gteMatch) {\n try {\n let [name, value] = match.trim().split('>=', 2);\n selector.gte.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gte.length) {\n delete selector.gte;\n }\n }\n curQuery = curQuery.replace(gteRegex, '');\n const gteRelativeRegex = /(?: |^)(\\w+)>=(\\w+|\"[^\"]+\")(?= |$)/g;\n const gteRelativeMatch = curQuery.match(gteRelativeRegex);\n if (gteRelativeMatch) {\n if (selector.gte == null) {\n selector.gte = [];\n }\n for (let match of gteRelativeMatch) {\n try {\n let [name, value] = match.trim().split('>=', 2);\n selector.gte.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gte.length) {\n delete selector.gte;\n }\n }\n curQuery = curQuery.replace(gteRelativeRegex, '');\n const ltRegex = /(?: |^)(\\w+)<(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const ltMatch = curQuery.match(ltRegex);\n if (ltMatch) {\n selector.lt = [];\n for (let match of ltMatch) {\n try {\n let [name, value] = match.trim().split('<', 2);\n selector.lt.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lt.length) {\n delete selector.lt;\n }\n }\n curQuery = curQuery.replace(ltRegex, '');\n const ltRelativeRegex = /(?: |^)(\\w+)<(\\w+|\"[^\"]+\")(?= |$)/g;\n const ltRelativeMatch = curQuery.match(ltRelativeRegex);\n if (ltRelativeMatch) {\n if (selector.lt == null) {\n selector.lt = [];\n }\n for (let match of ltRelativeMatch) {\n try {\n let [name, value] = match.trim().split('<', 2);\n selector.lt.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lt.length) {\n delete selector.lt;\n }\n }\n curQuery = curQuery.replace(ltRelativeRegex, '');\n const lteRegex = /(?: |^)(\\w+)<=(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const lteMatch = curQuery.match(lteRegex);\n if (lteMatch) {\n selector.lte = [];\n for (let match of lteMatch) {\n try {\n let [name, value] = match.trim().split('<=', 2);\n selector.lte.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lte.length) {\n delete selector.lte;\n }\n }\n curQuery = curQuery.replace(lteRegex, '');\n const lteRelativeRegex = /(?: |^)(\\w+)<=(\\w+|\"[^\"]+\")(?= |$)/g;\n const lteRelativeMatch = curQuery.match(lteRelativeRegex);\n if (lteRelativeMatch) {\n if (selector.lte == null) {\n selector.lte = [];\n }\n for (let match of lteRelativeMatch) {\n try {\n let [name, value] = match.trim().split('<=', 2);\n selector.lte.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lte.length) {\n delete selector.lte;\n }\n }\n curQuery = curQuery.replace(lteRelativeRegex, '');\n return curQuery.trim();\n}\nfunction unQuoteString(input) {\n if (input.match(/^\".*?[^\\\\]\"$/)) {\n return input.slice(1, -1).replace(/\\\\\"/g, '\"').replace(/\\\\\\\\/g, '\\\\');\n }\n return input;\n}\nfunction unQuoteAngles(input) {\n return input.replace(/\\\\</g, '<').replace(/\\\\>/g, '>').replace(/\\\\\\\\/g, '\\\\');\n}\nfunction unQuoteCurlies(input) {\n return input\n .replace(/\\\\\\{/g, '{')\n .replace(/\\\\\\}/g, '}')\n .replace(/\\\\\\\\/g, '\\\\');\n}\n//# sourceMappingURL=queryParser.js.map","export default function splitn(str, delimiter, limit = Infinity) {\n let curStr = str;\n const a = [];\n while (a.length < limit && curStr.length) {\n const next = curStr.split(delimiter, 1);\n a.push(next[0]);\n curStr = curStr.slice(next[0].length);\n if (a.length < limit && curStr) {\n curStr = curStr.replace(delimiter, '');\n if (!curStr) {\n a.push(curStr);\n }\n }\n }\n if (curStr && limit > 0) {\n a[a.length - 1] += curStr;\n }\n return a;\n}\n//# sourceMappingURL=index.js.map","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(568);\n"],"names":["root","factory","exports","module","define","amd","this","__createBinding","Object","create","o","m","k","k2","undefined","desc","getOwnPropertyDescriptor","__esModule","writable","configurable","enumerable","get","defineProperty","__exportStar","p","prototype","hasOwnProperty","call","__importDefault","mod","value","queryParser","queryParser_1","default","splitn_1","query","entityClass","defaultFields","qrefMap","bareHandler","input","_class","match","length","type","ilike","map","field","options","class","selectorsParser","selector","curQuery","subSelectorPairs","inQuote","nesting","currentStart","i","push","reverse","pair","selectorQuery","slice","startsWith","qrefRegex","qrefMatch","qref","name","trim","replace","className","qrefQuery","split","EntityClass","endsWith","e","equalRegex","equalMatch","equal","JSON","parse","unQuoteString","refRegex","refMatch","ref","containRegex","containMatch","contain","unQuoteAngles","posixRegex","posixMatch","imatch","likeRegex","likeMatch","like","guidRegex","guidMatch","guid","truthyRegex","truthyMatch","truthy","tagRegex","tagMatch","tag","gtRegex","gtMatch","gt","Number","gtRelativeRegex","gtRelativeMatch","gteRegex","gteMatch","gte","gteRelativeRegex","gteRelativeMatch","ltRegex","ltMatch","lt","ltRelativeRegex","ltRelativeMatch","lteRegex","lteMatch","lte","lteRelativeRegex","lteRelativeMatch","selectorParser","limitRegex","limitMatch","limit","offsetRegex","offsetMatch","offset","reverseRegex","reverseMatch","bareSelector","keys","splitn","str","delimiter","Infinity","curStr","a","next","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","key","obj","prop","r","Symbol","toStringTag"],"sourceRoot":""}
1
+ {"version":3,"file":"index.js","mappings":"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","sources":["webpack://@nymphjs/client/webpack/universalModuleDefinition","webpack://@nymphjs/client/../../node_modules/@sciactive/splitn/dist/es/index.js","webpack://@nymphjs/client/./lib/index.js","webpack://@nymphjs/client/./lib/queryParser.js","webpack://@nymphjs/client/webpack/bootstrap","webpack://@nymphjs/client/webpack/runtime/define property getters","webpack://@nymphjs/client/webpack/runtime/hasOwnProperty shorthand","webpack://@nymphjs/client/webpack/runtime/make namespace object","webpack://@nymphjs/client/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@nymphjs/client\"] = factory();\n\telse\n\t\troot[\"@nymphjs/client\"] = factory();\n})(this, () => {\nreturn ","export function splitn(str, delimiter, limit = Infinity) {\n let curStr = str;\n const a = [];\n while (a.length < limit && curStr.length) {\n const next = curStr.split(delimiter, 1);\n a.push(next[0]);\n curStr = curStr.slice(next[0].length);\n if (a.length < limit && curStr) {\n curStr = curStr.replace(delimiter, '');\n if (!curStr) {\n a.push(curStr);\n }\n }\n }\n if (curStr && limit > 0) {\n a[a.length - 1] += curStr;\n }\n return a;\n}\nexport default splitn;\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.queryParser = void 0;\n__exportStar(require(\"./queryParser\"), exports);\nconst queryParser_1 = __importDefault(require(\"./queryParser\"));\nexports.queryParser = queryParser_1.default;\nexports.default = queryParser_1.default;\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst splitn_1 = __importDefault(require(\"@sciactive/splitn\"));\nfunction queryParser({ query, entityClass, defaultFields = ['name'], qrefMap = {}, bareHandler = (input, _class, defaultFields = ['name']) => {\n if (!input.match(/[_%]/)) {\n input = `%${input}%`;\n }\n if (defaultFields.length) {\n return {\n type: '|',\n ilike: defaultFields.map((field) => [field, input]),\n };\n }\n return {};\n}, }) {\n const options = { class: entityClass };\n return [\n options,\n ...selectorsParser({\n query,\n entityClass,\n type: '&',\n defaultFields,\n qrefMap,\n options,\n bareHandler,\n }),\n ];\n}\nexports.default = queryParser;\nfunction selectorsParser({ query, entityClass, type, defaultFields, qrefMap, options, bareHandler, }) {\n const selector = { type };\n let curQuery = query;\n // Look for top level selectors inside parens.\n const subSelectorPairs = [];\n let inQuote = false;\n let nesting = 0;\n let currentStart = null;\n for (let i = 0; i < curQuery.length; i++) {\n if (curQuery[i] === '\"') {\n if (!inQuote) {\n inQuote = true;\n }\n else if (curQuery[i - 1] !== '\\\\') {\n inQuote = false;\n }\n }\n else if (inQuote) {\n continue;\n }\n else if (curQuery[i] === '(') {\n if (currentStart == null) {\n currentStart = i;\n }\n else {\n nesting++;\n }\n }\n else if (curQuery[i] === ')') {\n if (nesting === 0) {\n if (currentStart == null) {\n // mismatched parens\n }\n else {\n subSelectorPairs.push([currentStart, i + 1]);\n currentStart = null;\n }\n }\n else {\n nesting--;\n }\n }\n }\n if (subSelectorPairs.length) {\n selector.selector = [];\n // Reverse order so we can take them out back to front.\n subSelectorPairs.reverse();\n for (let pair of subSelectorPairs) {\n // Slice out in between the parens.\n let selectorQuery = curQuery.slice(pair[0] + 1, pair[1] - 1);\n // Cut the selector out of the query.\n curQuery = curQuery.slice(0, pair[0]) + curQuery.slice(pair[1]);\n // First char inside parens determines type of selector.\n let type = '&';\n if (selectorQuery.startsWith('&')) {\n selectorQuery = selectorQuery.slice(1);\n }\n else if (selectorQuery.startsWith('!&')) {\n type = '!&';\n selectorQuery = selectorQuery.slice(2);\n }\n else if (selectorQuery.startsWith('|')) {\n type = '|';\n selectorQuery = selectorQuery.slice(1);\n }\n else if (selectorQuery.startsWith('!|')) {\n type = '!|';\n selectorQuery = selectorQuery.slice(2);\n }\n else if (selectorQuery.startsWith('!')) {\n type = '!&';\n selectorQuery = selectorQuery.slice(1);\n }\n selector.selector.push(...selectorsParser({\n query: selectorQuery,\n entityClass,\n type,\n defaultFields,\n qrefMap,\n bareHandler,\n }));\n }\n }\n curQuery = selectorParser({\n query: curQuery,\n selector,\n qrefMap,\n bareHandler,\n });\n if (options) {\n const limitRegex = /(?: |^)limit:(\\d+)(?= |$)/;\n const limitMatch = curQuery.match(limitRegex);\n if (limitMatch) {\n options.limit = Number(limitMatch[1]);\n }\n curQuery = curQuery.replace(limitRegex, '');\n const offsetRegex = /(?: |^)offset:(\\d+)(?= |$)/;\n const offsetMatch = curQuery.match(offsetRegex);\n if (offsetMatch) {\n options.offset = Number(offsetMatch[1]);\n }\n curQuery = curQuery.replace(offsetRegex, '');\n // JavaScript variable names are ridiculously infeasable to check\n // thoroughly, so this is a \"best attempt\".\n const sortRegex = /(?: |^)sort:([_$a-zA-Z\\xA0-\\uFFFF][_$a-zA-Z0-9\\xA0-\\uFFFF]*)(?= |$)/;\n const sortMatch = curQuery.match(sortRegex);\n if (sortMatch) {\n options.sort = sortMatch[1];\n }\n curQuery = curQuery.replace(sortRegex, '');\n const reverseRegex = /(?: |^)reverse:(true|false|1|0)(?= |$)/;\n const reverseMatch = curQuery.match(reverseRegex);\n if (reverseMatch) {\n options.reverse = reverseMatch[1] === 'true' || reverseMatch[1] === '1';\n }\n curQuery = curQuery.replace(reverseRegex, '');\n }\n curQuery = curQuery.trim();\n if (curQuery.length) {\n const bareSelector = bareHandler(curQuery, entityClass, defaultFields);\n if (Object.keys(bareSelector).length) {\n return [\n ...(Object.keys(selector).length > 1 ? [selector] : []),\n {\n type: '|',\n ...bareSelector,\n },\n ];\n }\n }\n if ('selector' in selector &&\n selector.selector.length === 1 &&\n Object.keys(selector).length === 2 &&\n (selector.type === '&' || selector.type === '|')) {\n // There is only one subselector, and this selector is a positive match\n // type, so just return it as the selector.\n return selector.selector;\n }\n return [selector];\n}\nfunction selectorParser({ query, selector, qrefMap, bareHandler, }) {\n let curQuery = query;\n // eg. user<{User name=\"Hunter\"}> or user!<{User name=\"Hunter\"}>\n const qrefRegex = /(?: |^)(\\w+)!?<\\{(\\w+) (.*?[^\\\\])\\}>(?= |$)/g;\n const qrefMatch = curQuery.match(qrefRegex);\n if (qrefMatch) {\n selector.qref = [];\n selector['!qref'] = [];\n for (let match of qrefMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim().slice(0, -1), '<', 2);\n value = unQuoteCurlies(value.slice(1, -1));\n let [className, qrefQuery] = (0, splitn_1.default)(value, ' ', 2);\n const EntityClass = qrefMap[className].class;\n if (EntityClass == null) {\n continue;\n }\n const qref = queryParser({\n query: qrefQuery,\n entityClass: EntityClass,\n defaultFields: qrefMap[className].defaultFields,\n qrefMap,\n bareHandler,\n });\n if (name.endsWith('!')) {\n selector['!qref'].push([name.slice(0, -1), qref]);\n }\n else {\n selector.qref.push([name, qref]);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.qref.length) {\n delete selector.qref;\n }\n if (!selector['!qref'].length) {\n delete selector['!qref'];\n }\n }\n curQuery = curQuery.replace(qrefRegex, '');\n // eg. name=Marty or name=\"Marty McFly\" or enabled=true or someArray=[1,2]\n const equalRegex = /(?: |^)(\\w+)!?=(\"\"|\".*?[^\\\\]\"|[^ ]+)(?= |$)/g;\n const equalMatch = curQuery.match(equalRegex);\n if (equalMatch) {\n selector.equal = [];\n selector['!equal'] = [];\n for (let match of equalMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '=', 2);\n try {\n if (name.endsWith('!')) {\n selector['!equal'].push([name.slice(0, -1), JSON.parse(value)]);\n }\n else {\n selector.equal.push([name, JSON.parse(value)]);\n }\n }\n catch (e) {\n if (name.endsWith('!')) {\n selector['!equal'].push([name.slice(0, -1), unQuoteString(value)]);\n }\n else {\n selector.equal.push([name, unQuoteString(value)]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.equal.length) {\n delete selector.equal;\n }\n if (!selector['!equal'].length) {\n delete selector['!equal'];\n }\n }\n curQuery = curQuery.replace(equalRegex, '');\n // eg. user<{790274347f9b3a018c2cedee}> or user!<{790274347f9b3a018c2cedee}>\n const refRegex = /(?: |^)(\\w+)!?<\\{([0-9a-f]{24})\\}>(?= |$)/g;\n const refMatch = curQuery.match(refRegex);\n if (refMatch) {\n selector.ref = [];\n selector['!ref'] = [];\n for (let match of refMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim().slice(0, -1), '<', 2);\n if (name.endsWith('!')) {\n selector['!ref'].push([name.slice(0, -1), value.slice(1, -1)]);\n }\n else {\n selector.ref.push([name, value.slice(1, -1)]);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.ref.length) {\n delete selector.ref;\n }\n if (!selector['!ref'].length) {\n delete selector['!ref'];\n }\n }\n curQuery = curQuery.replace(refRegex, '');\n // eg. someArrayOfNumbers<10> or someObject!<\"some string\">\n const containRegex = /(?: |^)(\\w+)!?(<.*?[^\\\\]>)(?= |$)/g;\n const containMatch = curQuery.match(containRegex);\n if (containMatch) {\n selector.contain = [];\n selector['!contain'] = [];\n for (let match of containMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim().slice(0, -1), '<', 2);\n try {\n if (name.endsWith('!')) {\n selector['!contain'].push([\n name.slice(0, -1),\n JSON.parse(unQuoteAngles(value)),\n ]);\n }\n else {\n selector.contain.push([name, JSON.parse(unQuoteAngles(value))]);\n }\n }\n catch (e) {\n if (name.endsWith('!')) {\n selector['!contain'].push([\n name.slice(0, -1),\n unQuoteAngles(value),\n ]);\n }\n else {\n selector.contain.push([name, unQuoteAngles(value)]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.contain.length) {\n delete selector.contain;\n }\n if (!selector['!contain'].length) {\n delete selector['!contain'];\n }\n }\n curQuery = curQuery.replace(containRegex, '');\n // eg. name~/Hunter/ or name!~/hunter/i\n const posixRegex = /(?: |^)(\\w+)!?~(\\/\\/|\\/.*?[^\\\\]\\/)i?(?= |$)/g;\n const posixMatch = curQuery.match(posixRegex);\n if (posixMatch) {\n selector.match = [];\n selector['!match'] = [];\n selector.imatch = [];\n selector['!imatch'] = [];\n for (let match of posixMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '~', 2);\n if (name.endsWith('!')) {\n if (value.endsWith('i')) {\n selector['!imatch'].push([\n name.slice(0, -1),\n value.replace(/^\\/|\\/i$/g, ''),\n ]);\n }\n else {\n selector['!match'].push([\n name.slice(0, -1),\n value.replace(/^\\/|\\/$/g, ''),\n ]);\n }\n }\n else {\n if (value.endsWith('i')) {\n selector.imatch.push([name, value.replace(/^\\/|\\/i$/g, '')]);\n }\n else {\n selector.match.push([name, value.replace(/^\\/|\\/$/g, '')]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.match.length) {\n delete selector.match;\n }\n if (!selector['!match'].length) {\n delete selector['!match'];\n }\n if (!selector.imatch.length) {\n delete selector.imatch;\n }\n if (!selector['!imatch'].length) {\n delete selector['!imatch'];\n }\n }\n curQuery = curQuery.replace(posixRegex, '');\n // eg. name~Hunter or name!~\"hunter\"i\n const likeRegex = /(?: |^)(\\w+)!?~(\"\"i?|\".*?[^\\\\]\"i?|[^ ]+)(?= |$)/g;\n const likeMatch = curQuery.match(likeRegex);\n if (likeMatch) {\n selector.like = [];\n selector['!like'] = [];\n selector.ilike = [];\n selector['!ilike'] = [];\n for (let match of likeMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '~', 2);\n if (name.endsWith('!')) {\n if (value.endsWith('\"i')) {\n selector['!ilike'].push([\n name.slice(0, -1),\n unQuoteString(value.slice(0, -1)),\n ]);\n }\n else {\n selector['!like'].push([name.slice(0, -1), unQuoteString(value)]);\n }\n }\n else {\n if (value.endsWith('\"i')) {\n selector.ilike.push([name, unQuoteString(value.slice(0, -1))]);\n }\n else {\n selector.like.push([name, unQuoteString(value)]);\n }\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.like.length) {\n delete selector.like;\n }\n if (!selector['!like'].length) {\n delete selector['!like'];\n }\n if (!selector.ilike.length) {\n delete selector.ilike;\n }\n if (!selector['!ilike'].length) {\n delete selector['!ilike'];\n }\n }\n curQuery = curQuery.replace(likeRegex, '');\n // eg. {790274347f9b3a018c2cedee} or {!790274347f9b3a018c2cedee}\n const guidRegex = /(?: |^)\\{!?([0-9a-f]{24})\\}(?= |$)/g;\n const guidMatch = curQuery.match(guidRegex);\n if (guidMatch) {\n selector.guid = [];\n selector['!guid'] = [];\n for (let match of guidMatch) {\n try {\n let guid = match.trim().replace(/^\\{|\\}$/g, '');\n if (guid.startsWith('!')) {\n selector['!guid'].push(guid.slice(1));\n }\n else {\n selector.guid.push(guid);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.guid.length) {\n delete selector.guid;\n }\n if (!selector['!guid'].length) {\n delete selector['!guid'];\n }\n }\n curQuery = curQuery.replace(guidRegex, '');\n // eg. [enabled] or [!defaultPrimaryGroup]\n const truthyRegex = /(?: |^)\\[(!?\\w+)\\](?= |$)/g;\n const truthyMatch = curQuery.match(truthyRegex);\n if (truthyMatch) {\n selector.truthy = [];\n selector['!truthy'] = [];\n for (let match of truthyMatch) {\n try {\n let name = match.trim().replace(/^\\[|\\]$/g, '');\n if (name.startsWith('!')) {\n selector['!truthy'].push(name.slice(1));\n }\n else {\n selector.truthy.push(name);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.truthy.length) {\n delete selector.truthy;\n }\n if (!selector['!truthy'].length) {\n delete selector['!truthy'];\n }\n }\n curQuery = curQuery.replace(truthyRegex, '');\n // eg. <archived> or <!archived>\n const tagRegex = /(?: |^)<(!?\\w+)>(?= |$)/g;\n const tagMatch = curQuery.match(tagRegex);\n if (tagMatch) {\n selector.tag = [];\n selector['!tag'] = [];\n for (let match of tagMatch) {\n try {\n let name = match.trim().replace(/^<|>$/g, '');\n if (name.startsWith('!')) {\n selector['!tag'].push(name.slice(1));\n }\n else {\n selector.tag.push(name);\n }\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.tag.length) {\n delete selector.tag;\n }\n if (!selector['!tag'].length) {\n delete selector['!tag'];\n }\n }\n curQuery = curQuery.replace(tagRegex, '');\n // eg. cdate>15\n const gtRegex = /(?: |^)(\\w+)>(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const gtMatch = curQuery.match(gtRegex);\n if (gtMatch) {\n selector.gt = [];\n for (let match of gtMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '>', 2);\n selector.gt.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gt.length) {\n delete selector.gt;\n }\n }\n curQuery = curQuery.replace(gtRegex, '');\n // eg. cdate>yesterday or cdate>\"2 days ago\"\n const gtRelativeRegex = /(?: |^)(\\w+)>(\\w+|\"[^\"]+\")(?= |$)/g;\n const gtRelativeMatch = curQuery.match(gtRelativeRegex);\n if (gtRelativeMatch) {\n if (selector.gt == null) {\n selector.gt = [];\n }\n for (let match of gtRelativeMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '>', 2);\n selector.gt.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gt.length) {\n delete selector.gt;\n }\n }\n curQuery = curQuery.replace(gtRelativeRegex, '');\n // eg. cdate>=15\n const gteRegex = /(?: |^)(\\w+)>=(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const gteMatch = curQuery.match(gteRegex);\n if (gteMatch) {\n selector.gte = [];\n for (let match of gteMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '>=', 2);\n selector.gte.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gte.length) {\n delete selector.gte;\n }\n }\n curQuery = curQuery.replace(gteRegex, '');\n // eg. cdate>=yesterday or cdate>=\"2 days ago\"\n const gteRelativeRegex = /(?: |^)(\\w+)>=(\\w+|\"[^\"]+\")(?= |$)/g;\n const gteRelativeMatch = curQuery.match(gteRelativeRegex);\n if (gteRelativeMatch) {\n if (selector.gte == null) {\n selector.gte = [];\n }\n for (let match of gteRelativeMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '>=', 2);\n selector.gte.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.gte.length) {\n delete selector.gte;\n }\n }\n curQuery = curQuery.replace(gteRelativeRegex, '');\n // eg. cdate<15\n const ltRegex = /(?: |^)(\\w+)<(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const ltMatch = curQuery.match(ltRegex);\n if (ltMatch) {\n selector.lt = [];\n for (let match of ltMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '<', 2);\n selector.lt.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lt.length) {\n delete selector.lt;\n }\n }\n curQuery = curQuery.replace(ltRegex, '');\n // eg. cdate<yesterday or cdate<\"2 days ago\"\n const ltRelativeRegex = /(?: |^)(\\w+)<(\\w+|\"[^\"]+\")(?= |$)/g;\n const ltRelativeMatch = curQuery.match(ltRelativeRegex);\n if (ltRelativeMatch) {\n if (selector.lt == null) {\n selector.lt = [];\n }\n for (let match of ltRelativeMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '<', 2);\n selector.lt.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lt.length) {\n delete selector.lt;\n }\n }\n curQuery = curQuery.replace(ltRelativeRegex, '');\n // eg. cdate<=15\n const lteRegex = /(?: |^)(\\w+)<=(-?\\d+(?:\\.\\d+)?)(?= |$)/g;\n const lteMatch = curQuery.match(lteRegex);\n if (lteMatch) {\n selector.lte = [];\n for (let match of lteMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '<=', 2);\n selector.lte.push([name, Number(value)]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lte.length) {\n delete selector.lte;\n }\n }\n curQuery = curQuery.replace(lteRegex, '');\n // eg. cdate<=yesterday or cdate<=\"2 days ago\"\n const lteRelativeRegex = /(?: |^)(\\w+)<=(\\w+|\"[^\"]+\")(?= |$)/g;\n const lteRelativeMatch = curQuery.match(lteRelativeRegex);\n if (lteRelativeMatch) {\n if (selector.lte == null) {\n selector.lte = [];\n }\n for (let match of lteRelativeMatch) {\n try {\n let [name, value] = (0, splitn_1.default)(match.trim(), '<=', 2);\n selector.lte.push([\n name,\n null,\n value.replace(/\"/g, ''),\n ]);\n }\n catch (e) {\n continue;\n }\n }\n if (!selector.lte.length) {\n delete selector.lte;\n }\n }\n curQuery = curQuery.replace(lteRelativeRegex, '');\n return curQuery.trim();\n}\nfunction unQuoteString(input) {\n if (input.match(/^\".*?[^\\\\]\"$/)) {\n return input.slice(1, -1).replace(/\\\\\"/g, '\"').replace(/\\\\\\\\/g, '\\\\');\n }\n return input;\n}\nfunction unQuoteAngles(input) {\n return input.replace(/\\\\</g, '<').replace(/\\\\>/g, '>').replace(/\\\\\\\\/g, '\\\\');\n}\nfunction unQuoteCurlies(input) {\n return input\n .replace(/\\\\\\{/g, '{')\n .replace(/\\\\\\}/g, '}')\n .replace(/\\\\\\\\/g, '\\\\');\n}\n//# sourceMappingURL=queryParser.js.map","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(509);\n"],"names":["root","factory","exports","module","define","amd","this","splitn","str","delimiter","limit","Infinity","curStr","a","length","next","split","push","slice","replace","__createBinding","Object","create","o","m","k","k2","undefined","desc","getOwnPropertyDescriptor","__esModule","writable","configurable","enumerable","get","defineProperty","__exportStar","p","prototype","hasOwnProperty","call","__importDefault","mod","value","queryParser","queryParser_1","default","splitn_1","query","entityClass","defaultFields","qrefMap","bareHandler","input","_class","match","type","ilike","map","field","options","class","selectorsParser","selector","curQuery","subSelectorPairs","inQuote","nesting","currentStart","i","reverse","pair","selectorQuery","startsWith","qrefRegex","qrefMatch","qref","name","trim","className","qrefQuery","EntityClass","endsWith","e","equalRegex","equalMatch","equal","JSON","parse","unQuoteString","refRegex","refMatch","ref","containRegex","containMatch","contain","unQuoteAngles","posixRegex","posixMatch","imatch","likeRegex","likeMatch","like","guidRegex","guidMatch","guid","truthyRegex","truthyMatch","truthy","tagRegex","tagMatch","tag","gtRegex","gtMatch","gt","Number","gtRelativeRegex","gtRelativeMatch","gteRegex","gteMatch","gte","gteRelativeRegex","gteRelativeMatch","ltRegex","ltMatch","lt","ltRelativeRegex","ltRelativeMatch","lteRegex","lteMatch","lte","lteRelativeRegex","lteRelativeMatch","selectorParser","limitRegex","limitMatch","offsetRegex","offsetMatch","offset","sortRegex","sortMatch","sort","reverseRegex","reverseMatch","bareSelector","keys","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","key","obj","prop","r","Symbol","toStringTag"],"sourceRoot":""}