{"version":3,"file":"index.cjs","sources":["../lib/bpmn-moddle.js","../lib/simple.js"],"sourcesContent":["import {\n  isString,\n  assign\n} from 'min-dash';\n\nimport {\n  Moddle\n} from 'moddle';\n\nimport {\n  Reader,\n  Writer\n} from 'moddle-xml';\n\n\n/**\n * A sub class of {@link Moddle} with support for import and export of BPMN 2.0 xml files.\n *\n * @class BpmnModdle\n * @extends Moddle\n *\n * @param {Object|Array} packages to use for instantiating the model\n * @param {Object} [options] additional options to pass over\n */\nexport default function BpmnModdle(packages, options) {\n  Moddle.call(this, packages, options);\n}\n\nBpmnModdle.prototype = Object.create(Moddle.prototype);\n\n/**\n * The fromXML result.\n *\n * @typedef {Object} ParseResult\n *\n * @property {ModdleElement} rootElement\n * @property {Array<Object>} references\n * @property {Array<Error>} warnings\n * @property {Object} elementsById - a mapping containing each ID -> ModdleElement\n */\n\n/**\n * The fromXML error.\n *\n * @typedef {Error} ParseError\n *\n * @property {Array<Error>} warnings\n */\n\n/**\n * Instantiates a BPMN model tree from a given xml string.\n *\n * @param {String}   xmlStr\n * @param {String}   [typeName='bpmn:Definitions'] name of the root element\n * @param {Object}   [options]  options to pass to the underlying reader\n *\n * @returns {Promise<ParseResult, ParseError>}\n */\nBpmnModdle.prototype.fromXML = function(xmlStr, typeName, options) {\n\n  if (!isString(typeName)) {\n    options = typeName;\n    typeName = 'bpmn:Definitions';\n  }\n\n  var reader = new Reader(assign({ model: this, lax: true }, options));\n  var rootHandler = reader.handler(typeName);\n\n  return reader.fromXML(xmlStr, rootHandler);\n};\n\n\n/**\n * The toXML result.\n *\n * @typedef {Object} SerializationResult\n *\n * @property {String} xml\n */\n\n/**\n * Serializes a BPMN 2.0 object tree to XML.\n *\n * @param {String}   element    the root element, typically an instance of `bpmn:Definitions`\n * @param {Object}   [options]  to pass to the underlying writer\n *\n * @returns {Promise<SerializationResult, Error>}\n */\nBpmnModdle.prototype.toXML = function(element, options) {\n\n  var writer = new Writer(options);\n\n  return new Promise(function(resolve, reject) {\n    try {\n      var result = writer.toXML(element);\n\n      return resolve({\n        xml: result\n      });\n    } catch (err) {\n      return reject(err);\n    }\n  });\n};\n","import {\n  assign\n} from 'min-dash';\n\nimport BpmnModdle from './bpmn-moddle.js';\n\nimport BpmnPackage from '../resources/bpmn/json/bpmn.json' with { type: 'json' };\nimport BpmnDiPackage from '../resources/bpmn/json/bpmndi.json' with { type: 'json' };\nimport DcPackage from '../resources/bpmn/json/dc.json' with { type: 'json' };\nimport DiPackage from '../resources/bpmn/json/di.json' with { type: 'json' };\nimport BiocPackage from '../resources/bpmn-io/json/bioc.json' with { type: 'json' };\nimport BpmnInColorPackage from 'bpmn-in-color-moddle/resources/bpmn-in-color.json' with { type: 'json' };\n\nconst packages = {\n  bpmn: BpmnPackage,\n  bpmndi: BpmnDiPackage,\n  dc: DcPackage,\n  di: DiPackage,\n  bioc: BiocPackage,\n  color: BpmnInColorPackage\n};\n\nexport default function SimpleBpmnModdle(additionalPackages, options) {\n  const pks = assign({}, packages, additionalPackages);\n\n  return new BpmnModdle(pks, options);\n}\n"],"names":["Moddle","isString","Reader","assign","Writer"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1FD,MAAM,QAAQ,GAAG;AACjB,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,MAAM,EAAE,aAAa;AACvB,EAAE,EAAE,EAAE,SAAS;AACf,EAAE,EAAE,EAAE,SAAS;AACf,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,KAAK,EAAE,kBAAkB;AAC3B,CAAC,CAAC;AACF;AACe,SAAS,gBAAgB,CAAC,kBAAkB,EAAE,OAAO,EAAE;AACtE,EAAE,MAAM,GAAG,GAAGD,cAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AACvD;AACA,EAAE,OAAO,IAAI,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACtC;;;;"}