|
@@ -187,7 +187,25 @@ const symbols = [
|
|
|
// C(MolScript.structureQuery.slot.elementSetReduce, (ctx, _) => ctx.element),
|
|
|
|
|
|
// ============= FILTERS ================
|
|
|
+ D(MolScript.structureQuery.filter.pick, (ctx, xs) => Queries.filters.pick(xs[0] as any, xs['test'])(ctx)),
|
|
|
D(MolScript.structureQuery.filter.first, (ctx, xs) => Queries.filters.first(xs[0] as any)(ctx)),
|
|
|
+ D(MolScript.structureQuery.filter.withSameAtomProperties, (ctx, xs) => Queries.filters.withSameAtomProperties(xs[0] as any, xs['source'] as any, xs['property'] as any)(ctx)),
|
|
|
+ D(MolScript.structureQuery.filter.intersectedBy, (ctx, xs) => Queries.filters.areIntersectedBy(xs[0] as any, xs['by'] as any)(ctx)),
|
|
|
+ D(MolScript.structureQuery.filter.within, (ctx, xs) => Queries.filters.within({
|
|
|
+ query: xs[0] as any,
|
|
|
+ target: xs['target'] as any,
|
|
|
+ minRadius: xs['min-radius'] as any,
|
|
|
+ maxRadius: xs['max-radius'] as any,
|
|
|
+ elementRadius: xs['atom-radius'] as any,
|
|
|
+ invert: xs['invert'] as any
|
|
|
+ })(ctx)),
|
|
|
+ D(MolScript.structureQuery.filter.isConnectedTo, (ctx, xs) => Queries.filters.isConnectedTo({
|
|
|
+ query: xs[0] as any,
|
|
|
+ target: xs['target'] as any,
|
|
|
+ disjunct: xs['disjunct'] as any,
|
|
|
+ invert: xs['invert'] as any,
|
|
|
+ bondTest: xs['bond-test']
|
|
|
+ })(ctx)),
|
|
|
|
|
|
// ============= GENERATORS ================
|
|
|
D(MolScript.structureQuery.generator.atomGroups, (ctx, xs) => Queries.generators.atoms({
|