@bpmn-io/moddle-utils
v0.2.1
Published
[![CI](https://github.com/bpmn-io/moddle-utils/workflows/CI/badge.svg)](https://github.com/bpmn-io/moddle-utils/actions?query=workflow%3ACI)
Downloads
30,811
Maintainers
Keywords
Readme
@bpmn-io/moddle-utils
Utils for moddle. 🛠️
API
getPath
import { getPath } from '@bpmn-io/moddle-utils';
// global
getPath(moddleElement); // [ 'rootElements', 0, 'flowElements', 0, 'extensionElements', 'values', 0 ]
// local
getPath(moddleElement, parentModdleElement); // [ 'extensionElements', 'values', 0 ]
// $parent === undefined
const task = moddle.create('bpmn:Task');
getPath(task); // null
// null
getPath(null); // null
pathConcat
import { pathConcat } from '@bpmn-io/moddle-utils';
pathConcat([ 'foo', 'bar' ], 'baz'); // [ 'foo', 'bar', 'baz' ]
// null
pathConcat([ 'foo', 'bar' ], null); // null
pathEquals
import { pathEquals } from '@bpmn-io/moddle-utils';
// default separator
pathEquals('extensionElements.values.0.type', 'extensionElements.values.0.type'); // true
pathEquals([ 'extensionElements', 'values', 0 ], [ 'extensionElements', 'values', 0 ]); // true
// custom separator
pathEquals('extensionElements-values-0-type', 'extensionElements-values-0-type', '-'); // true
// null
pathEquals(null, [ 'foo' ]); // false
parsePath
import { parsePath } from '@bpmn-io/moddle-utils';
// default separator
parsePath('rootElements.0.flowElements.0.extensionElements.values.0.type'); // [ 'rootElements', 0, 'flowElements', 0, 'extensionElements', 'values', 0 ]
// custom separator
parsePath('rootElements-0-flowElements-0-extensionElements-values-0-type', '-'); // [ 'rootElements', 0, 'flowElements', 0, 'extensionElements', 'values', 0 ]
// null
parsePath(null); // null
stringifyPath
import { stringifyPath } from '@bpmn-io/moddle-utils';
// default separator
stringifyPath([ 'rootElements', 0, 'flowElements', 0, 'extensionElements', 'values', 0 ]); // 'rootElements.0.flowElements.0.extensionElements.values.0.type'
// custom separator
stringifyPath([ 'rootElements', 0, 'flowElements', 0, 'extensionElements', 'values', 0 ], '-'); // 'rootElements-0-flowElements-0-extensionElements-values-0-type'
// null
stringifyPath(null); // null
Licence
MIT