BpmnPropertiesProvider.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. 'use strict';
  2. var inherits = require('inherits');
  3. var PropertiesActivator = require('../../PropertiesActivator');
  4. var processProps = require('./parts/ProcessProps'),
  5. eventProps = require('./parts/EventProps'),
  6. linkProps = require('./parts/LinkProps'),
  7. documentationProps = require('./parts/DocumentationProps'),
  8. idProps = require('./parts/IdProps'),
  9. nameProps = require('./parts/NameProps'),
  10. executableProps = require('./parts/ExecutableProps');
  11. function createGeneralTabGroups(
  12. element, canvas, bpmnFactory,
  13. elementRegistry, translate) {
  14. var generalGroup = {
  15. id: 'general',
  16. label: translate('General'),
  17. entries: []
  18. };
  19. idProps(generalGroup, element, translate);
  20. nameProps(generalGroup, element, bpmnFactory, canvas, translate);
  21. processProps(generalGroup, element, translate);
  22. executableProps(generalGroup, element, translate);
  23. var detailsGroup = {
  24. id: 'details',
  25. label: translate('Details'),
  26. entries: []
  27. };
  28. linkProps(detailsGroup, element, translate);
  29. eventProps(detailsGroup, element, bpmnFactory, elementRegistry, translate);
  30. var documentationGroup = {
  31. id: 'documentation',
  32. label: translate('Documentation'),
  33. entries: []
  34. };
  35. documentationProps(documentationGroup, element, bpmnFactory, translate);
  36. return [
  37. generalGroup,
  38. detailsGroup,
  39. documentationGroup
  40. ];
  41. }
  42. function BpmnPropertiesProvider(
  43. eventBus, canvas, bpmnFactory, elementRegistry, translate) {
  44. PropertiesActivator.call(this, eventBus);
  45. this.getTabs = function(element) {
  46. var generalTab = {
  47. id: 'general',
  48. label: translate('General'),
  49. groups: createGeneralTabGroups(
  50. element, canvas, bpmnFactory, elementRegistry, translate)
  51. };
  52. return [
  53. generalTab
  54. ];
  55. };
  56. }
  57. BpmnPropertiesProvider.$inject = [
  58. 'eventBus',
  59. 'canvas',
  60. 'bpmnFactory',
  61. 'elementRegistry',
  62. 'translate'
  63. ];
  64. inherits(BpmnPropertiesProvider, PropertiesActivator);
  65. module.exports = BpmnPropertiesProvider;