@pellux/goodvibes-sdk 0.25.0 → 0.25.2

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 (128) hide show
  1. package/dist/_internal/daemon/otlp-protobuf.d.ts +3 -0
  2. package/dist/_internal/daemon/otlp-protobuf.d.ts.map +1 -0
  3. package/dist/_internal/daemon/otlp-protobuf.js +968 -0
  4. package/dist/_internal/daemon/telemetry-routes.d.ts.map +1 -1
  5. package/dist/_internal/daemon/telemetry-routes.js +22 -13
  6. package/dist/_internal/platform/intelligence/lsp/service.d.ts.map +1 -1
  7. package/dist/_internal/platform/intelligence/lsp/service.js +18 -9
  8. package/dist/_internal/platform/providers/anthropic-vertex.d.ts.map +1 -1
  9. package/dist/_internal/platform/providers/anthropic-vertex.js +135 -2
  10. package/dist/_internal/platform/version.js +1 -1
  11. package/dist/_internal/platform/watchers/registry.d.ts.map +1 -1
  12. package/dist/_internal/platform/watchers/registry.js +4 -1
  13. package/package.json +9 -8
  14. package/vendor/bash-language-server/CHANGELOG.md +453 -0
  15. package/vendor/bash-language-server/GOODVIBES_PATCH.md +22 -0
  16. package/vendor/bash-language-server/README.md +230 -0
  17. package/vendor/bash-language-server/out/analyser.d.ts +187 -0
  18. package/vendor/bash-language-server/out/analyser.js +782 -0
  19. package/vendor/bash-language-server/out/analyser.js.map +1 -0
  20. package/vendor/bash-language-server/out/builtins.d.ts +2 -0
  21. package/vendor/bash-language-server/out/builtins.js +71 -0
  22. package/vendor/bash-language-server/out/builtins.js.map +1 -0
  23. package/vendor/bash-language-server/out/cli.d.ts +3 -0
  24. package/vendor/bash-language-server/out/cli.js +74 -0
  25. package/vendor/bash-language-server/out/cli.js.map +1 -0
  26. package/vendor/bash-language-server/out/config.d.ts +88 -0
  27. package/vendor/bash-language-server/out/config.js +96 -0
  28. package/vendor/bash-language-server/out/config.js.map +1 -0
  29. package/vendor/bash-language-server/out/executables.d.ts +19 -0
  30. package/vendor/bash-language-server/out/executables.js +86 -0
  31. package/vendor/bash-language-server/out/executables.js.map +1 -0
  32. package/vendor/bash-language-server/out/parser.d.ts +2 -0
  33. package/vendor/bash-language-server/out/parser.js +36 -0
  34. package/vendor/bash-language-server/out/parser.js.map +1 -0
  35. package/vendor/bash-language-server/out/reserved-words.d.ts +2 -0
  36. package/vendor/bash-language-server/out/reserved-words.js +33 -0
  37. package/vendor/bash-language-server/out/reserved-words.js.map +1 -0
  38. package/vendor/bash-language-server/out/server.d.ts +56 -0
  39. package/vendor/bash-language-server/out/server.js +756 -0
  40. package/vendor/bash-language-server/out/server.js.map +1 -0
  41. package/vendor/bash-language-server/out/shellcheck/config.d.ts +5 -0
  42. package/vendor/bash-language-server/out/shellcheck/config.js +17 -0
  43. package/vendor/bash-language-server/out/shellcheck/config.js.map +1 -0
  44. package/vendor/bash-language-server/out/shellcheck/directive.d.ts +18 -0
  45. package/vendor/bash-language-server/out/shellcheck/directive.js +62 -0
  46. package/vendor/bash-language-server/out/shellcheck/directive.js.map +1 -0
  47. package/vendor/bash-language-server/out/shellcheck/index.d.ts +22 -0
  48. package/vendor/bash-language-server/out/shellcheck/index.js +229 -0
  49. package/vendor/bash-language-server/out/shellcheck/index.js.map +1 -0
  50. package/vendor/bash-language-server/out/shellcheck/types.d.ts +175 -0
  51. package/vendor/bash-language-server/out/shellcheck/types.js +35 -0
  52. package/vendor/bash-language-server/out/shellcheck/types.js.map +1 -0
  53. package/vendor/bash-language-server/out/shfmt/index.d.ts +18 -0
  54. package/vendor/bash-language-server/out/shfmt/index.js +151 -0
  55. package/vendor/bash-language-server/out/shfmt/index.js.map +1 -0
  56. package/vendor/bash-language-server/out/snippets.d.ts +2 -0
  57. package/vendor/bash-language-server/out/snippets.js +671 -0
  58. package/vendor/bash-language-server/out/snippets.js.map +1 -0
  59. package/vendor/bash-language-server/out/types.d.ts +13 -0
  60. package/vendor/bash-language-server/out/types.js +12 -0
  61. package/vendor/bash-language-server/out/types.js.map +1 -0
  62. package/vendor/bash-language-server/out/util/array.d.ts +14 -0
  63. package/vendor/bash-language-server/out/util/array.js +36 -0
  64. package/vendor/bash-language-server/out/util/array.js.map +1 -0
  65. package/vendor/bash-language-server/out/util/async.d.ts +13 -0
  66. package/vendor/bash-language-server/out/util/async.js +24 -0
  67. package/vendor/bash-language-server/out/util/async.js.map +1 -0
  68. package/vendor/bash-language-server/out/util/declarations.d.ts +88 -0
  69. package/vendor/bash-language-server/out/util/declarations.js +295 -0
  70. package/vendor/bash-language-server/out/util/declarations.js.map +1 -0
  71. package/vendor/bash-language-server/out/util/discriminate.d.ts +1 -0
  72. package/vendor/bash-language-server/out/util/discriminate.js +7 -0
  73. package/vendor/bash-language-server/out/util/discriminate.js.map +1 -0
  74. package/vendor/bash-language-server/out/util/fs.d.ts +6 -0
  75. package/vendor/bash-language-server/out/util/fs.js +73 -0
  76. package/vendor/bash-language-server/out/util/fs.js.map +1 -0
  77. package/vendor/bash-language-server/out/util/logger.d.ts +35 -0
  78. package/vendor/bash-language-server/out/util/logger.js +105 -0
  79. package/vendor/bash-language-server/out/util/logger.js.map +1 -0
  80. package/vendor/bash-language-server/out/util/lsp.d.ts +5 -0
  81. package/vendor/bash-language-server/out/util/lsp.js +13 -0
  82. package/vendor/bash-language-server/out/util/lsp.js.map +1 -0
  83. package/vendor/bash-language-server/out/util/platform.d.ts +1 -0
  84. package/vendor/bash-language-server/out/util/platform.js +7 -0
  85. package/vendor/bash-language-server/out/util/platform.js.map +1 -0
  86. package/vendor/bash-language-server/out/util/sh.d.ts +16 -0
  87. package/vendor/bash-language-server/out/util/sh.js +132 -0
  88. package/vendor/bash-language-server/out/util/sh.js.map +1 -0
  89. package/vendor/bash-language-server/out/util/shebang.d.ts +10 -0
  90. package/vendor/bash-language-server/out/util/shebang.js +53 -0
  91. package/vendor/bash-language-server/out/util/shebang.js.map +1 -0
  92. package/vendor/bash-language-server/out/util/sourcing.d.ts +15 -0
  93. package/vendor/bash-language-server/out/util/sourcing.js +182 -0
  94. package/vendor/bash-language-server/out/util/sourcing.js.map +1 -0
  95. package/vendor/bash-language-server/out/util/tree-sitter.d.ts +22 -0
  96. package/vendor/bash-language-server/out/util/tree-sitter.js +110 -0
  97. package/vendor/bash-language-server/out/util/tree-sitter.js.map +1 -0
  98. package/vendor/bash-language-server/package.json +52 -0
  99. package/vendor/bash-language-server/parser.info +2 -0
  100. package/vendor/bash-language-server/tree-sitter-bash.wasm +0 -0
  101. package/dist/_internal/platform/runtime/contracts/index.d.ts +0 -40
  102. package/dist/_internal/platform/runtime/contracts/index.d.ts.map +0 -1
  103. package/dist/_internal/platform/runtime/contracts/index.js +0 -133
  104. package/dist/_internal/platform/runtime/contracts/migrations/index.d.ts +0 -75
  105. package/dist/_internal/platform/runtime/contracts/migrations/index.d.ts.map +0 -1
  106. package/dist/_internal/platform/runtime/contracts/migrations/index.js +0 -158
  107. package/dist/_internal/platform/runtime/contracts/migrations/schemas.d.ts +0 -57
  108. package/dist/_internal/platform/runtime/contracts/migrations/schemas.d.ts.map +0 -1
  109. package/dist/_internal/platform/runtime/contracts/migrations/schemas.js +0 -157
  110. package/dist/_internal/platform/runtime/contracts/types.d.ts +0 -123
  111. package/dist/_internal/platform/runtime/contracts/types.d.ts.map +0 -1
  112. package/dist/_internal/platform/runtime/contracts/types.js +0 -41
  113. package/dist/_internal/platform/runtime/contracts/validators/event-envelope.d.ts +0 -24
  114. package/dist/_internal/platform/runtime/contracts/validators/event-envelope.d.ts.map +0 -1
  115. package/dist/_internal/platform/runtime/contracts/validators/event-envelope.js +0 -104
  116. package/dist/_internal/platform/runtime/contracts/validators/index.d.ts +0 -11
  117. package/dist/_internal/platform/runtime/contracts/validators/index.d.ts.map +0 -1
  118. package/dist/_internal/platform/runtime/contracts/validators/index.js +0 -10
  119. package/dist/_internal/platform/runtime/contracts/validators/runtime-state.d.ts +0 -23
  120. package/dist/_internal/platform/runtime/contracts/validators/runtime-state.d.ts.map +0 -1
  121. package/dist/_internal/platform/runtime/contracts/validators/runtime-state.js +0 -101
  122. package/dist/_internal/platform/runtime/contracts/validators/session.d.ts +0 -24
  123. package/dist/_internal/platform/runtime/contracts/validators/session.d.ts.map +0 -1
  124. package/dist/_internal/platform/runtime/contracts/validators/session.js +0 -103
  125. package/dist/_internal/platform/runtime/contracts/version.d.ts +0 -84
  126. package/dist/_internal/platform/runtime/contracts/version.d.ts.map +0 -1
  127. package/dist/_internal/platform/runtime/contracts/version.js +0 -41
  128. package/scripts/postinstall-patch-minimatch.mjs +0 -285
@@ -0,0 +1,671 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SNIPPETS = void 0;
4
+ /**
5
+ * Naming convention for `documentation`:
6
+ * - for Bash operators it's '<operator> operator'
7
+ * - for Bash documentation it's 'documentation definition' or '"<documentation>" documentation definition'
8
+ * - for Bash functions it's 'function definition' or '"<function>" function definition'
9
+ * - for Bash character classes it's any string with optional mnemonics depicted via square brackets
10
+ * - for shell shebang it's 'shebang'
11
+ * - for anything else it's any string
12
+ *
13
+ * Naming convention for `label`:
14
+ * - for shell shebang it's 'shebang' or 'shebang-with-arguments'
15
+ * - for Bash operators it's '<operator>[<nested-operator>]', where:
16
+ * - <operator> is Bash operator
17
+ * - <nested-operator> is 'test'
18
+ * used when [[ command is contained in <operator> condition
19
+ * - term delimiter: dash, like 'if-test'
20
+ * - for Bash parameter expansions it's '[<prefix>]<expression>', where:
21
+ * - <prefix> is one of 'set'/'error'
22
+ * used when expansion modifies variable or prints error to stderr
23
+ * - <expession> is 'if-(set|unset)[-or-[not-]null]'
24
+ * - term delimiter: dash, like 'set-if-unset-or-null'
25
+ * - for Bash documentation it's one of 'documentation'/'<documentation>'
26
+ * - for Bash functions it's one of 'function'/'<function>'
27
+ * - for anything else it's any string
28
+ */
29
+ const vscode_languageserver_1 = require("vscode-languageserver");
30
+ const types_1 = require("./types");
31
+ exports.SNIPPETS = [
32
+ {
33
+ documentation: 'shebang',
34
+ label: 'shebang',
35
+ insertText: '#!/usr/bin/env ${1|bash,sh|}',
36
+ },
37
+ {
38
+ documentation: 'shebang-with-arguments',
39
+ label: 'shebang-with-arguments',
40
+ insertText: '#!/usr/bin/env ${1|-S,--split-string|} ${2|bash,sh|} ${3|argument ...|}',
41
+ },
42
+ {
43
+ label: 'and',
44
+ documentation: 'and operator',
45
+ insertText: '${1:first-expression} && ${2:second-expression}',
46
+ },
47
+ {
48
+ label: 'or',
49
+ documentation: 'or operator',
50
+ insertText: '${1:first-expression} || ${2:second-expression}',
51
+ },
52
+ {
53
+ label: 'if',
54
+ documentation: 'if operator',
55
+ insertText: ['if ${1:condition}; then', '\t${2:command ...}', 'fi'].join('\n'),
56
+ },
57
+ {
58
+ label: 'if-else',
59
+ documentation: 'if-else operator',
60
+ insertText: [
61
+ 'if ${1:condition}; then',
62
+ '\t${2:command ...}',
63
+ 'else',
64
+ '\t${3:command ...}',
65
+ 'fi',
66
+ ].join('\n'),
67
+ },
68
+ {
69
+ label: 'if-less',
70
+ documentation: 'if with number comparison',
71
+ insertText: [
72
+ 'if (( "${1:first-expression}" < "${2:second-expression}" )); then',
73
+ '\t${3:command ...}',
74
+ 'fi',
75
+ ].join('\n'),
76
+ },
77
+ {
78
+ label: 'if-greater',
79
+ documentation: 'if with number comparison',
80
+ insertText: [
81
+ 'if (( "${1:first-expression}" > "${2:second-expression}" )); then',
82
+ '\t${3:command ...}',
83
+ 'fi',
84
+ ].join('\n'),
85
+ },
86
+ {
87
+ label: 'if-less-or-equal',
88
+ documentation: 'if with number comparison',
89
+ insertText: [
90
+ 'if (( "${1:first-expression}" <= "${2:second-expression}" )); then',
91
+ '\t${3:command ...}',
92
+ 'fi',
93
+ ].join('\n'),
94
+ },
95
+ {
96
+ label: 'if-greater-or-equal',
97
+ documentation: 'if with number comparison',
98
+ insertText: [
99
+ 'if (( "${1:first-expression}" >= "${2:second-expression}" )); then',
100
+ '\t${3:command ...}',
101
+ 'fi',
102
+ ].join('\n'),
103
+ },
104
+ {
105
+ label: 'if-equal',
106
+ documentation: 'if with number comparison',
107
+ insertText: [
108
+ 'if (( "${1:first-expression}" == "${2:second-expression}" )); then',
109
+ '\t${3:command ...}',
110
+ 'fi',
111
+ ].join('\n'),
112
+ },
113
+ {
114
+ label: 'if-not-equal',
115
+ documentation: 'if with number comparison',
116
+ insertText: [
117
+ 'if (( "${1:first-expression}" != "${2:second-expression}" )); then',
118
+ '\t${3:command ...}',
119
+ 'fi',
120
+ ].join('\n'),
121
+ },
122
+ {
123
+ label: 'if-string-equal',
124
+ documentation: 'if with string comparison',
125
+ insertText: [
126
+ 'if [[ "${1:first-expression}" == "${2:second-expression}" ]]; then',
127
+ '\t${3:command ...}',
128
+ 'fi',
129
+ ].join('\n'),
130
+ },
131
+ {
132
+ label: 'if-string-not-equal',
133
+ documentation: 'if with string comparison',
134
+ insertText: [
135
+ 'if [[ "${1:first-expression}" != "${2:second-expression}" ]]; then',
136
+ '\t${3:command ...}',
137
+ 'fi',
138
+ ].join('\n'),
139
+ },
140
+ {
141
+ label: 'if-string-empty',
142
+ documentation: 'if with string comparison (has [z]ero length)',
143
+ insertText: ['if [[ -z "${1:expression}" ]]; then', '\t${2:command ...}', 'fi'].join('\n'),
144
+ },
145
+ {
146
+ label: 'if-string-not-empty',
147
+ documentation: 'if with string comparison ([n]ot empty)',
148
+ insertText: ['if [[ -n "${1:expression}" ]]; then', '\t${2:command ...}', 'fi'].join('\n'),
149
+ },
150
+ {
151
+ label: 'if-defined',
152
+ documentation: 'if with variable existence check',
153
+ insertText: [
154
+ 'if [[ -n "\\${${1:variable}+x}" ]]; then',
155
+ '\t${2:command ...}',
156
+ 'fi',
157
+ ].join('\n'),
158
+ },
159
+ {
160
+ label: 'if-not-defined',
161
+ documentation: 'if with variable existence check',
162
+ insertText: [
163
+ 'if [[ -z "\\${${1:variable}+x}" ]]; then',
164
+ '\t${2:command ...}',
165
+ 'fi',
166
+ ].join('\n'),
167
+ },
168
+ {
169
+ label: 'while',
170
+ documentation: 'while operator',
171
+ insertText: ['while ${1:condition}; do', '\t${2:command ...}', 'done'].join('\n'),
172
+ },
173
+ {
174
+ label: 'while-else',
175
+ documentation: 'while-else operator',
176
+ insertText: [
177
+ 'while ${1:condition}; do',
178
+ '\t${2:command ...}',
179
+ 'else',
180
+ '\t${3:command ...}',
181
+ 'done',
182
+ ].join('\n'),
183
+ },
184
+ {
185
+ label: 'while-less',
186
+ documentation: 'while with number comparison',
187
+ insertText: [
188
+ 'while (( "${1:first-expression}" < "${2:second-expression}" )); do',
189
+ '\t${3:command ...}',
190
+ 'done',
191
+ ].join('\n'),
192
+ },
193
+ {
194
+ label: 'while-greater',
195
+ documentation: 'while with number comparison',
196
+ insertText: [
197
+ 'while (( "${1:first-expression}" > "${2:second-expression}" )); do',
198
+ '\t${3:command ...}',
199
+ 'done',
200
+ ].join('\n'),
201
+ },
202
+ {
203
+ label: 'while-less-or-equal',
204
+ documentation: 'while with number comparison',
205
+ insertText: [
206
+ 'while (( "${1:first-expression}" <= "${2:second-expression}" )); do',
207
+ '\t${3:command ...}',
208
+ 'done',
209
+ ].join('\n'),
210
+ },
211
+ {
212
+ label: 'while-greater-or-equal',
213
+ documentation: 'while with number comparison',
214
+ insertText: [
215
+ 'while (( "${1:first-expression}" >= "${2:second-expression}" )); do',
216
+ '\t${3:command ...}',
217
+ 'done',
218
+ ].join('\n'),
219
+ },
220
+ {
221
+ label: 'while-equal',
222
+ documentation: 'while with number comparison',
223
+ insertText: [
224
+ 'while (( "${1:first-expression}" == "${2:second-expression}" )); do',
225
+ '\t${3:command ...}',
226
+ 'done',
227
+ ].join('\n'),
228
+ },
229
+ {
230
+ label: 'while-not-equal',
231
+ documentation: 'while with number comparison',
232
+ insertText: [
233
+ 'while (( "${1:first-expression}" != "${2:second-expression}" )); do',
234
+ '\t${3:command ...}',
235
+ 'done',
236
+ ].join('\n'),
237
+ },
238
+ {
239
+ label: 'while-string-equal',
240
+ documentation: 'while with string comparison',
241
+ insertText: [
242
+ 'while [[ "${1:first-expression}" == "${2:second-expression}" ]]; do',
243
+ '\t${3:command ...}',
244
+ 'done',
245
+ ].join('\n'),
246
+ },
247
+ {
248
+ label: 'while-string-not-equal',
249
+ documentation: 'while with string comparison',
250
+ insertText: [
251
+ 'while [[ "${1:first-expression}" != "${2:second-expression}" ]]; do',
252
+ '\t${3:command ...}',
253
+ 'done',
254
+ ].join('\n'),
255
+ },
256
+ {
257
+ label: 'while-string-empty',
258
+ documentation: 'while with string comparison (has [z]ero length)',
259
+ insertText: [
260
+ 'while [[ -z "${1:expression}" ]]; do',
261
+ '\t${2:command ...}',
262
+ 'done',
263
+ ].join('\n'),
264
+ },
265
+ {
266
+ label: 'while-string-not-empty',
267
+ documentation: 'while with string comparison ([n]ot empty)',
268
+ insertText: [
269
+ 'while [[ -n "${1:expression}" ]]; do',
270
+ '\t${2:command ...}',
271
+ 'done',
272
+ ].join('\n'),
273
+ },
274
+ {
275
+ label: 'while-defined',
276
+ documentation: 'while with variable existence check',
277
+ insertText: [
278
+ 'while [[ -n "\\${${1:variable}+x}" ]]',
279
+ '\t${2:command ...}',
280
+ 'done',
281
+ ].join('\n'),
282
+ },
283
+ {
284
+ label: 'while-not-defined',
285
+ documentation: 'while with variable existence check',
286
+ insertText: [
287
+ 'while [[ -z "\\${${1:variable}+x}" ]]',
288
+ '\t${2:command ...}',
289
+ 'done',
290
+ ].join('\n'),
291
+ },
292
+ {
293
+ label: 'until',
294
+ documentation: 'until operator',
295
+ insertText: ['until ${1:condition}; do', '\t${2:command ...}', 'done'].join('\n'),
296
+ },
297
+ {
298
+ label: 'until-else',
299
+ documentation: 'until-else operator',
300
+ insertText: [
301
+ 'until ${1:condition}; do',
302
+ '\t${2:command ...}',
303
+ 'else',
304
+ '\t${3:command ...}',
305
+ 'done',
306
+ ].join('\n'),
307
+ },
308
+ {
309
+ label: 'until-less',
310
+ documentation: 'until with number comparison',
311
+ insertText: [
312
+ 'until (( "${1:first-expression}" < "${2:second-expression}" )); do',
313
+ '\t${3:command ...}',
314
+ 'done',
315
+ ].join('\n'),
316
+ },
317
+ {
318
+ label: 'until-greater',
319
+ documentation: 'until with number comparison',
320
+ insertText: [
321
+ 'until (( "${1:first-expression}" > "${2:second-expression}" )); do',
322
+ '\t${3:command ...}',
323
+ 'done',
324
+ ].join('\n'),
325
+ },
326
+ {
327
+ label: 'until-less-or-equal',
328
+ documentation: 'until with number comparison',
329
+ insertText: [
330
+ 'until (( "${1:first-expression}" <= "${2:second-expression}" )); do',
331
+ '\t${3:command ...}',
332
+ 'done',
333
+ ].join('\n'),
334
+ },
335
+ {
336
+ label: 'until-greater-or-equal',
337
+ documentation: 'until with number comparison',
338
+ insertText: [
339
+ 'until (( "${1:first-expression}" >= "${2:second-expression}" )); do',
340
+ '\t${3:command ...}',
341
+ 'done',
342
+ ].join('\n'),
343
+ },
344
+ {
345
+ label: 'until-equal',
346
+ documentation: 'until with number comparison',
347
+ insertText: [
348
+ 'until (( "${1:first-expression}" == "${2:second-expression}" )); do',
349
+ '\t${3:command ...}',
350
+ 'done',
351
+ ].join('\n'),
352
+ },
353
+ {
354
+ label: 'until-not-equal',
355
+ documentation: 'until with number comparison',
356
+ insertText: [
357
+ 'until (( "${1:first-expression}" != "${2:second-expression}" )); do',
358
+ '\t${3:command ...}',
359
+ 'done',
360
+ ].join('\n'),
361
+ },
362
+ {
363
+ label: 'until-string-equal',
364
+ documentation: 'until with string comparison',
365
+ insertText: [
366
+ 'until [[ "${1:first-expression}" == "${2:second-expression}" ]]; do',
367
+ '\t${3:command ...}',
368
+ 'done',
369
+ ].join('\n'),
370
+ },
371
+ {
372
+ label: 'until-string-not-equal',
373
+ documentation: 'until with string comparison',
374
+ insertText: [
375
+ 'until [[ "${1:first-expression}" != "${2:second-expression}" ]]; do',
376
+ '\t${3:command ...}',
377
+ 'done',
378
+ ].join('\n'),
379
+ },
380
+ {
381
+ label: 'until-string-empty',
382
+ documentation: 'until with string comparison (has [z]ero length)',
383
+ insertText: [
384
+ 'until [[ -z "${1:expression}" ]]; do',
385
+ '\t${2:command ...}',
386
+ 'done',
387
+ ].join('\n'),
388
+ },
389
+ {
390
+ label: 'until-string-not-empty',
391
+ documentation: 'until with string comparison ([n]ot empty)',
392
+ insertText: [
393
+ 'until [[ -n "${1:expression}" ]]; do',
394
+ '\t${2:command ...}',
395
+ 'done',
396
+ ].join('\n'),
397
+ },
398
+ {
399
+ label: 'until-defined',
400
+ documentation: 'until with variable existence check',
401
+ insertText: [
402
+ 'until [[ -n "\\${${1:variable}+x}" ]]',
403
+ '\t${2:command ...}',
404
+ 'done',
405
+ ].join('\n'),
406
+ },
407
+ {
408
+ label: 'until-not-defined',
409
+ documentation: 'until with variable existence check',
410
+ insertText: [
411
+ 'until [[ -z "\\${${1:variable}+x}" ]]',
412
+ '\t${2:command ...}',
413
+ 'done',
414
+ ].join('\n'),
415
+ },
416
+ {
417
+ label: 'for',
418
+ documentation: 'for operator',
419
+ insertText: [
420
+ 'for ${1:item} in ${2:expression}; do',
421
+ '\t${3:command ...}',
422
+ 'done',
423
+ ].join('\n'),
424
+ },
425
+ {
426
+ label: 'for-range',
427
+ documentation: 'for with range',
428
+ insertText: [
429
+ 'for ${1:item} in \\$(seq ${2:from} ${3:to}); do',
430
+ '\t${4:command ...}',
431
+ 'done',
432
+ ].join('\n'),
433
+ },
434
+ {
435
+ label: 'for-stepped-range',
436
+ documentation: 'for with stepped range',
437
+ insertText: [
438
+ 'for ${1:item} in \\$(seq ${2:from} ${3:step} ${4:to}); do',
439
+ '\t${5:command ...}',
440
+ 'done',
441
+ ].join('\n'),
442
+ },
443
+ {
444
+ label: 'for-files',
445
+ documentation: 'for with files',
446
+ insertText: [
447
+ 'for ${1:item} in *.${2:extension}; do',
448
+ '\t${4:command ...}',
449
+ 'done',
450
+ ].join('\n'),
451
+ },
452
+ {
453
+ label: 'case',
454
+ documentation: 'case operator',
455
+ insertText: [
456
+ 'case "${1:expression}" in',
457
+ '\t${2:pattern})',
458
+ '\t\t${3:command ...}',
459
+ '\t\t;;',
460
+ '\t*)',
461
+ '\t\t${4:command ...}',
462
+ '\t\t;;',
463
+ 'esac',
464
+ ].join('\n'),
465
+ },
466
+ {
467
+ label: 'function',
468
+ documentation: 'function definition',
469
+ insertText: ['${1:name}() {', '\t${2:command ...}', '}'].join('\n'),
470
+ },
471
+ {
472
+ documentation: 'documentation definition',
473
+ label: 'documentation',
474
+ insertText: [
475
+ '# ${1:function_name} ${2:function_parameters}',
476
+ '# ${3:function_description}',
477
+ '#',
478
+ '# Output:',
479
+ '# ${4:function_output}',
480
+ '#',
481
+ '# Return:',
482
+ '# - ${5:0} when ${6:all parameters are correct}',
483
+ '# - ${7:1} ${8:otherwise}',
484
+ ].join('\n'),
485
+ },
486
+ {
487
+ documentation: 'block',
488
+ label: 'block',
489
+ insertText: ['{', '\t${1:command ...}', '}'].join('\n'),
490
+ },
491
+ {
492
+ documentation: 'block redirected',
493
+ label: 'block-redirected',
494
+ insertText: ['{', '\t${1:command ...}', '} > ${2:file}'].join('\n'),
495
+ },
496
+ {
497
+ documentation: 'block stderr redirected',
498
+ label: 'block-stderr-redirected',
499
+ insertText: ['{', '\t${1:command ...}', '} 2> ${2:file}'].join('\n'),
500
+ },
501
+ {
502
+ documentation: 'variable',
503
+ label: 'variable',
504
+ insertText: 'declare ${1:variable}=${2:value}',
505
+ },
506
+ {
507
+ documentation: 'variable index',
508
+ label: 'variable-index',
509
+ insertText: '${1:variable}[${2:index}]=${3:value}',
510
+ },
511
+ {
512
+ documentation: 'variable append',
513
+ label: 'variable-append',
514
+ insertText: '${1:variable}+=${2:value}',
515
+ },
516
+ {
517
+ documentation: 'variable-prepend',
518
+ label: 'variable-prepend',
519
+ insertText: '${1:variable}=${2:value}\\$$1',
520
+ },
521
+ {
522
+ documentation: 'if unset or null',
523
+ label: 'if-unset-or-null',
524
+ insertText: '"\\${${1:variable}:-${2:default}}"',
525
+ },
526
+ {
527
+ documentation: 'if unset',
528
+ label: 'if-unset',
529
+ insertText: '"\\${${1:variable}-${2:default}}"',
530
+ },
531
+ {
532
+ documentation: 'set if unset or null',
533
+ label: 'set-if-unset-or-null',
534
+ insertText: '"\\${${1:variable}:=${2:default}}"',
535
+ },
536
+ {
537
+ documentation: 'set if unset',
538
+ label: 'set-if-unset',
539
+ insertText: '"\\${${1:variable}=${2:default}}"',
540
+ },
541
+ {
542
+ documentation: 'error if unset or null',
543
+ label: 'error-if-unset-or-null',
544
+ insertText: '"\\${${1:variable}:?${2:error_message}}"',
545
+ },
546
+ {
547
+ documentation: 'error if unset',
548
+ label: 'error-if-unset',
549
+ insertText: '"\\${${1:variable}?${2:error_message}}"',
550
+ },
551
+ {
552
+ documentation: 'if set or not null',
553
+ label: 'if-set-or-not-null',
554
+ insertText: '"\\${${1:variable}:+${2:alternative}}"',
555
+ },
556
+ {
557
+ documentation: 'if set',
558
+ label: 'if-set',
559
+ insertText: '"\\${${1:variable}+${2:alternative}}"',
560
+ },
561
+ {
562
+ documentation: 'string shortest leading replacement',
563
+ label: 'string-remove-leading',
564
+ insertText: '"\\${${1:variable}#${2:pattern}}"',
565
+ },
566
+ {
567
+ documentation: 'string shortest trailing replacement',
568
+ label: 'string-remove-trailing',
569
+ insertText: '"\\${${1:variable}%${2:pattern}}"',
570
+ },
571
+ {
572
+ documentation: 'string filtering',
573
+ label: 'string-match',
574
+ insertText: "sed ${1|-E -n,--regexp-extended --quiet|} '/${2:pattern}/p'",
575
+ },
576
+ {
577
+ documentation: 'string replacement',
578
+ label: 'string-replace',
579
+ insertText: "sed ${1|-E,--regexp-extended|} 's/${2:pattern}/${3:replacement}/'",
580
+ },
581
+ {
582
+ documentation: 'string replacement',
583
+ label: 'string-replace-all',
584
+ insertText: "sed ${1|-E,--regexp-extended|} 's/${2:pattern}/${3:replacement}/g'",
585
+ },
586
+ {
587
+ documentation: 'string transliterate',
588
+ label: 'string-transliterate',
589
+ insertText: "sed ${1|-E,--regexp-extended|} 'y/${2:source-characters}/${3:replacement-characters}/g'",
590
+ },
591
+ {
592
+ documentation: 'file print',
593
+ label: 'file-print',
594
+ insertText: "sed '' ${1:file}",
595
+ },
596
+ {
597
+ documentation: 'file read',
598
+ label: 'file-read',
599
+ insertText: "sed ${1|-E,--regexp-extended|} ':${2:x} N $! b$2 ${3:command}' ${4:file}",
600
+ },
601
+ {
602
+ documentation: 'skip first',
603
+ label: 'skip-first',
604
+ insertText: 'tail ${1|-n,-c,--lines,--bytes|} +${2:count}',
605
+ },
606
+ {
607
+ documentation: 'skip last',
608
+ label: 'skip-last',
609
+ insertText: 'head ${1|-n,-c,--lines,--bytes|} -${2:count}',
610
+ },
611
+ {
612
+ documentation: 'take first',
613
+ label: 'take-first',
614
+ insertText: 'head ${1|-n,-c,--lines,--bytes|} ${2:count}',
615
+ },
616
+ {
617
+ documentation: 'take last',
618
+ label: 'take-last',
619
+ insertText: 'tail ${1|-n,-c,--lines,--bytes|} ${2:count}',
620
+ },
621
+ {
622
+ documentation: 'take range',
623
+ label: 'take-range',
624
+ insertText: "sed ${1|-n,--quiet|} '${2:from},${3:to}p'",
625
+ },
626
+ {
627
+ documentation: 'take stepped range',
628
+ label: 'take-stepped-range',
629
+ insertText: "sed ${1|-n,--quiet|} '${2:from},${3:to}p' | sed $1 '1~${4:step}p'",
630
+ },
631
+ {
632
+ documentation: 'json print',
633
+ label: 'json-print',
634
+ insertText: "jq '.${1:node}' ${2:file}",
635
+ },
636
+ {
637
+ documentation: 'device',
638
+ label: 'device',
639
+ insertText: '/dev/${1|null,stdin,stdout,stderr|}',
640
+ },
641
+ {
642
+ documentation: 'completion',
643
+ label: 'completion definition',
644
+ insertText: [
645
+ '_$1_completions()',
646
+ '{',
647
+ '\treadarray -t COMPREPLY < <(compgen -W "-h --help -v --version" "\\${COMP_WORDS[1]}")',
648
+ '}',
649
+ '',
650
+ 'complete -F _$1_completions ${1:command}',
651
+ ].join('\n'),
652
+ },
653
+ {
654
+ documentation: 'comment',
655
+ label: 'comment definition',
656
+ insertText: '# ${1:description}',
657
+ },
658
+ ].map((item) => (Object.assign(Object.assign({}, item), { documentation: {
659
+ value: [
660
+ markdownBlock(`${item.documentation || item.label} (bash-language-server)\n\n`, 'man'),
661
+ markdownBlock(item.insertText, 'bash'),
662
+ ].join('\n'),
663
+ kind: vscode_languageserver_1.MarkupKind.Markdown,
664
+ }, insertTextFormat: vscode_languageserver_1.InsertTextFormat.Snippet, data: {
665
+ type: types_1.CompletionItemDataType.Snippet,
666
+ }, kind: vscode_languageserver_1.CompletionItemKind.Snippet })));
667
+ function markdownBlock(text, language) {
668
+ const tripleQoute = '```';
669
+ return [tripleQoute + language, text, tripleQoute].join('\n');
670
+ }
671
+ //# sourceMappingURL=snippets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snippets.js","sourceRoot":"","sources":["../src/snippets.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,iEAAwF;AAExF,mCAAoE;AAEvD,QAAA,QAAQ,GAAyB;IAC5C;QACE,aAAa,EAAE,SAAS;QACxB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,8BAA8B;KAC3C;IACD;QACE,aAAa,EAAE,wBAAwB;QACvC,KAAK,EAAE,wBAAwB;QAC/B,UAAU,EAAE,yEAAyE;KACtF;IACD;QACE,KAAK,EAAE,KAAK;QACZ,aAAa,EAAE,cAAc;QAC7B,UAAU,EAAE,iDAAiD;KAC9D;IACD;QACE,KAAK,EAAE,IAAI;QACX,aAAa,EAAE,aAAa;QAC5B,UAAU,EAAE,iDAAiD;KAC9D;IACD;QACE,KAAK,EAAE,IAAI;QACX,aAAa,EAAE,aAAa;QAC5B,UAAU,EAAE,CAAC,yBAAyB,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KAC/E;IACD;QACE,KAAK,EAAE,SAAS;QAChB,aAAa,EAAE,kBAAkB;QACjC,UAAU,EAAE;YACV,yBAAyB;YACzB,oBAAoB;YACpB,MAAM;YACN,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,SAAS;QAChB,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,mEAAmE;YACnE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,mEAAmE;YACnE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,kBAAkB;QACzB,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,qBAAqB;QAC5B,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,cAAc;QACrB,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,iBAAiB;QACxB,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,qBAAqB;QAC5B,aAAa,EAAE,2BAA2B;QAC1C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,iBAAiB;QACxB,aAAa,EAAE,+CAA+C;QAC9D,UAAU,EAAE,CAAC,qCAAqC,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC,IAAI,CAClF,IAAI,CACL;KACF;IACD;QACE,KAAK,EAAE,qBAAqB;QAC5B,aAAa,EAAE,yCAAyC;QACxD,UAAU,EAAE,CAAC,qCAAqC,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC,IAAI,CAClF,IAAI,CACL;KACF;IACD;QACE,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,kCAAkC;QACjD,UAAU,EAAE;YACV,0CAA0C;YAC1C,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,gBAAgB;QACvB,aAAa,EAAE,kCAAkC;QACjD,UAAU,EAAE;YACV,0CAA0C;YAC1C,oBAAoB;YACpB,IAAI;SACL,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,OAAO;QACd,aAAa,EAAE,gBAAgB;QAC/B,UAAU,EAAE,CAAC,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KAClF;IACD;QACE,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,qBAAqB;QACpC,UAAU,EAAE;YACV,0BAA0B;YAC1B,oBAAoB;YACpB,MAAM;YACN,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,eAAe;QACtB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,qBAAqB;QAC5B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,aAAa;QACpB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,iBAAiB;QACxB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,oBAAoB;QAC3B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,oBAAoB;QAC3B,aAAa,EAAE,kDAAkD;QACjE,UAAU,EAAE;YACV,sCAAsC;YACtC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,aAAa,EAAE,4CAA4C;QAC3D,UAAU,EAAE;YACV,sCAAsC;YACtC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,eAAe;QACtB,aAAa,EAAE,qCAAqC;QACpD,UAAU,EAAE;YACV,uCAAuC;YACvC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,mBAAmB;QAC1B,aAAa,EAAE,qCAAqC;QACpD,UAAU,EAAE;YACV,uCAAuC;YACvC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,OAAO;QACd,aAAa,EAAE,gBAAgB;QAC/B,UAAU,EAAE,CAAC,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KAClF;IACD;QACE,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,qBAAqB;QACpC,UAAU,EAAE;YACV,0BAA0B;YAC1B,oBAAoB;YACpB,MAAM;YACN,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,YAAY;QACnB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,eAAe;QACtB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,oEAAoE;YACpE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,qBAAqB;QAC5B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,aAAa;QACpB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,iBAAiB;QACxB,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,oBAAoB;QAC3B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,aAAa,EAAE,8BAA8B;QAC7C,UAAU,EAAE;YACV,qEAAqE;YACrE,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,oBAAoB;QAC3B,aAAa,EAAE,kDAAkD;QACjE,UAAU,EAAE;YACV,sCAAsC;YACtC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,wBAAwB;QAC/B,aAAa,EAAE,4CAA4C;QAC3D,UAAU,EAAE;YACV,sCAAsC;YACtC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,eAAe;QACtB,aAAa,EAAE,qCAAqC;QACpD,UAAU,EAAE;YACV,uCAAuC;YACvC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,mBAAmB;QAC1B,aAAa,EAAE,qCAAqC;QACpD,UAAU,EAAE;YACV,uCAAuC;YACvC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,KAAK;QACZ,aAAa,EAAE,cAAc;QAC7B,UAAU,EAAE;YACV,sCAAsC;YACtC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,WAAW;QAClB,aAAa,EAAE,gBAAgB;QAC/B,UAAU,EAAE;YACV,iDAAiD;YACjD,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,mBAAmB;QAC1B,aAAa,EAAE,wBAAwB;QACvC,UAAU,EAAE;YACV,2DAA2D;YAC3D,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,WAAW;QAClB,aAAa,EAAE,gBAAgB;QAC/B,UAAU,EAAE;YACV,uCAAuC;YACvC,oBAAoB;YACpB,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,MAAM;QACb,aAAa,EAAE,eAAe;QAC9B,UAAU,EAAE;YACV,2BAA2B;YAC3B,iBAAiB;YACjB,sBAAsB;YACtB,QAAQ;YACR,MAAM;YACN,sBAAsB;YACtB,QAAQ;YACR,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,qBAAqB;QACpC,UAAU,EAAE,CAAC,eAAe,EAAE,oBAAoB,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACpE;IACD;QACE,aAAa,EAAE,0BAA0B;QACzC,KAAK,EAAE,eAAe;QACtB,UAAU,EAAE;YACV,+CAA+C;YAC/C,6BAA6B;YAC7B,GAAG;YACH,WAAW;YACX,0BAA0B;YAC1B,GAAG;YACH,WAAW;YACX,iDAAiD;YACjD,2BAA2B;SAC5B,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,aAAa,EAAE,OAAO;QACtB,KAAK,EAAE,OAAO;QACd,UAAU,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACxD;IACD;QACE,aAAa,EAAE,kBAAkB;QACjC,KAAK,EAAE,kBAAkB;QACzB,UAAU,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACpE;IACD;QACE,aAAa,EAAE,yBAAyB;QACxC,KAAK,EAAE,yBAAyB;QAChC,UAAU,EAAE,CAAC,GAAG,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACrE;IACD;QACE,aAAa,EAAE,UAAU;QACzB,KAAK,EAAE,UAAU;QACjB,UAAU,EAAE,kCAAkC;KAC/C;IACD;QACE,aAAa,EAAE,gBAAgB;QAC/B,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,sCAAsC;KACnD;IACD;QACE,aAAa,EAAE,iBAAiB;QAChC,KAAK,EAAE,iBAAiB;QACxB,UAAU,EAAE,2BAA2B;KACxC;IACD;QACE,aAAa,EAAE,kBAAkB;QACjC,KAAK,EAAE,kBAAkB;QACzB,UAAU,EAAE,+BAA+B;KAC5C;IACD;QACE,aAAa,EAAE,kBAAkB;QACjC,KAAK,EAAE,kBAAkB;QACzB,UAAU,EAAE,oCAAoC;KACjD;IACD;QACE,aAAa,EAAE,UAAU;QACzB,KAAK,EAAE,UAAU;QACjB,UAAU,EAAE,mCAAmC;KAChD;IACD;QACE,aAAa,EAAE,sBAAsB;QACrC,KAAK,EAAE,sBAAsB;QAC7B,UAAU,EAAE,oCAAoC;KACjD;IACD;QACE,aAAa,EAAE,cAAc;QAC7B,KAAK,EAAE,cAAc;QACrB,UAAU,EAAE,mCAAmC;KAChD;IACD;QACE,aAAa,EAAE,wBAAwB;QACvC,KAAK,EAAE,wBAAwB;QAC/B,UAAU,EAAE,0CAA0C;KACvD;IACD;QACE,aAAa,EAAE,gBAAgB;QAC/B,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,yCAAyC;KACtD;IACD;QACE,aAAa,EAAE,oBAAoB;QACnC,KAAK,EAAE,oBAAoB;QAC3B,UAAU,EAAE,wCAAwC;KACrD;IACD;QACE,aAAa,EAAE,QAAQ;QACvB,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,uCAAuC;KACpD;IACD;QACE,aAAa,EAAE,qCAAqC;QACpD,KAAK,EAAE,uBAAuB;QAC9B,UAAU,EAAE,mCAAmC;KAChD;IACD;QACE,aAAa,EAAE,sCAAsC;QACrD,KAAK,EAAE,wBAAwB;QAC/B,UAAU,EAAE,mCAAmC;KAChD;IACD;QACE,aAAa,EAAE,kBAAkB;QACjC,KAAK,EAAE,cAAc;QACrB,UAAU,EAAE,6DAA6D;KAC1E;IACD;QACE,aAAa,EAAE,oBAAoB;QACnC,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,mEAAmE;KAChF;IACD;QACE,aAAa,EAAE,oBAAoB;QACnC,KAAK,EAAE,oBAAoB;QAC3B,UAAU,EAAE,oEAAoE;KACjF;IACD;QACE,aAAa,EAAE,sBAAsB;QACrC,KAAK,EAAE,sBAAsB;QAC7B,UAAU,EACR,yFAAyF;KAC5F;IACD;QACE,aAAa,EAAE,YAAY;QAC3B,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,kBAAkB;KAC/B;IACD;QACE,aAAa,EAAE,WAAW;QAC1B,KAAK,EAAE,WAAW;QAClB,UAAU,EACR,0EAA0E;KAC7E;IACD;QACE,aAAa,EAAE,YAAY;QAC3B,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,8CAA8C;KAC3D;IACD;QACE,aAAa,EAAE,WAAW;QAC1B,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,8CAA8C;KAC3D;IACD;QACE,aAAa,EAAE,YAAY;QAC3B,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,6CAA6C;KAC1D;IACD;QACE,aAAa,EAAE,WAAW;QAC1B,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,6CAA6C;KAC1D;IACD;QACE,aAAa,EAAE,YAAY;QAC3B,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,2CAA2C;KACxD;IACD;QACE,aAAa,EAAE,oBAAoB;QACnC,KAAK,EAAE,oBAAoB;QAC3B,UAAU,EAAE,mEAAmE;KAChF;IACD;QACE,aAAa,EAAE,YAAY;QAC3B,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,2BAA2B;KACxC;IACD;QACE,aAAa,EAAE,QAAQ;QACvB,KAAK,EAAE,QAAQ;QACf,UAAU,EAAE,qCAAqC;KAClD;IACD;QACE,aAAa,EAAE,YAAY;QAC3B,KAAK,EAAE,uBAAuB;QAC9B,UAAU,EAAE;YACV,mBAAmB;YACnB,GAAG;YACH,wFAAwF;YACxF,GAAG;YACH,EAAE;YACF,0CAA0C;SAC3C,CAAC,IAAI,CAAC,IAAI,CAAC;KACb;IACD;QACE,aAAa,EAAE,SAAS;QACxB,KAAK,EAAE,oBAAoB;QAC3B,UAAU,EAAE,oBAAoB;KACjC;CACF,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iCACX,IAAI,KACP,aAAa,EAAE;QACb,KAAK,EAAE;YACL,aAAa,CACX,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,6BAA6B,EAChE,KAAK,CACN;YACD,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;SACvC,CAAC,IAAI,CAAC,IAAI,CAAC;QACZ,IAAI,EAAE,kCAAU,CAAC,QAAQ;KAC1B,EAED,gBAAgB,EAAE,wCAAgB,CAAC,OAAO,EAC1C,IAAI,EAAE;QACJ,IAAI,EAAE,8BAAsB,CAAC,OAAO;KACrC,EACD,IAAI,EAAE,0CAAkB,CAAC,OAAO,IAChC,CAAC,CAAA;AAEH,SAAS,aAAa,CAAC,IAAY,EAAE,QAAgB;IACnD,MAAM,WAAW,GAAG,KAAK,CAAA;IACzB,OAAO,CAAC,WAAW,GAAG,QAAQ,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC/D,CAAC"}