feat(contextpad): add replace-menu to context pad

Support for Gateways and Task Types was added.

See #130
This commit is contained in:
jdotzki 2015-02-05 16:00:05 +01:00
parent 3873709141
commit 18c2b0552e
11 changed files with 323 additions and 51 deletions

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1,21 +1,45 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>camunda Services GmbH</metadata>
<metadata>Copyright (C) 2015 by original authors @ fontello.com</metadata>
<defs>
<font id="bpmn" horiz-adv-x="1024" >
<font-face font-family="bpmn" font-weight="400" font-stretch="normal" units-per-em="1024" ascent="870" descent="-154" />
<missing-glyph horiz-adv-x="1024" />
<glyph glyph-name="end-event" unicode="&#xe800;" d="m511 824c-256 0-465-209-465-465 0-257 209-466 465-466 257 0 466 209 466 466 0 256-209 465-466 465z m0-116c195 0 351-155 351-349 0-195-156-351-351-351-194 0-349 156-349 351 0 194 155 349 349 349z" horiz-adv-x="1024" />
<glyph glyph-name="text-annotation" unicode="&#xe801;" d="m693 813l0-25 0-421 0-421 0-25 25 0 230 0 25 0 0 50-25 0-205 0 0 396 0 396 205 0 25 0 0 50-25 0-230 0-25 0z m-82-394l-78-62 62-77 77 61-61 78z m-155-123l-77-61 61-77 77 61-61 77z m-154-122l-78-61 62-77 77 61-61 77z m-155-122l-77-62 61-77 77 61-61 78z" horiz-adv-x="1024" />
<glyph glyph-name="intermediate-event" unicode="&#xe802;" d="m511 812c-176 2-347-109-415-272-74-163-38-367 87-495 118-127 311-175 474-118 173 57 302 226 309 408 11 175-91 350-248 427-63 33-135 50-207 50z m0-50c176 3 344-123 390-293 48-160-17-346-155-441-143-106-356-98-492 18-138 111-186 318-111 479 63 143 213 239 368 237z m0-57c-156 3-304-115-337-268-37-151 41-319 180-388 137-74 321-37 420 82 104 116 114 303 21 428-64 91-173 147-284 146z m0-50c140 3 271-106 294-244 27-135-55-281-184-330-126-52-282-3-355 111-82 117-62 292 46 386 54 49 126 77 199 77z" horiz-adv-x="1024" />
<glyph glyph-name="trash" unicode="&#xe803;" d="m397 774c0-21 0-42 0-63-29 2-55-12-82-18-48-14-143-42-143-42 0 0-8-44 8-41 224 0 448 0 672 0-3 11 8 42-8 43-68 19-136 40-204 58-19-6-11 16-13 28-2 11 6 32-4 35-75 0-151 0-226 0z m-203-227c22-205 44-410 67-615 169 0 339 0 509 0 21 204 42 408 62 613-212 1-425 2-638 2z m73-65c164 0 328 0 492 0-16-161-32-323-48-485-132 0-263 0-395 0-16 162-33 324-49 485z m390-52c-28 1-34-28-35-49-14-104-30-207-43-311 1-43 68-36 64 5 14 109 31 217 44 326-1 16-15 29-30 29z m-291 0c-30-2-31-35-26-57 15-104 29-209 44-313 11-46 78-16 58 24-15 108-29 216-45 324-4 13-17 22-31 22z" horiz-adv-x="1024" />
<glyph glyph-name="connection" unicode="&#xe804;" d="m933 767c0 0-292-150-441-220 32-29 61-60 92-90-151-153-302-307-454-460 12-10 23-21 34-32 151 154 302 307 453 460 31-31 62-62 92-92 80 156 224 434 224 434z" horiz-adv-x="1024" />
<glyph glyph-name="start-event" unicode="&#xe805;" d="m511 821c-181 3-357-115-426-283-72-165-34-370 92-499 121-130 321-178 488-117 173 59 301 229 308 413 12 180-94 359-256 438-64 32-135 48-206 48z m0-50c180 3 351-126 397-299 49-164-17-353-158-450-146-108-363-100-501 18-140 111-189 316-118 479 62 151 217 254 380 252z" horiz-adv-x="1024" />
<glyph glyph-name="gateway" unicode="&#xe806;" d="m60 384c-25-25 1-55 21-72 135-135 270-270 405-405 25-26 55 0 72 20 135 135 270 270 405 405 26 25 2 55-19 73-135 135-270 270-405 405-26 25-57 1-74-20-135-135-270-271-405-406z m52-26c133 133 267 266 400 399 133-133 266-266 400-399-134-134-267-267-400-400-133 133-267 266-400 400z" horiz-adv-x="1024" />
<glyph glyph-name="task" unicode="&#xe807;" d="m212 733c-90 0-163-73-163-163l0-425c0-89 73-163 163-163l600 0c90 0 162 74 162 163l0 425c0 90-72 163-162 163l-600 0z m0-51l600 0c63 0 112-49 112-112l0-425c0-62-49-112-112-112l-600 0c-62 0-112 50-112 112l0 425c0 63 50 112 112 112z" horiz-adv-x="1024" />
<glyph glyph-name="subprocess-collapsed" unicode="&#xe808;" d="m213 734c-92 2-172-84-164-176 1-143-1-286 1-429 7-86 91-155 177-147 198 0 396 0 594 0 89 3 161 88 154 176-1 143 1 286-1 429-7 86-90 155-175 147-196 0-391 0-586 0z m0-52c204 0 408 1 611 0 61-4 107-64 101-124-1-141 0-283-1-424-4-61-64-107-123-100-39 0-77 0-116 0 0 106 0 211 0 317-115 0-231 0-346 0 0-106 0-211 0-317-50 1-100-3-149 2-57 10-96 68-89 124 0 141-1 281 0 422 5 56 55 102 112 100z m157-363c95 0 189 0 284 0 0-94 0-188 0-283-95 0-189 0-284 0 0 95 0 189 0 283z m118-40c0-26 0-52 0-79-26 0-52 0-79 0 0-15 0-31 0-47 27 0 53 0 79 0 0-26 0-53 0-79 16 0 32 0 48 0 0 26 0 53 0 79 26 0 52 0 79 0 0 16 0 32 0 47-27 0-53 0-79 0 0 27 0 53 0 79-16 0-32 0-48 0z" horiz-adv-x="1024" />
<glyph glyph-name="subprocess-expanded" unicode="&#xe809;" d="m409 198c0-16 0-32 0-48 69 0 137 0 206 0 0 16 0 32 0 48-69 0-137 0-206 0z m-70 151c0-116 0-231 0-347 115 0 231 0 346 0 0 116 0 231 0 347-115 0-231 0-346 0z m31-32c95 0 189 0 284 0 0-94 0-189 0-283-95 0-189 0-284 0 0 94 0 189 0 283z m-157 417c-92 2-172-84-164-176 1-143-1-286 1-429 7-86 91-155 177-147 198 0 396 0 594 0 89 3 161 88 154 176-1 143 1 286-1 429-7 86-90 155-175 147-196 0-391 0-586 0z m0-52c204 0 408 1 611 0 61-4 107-64 101-124-1-141 0-283-1-424-4-61-64-107-123-100-200 0-400-1-600 0-60 4-107 64-100 124 0 141-1 283 0 424 5 56 55 102 112 100z" horiz-adv-x="1024" />
<font id="bpmn" horiz-adv-x="1000" >
<font-face font-family="bpmn" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
<missing-glyph horiz-adv-x="1000" />
<glyph glyph-name="end-event" unicode="&#xe800;" d="m499 805c-250 0-454-204-454-454 0-251 204-455 454-455 251 0 455 204 455 455 0 250-204 454-455 454z m0-113c190 0 343-152 343-341 0-190-153-343-343-343-189 0-341 153-341 343 0 189 152 341 341 341z" horiz-adv-x="1000" />
<glyph glyph-name="text-annotation" unicode="&#xe801;" d="m677 795l0-25 0-411 0-412 0-24 24 0 224 0 25 0 0 49-25 0-199 0 0 387 0 386 199 0 25 0 0 50-25 0-224 0-24 0z m-81-386l-75-60 60-75 75 60-60 75z m-151-119l-75-60 60-75 75 59-60 76z m-150-120l-76-59 60-76 75 60-59 75z m-151-119l-76-60 60-75 76 59-60 76z" horiz-adv-x="1000" />
<glyph glyph-name="intermediate-event" unicode="&#xe802;" d="m499 793c-172 3-338-106-406-265-71-159-36-359 86-484 115-124 303-171 463-115 169 56 295 221 301 399 11 171-88 341-241 417-63 32-133 49-203 48z m0-48c172 3 336-120 381-286 47-157-17-338-151-431-141-103-348-96-481 17-135 109-181 311-108 468 61 140 207 233 359 232z m0-56c-153 3-297-112-329-262-36-147 40-312 175-379 135-72 314-36 411 81 102 113 111 295 20 417-62 89-168 143-277 143z m0-49c137 3 265-103 287-238 26-132-54-275-180-322-122-51-275-4-347 108-79 114-60 285 46 377 52 48 123 75 194 75z" horiz-adv-x="1000" />
<glyph glyph-name="screw-wrench" unicode="&#xe803;" d="m756 704c-55 0-108-22-147-61-39-39-61-92-61-147 0-55 22-108 61-147 39-39 92-61 147-61 91 0 171 59 198 146l-149-40-116 77 62 124 79 21 78 21c-39 42-94 67-152 67z m-247-278l-461-316c-14-42 32-111 80-114l451 310c-36 31-61 73-70 120z" horiz-adv-x="1000" />
<glyph glyph-name="connection" unicode="&#xe804;" d="m911 749c0 0-285-146-431-214 31-28 60-59 90-89-147-149-295-299-443-448 11-11 22-21 33-31 148 149 295 299 443 448 30-29 60-60 90-90 77 153 218 424 218 424z" horiz-adv-x="1000" />
<glyph glyph-name="start-event" unicode="&#xe805;" d="m499 802c-177 3-348-112-416-276-70-161-34-361 90-487 118-128 313-174 476-115 170 58 295 224 302 403 11 176-92 352-251 428-62 31-131 47-201 47z m0-48c176 3 343-123 388-293 48-160-16-345-154-439-143-105-355-98-490 17-136 109-185 309-115 469 61 147 212 247 371 246z" horiz-adv-x="1000" />
<glyph glyph-name="gateway" unicode="&#xe806;" d="m58 376c-24-25 1-54 21-71 132-132 264-264 396-396 24-25 53 0 70 20 132 132 264 264 395 396 26 24 2 54-18 71-132 132-264 263-396 395-25 25-55 1-72-20-132-131-264-263-396-395z m52-26c130 130 260 260 390 390 130-130 260-260 390-390-130-130-260-261-390-391-130 130-260 261-390 391z" horiz-adv-x="1000" />
<glyph glyph-name="task" unicode="&#xe807;" d="m785 729c-4 0-8 0-12-1l-557 0 0 0c-94 3-176-85-168-178 0-140-1-280 0-421 3-92 91-166 182-158 188 0 375 0 563 0 91 2 166 89 158 179 0 140 1 280 0 420-2 86-81 159-166 159z m-208-74c73 0 145 0 217-1 53-3 90-56 83-107 0-139 1-279 0-419-3-53-56-89-107-83-188 0-376-1-564 0-53 4-91 56-84 107 0 140-1 280 0 419 4 48 47 85 94 84 120-1 241 0 361 0z" horiz-adv-x="1000" />
<glyph glyph-name="subprocess-expanded" unicode="&#xe808;" d="m785 728c-4 0-8 0-12 0l-556 0c-94 2-176-85-168-178 0-140 0-280 0-420 3-92 92-166 182-158 187 0 375 0 562 0 91 2 166 89 158 178 0 140 0 280 0 420-2 86-81 158-166 158l0 0z m-207-73c72 0 144 0 216-1 53-3 90-56 83-106 0-140 1-279 0-419-3-53-56-89-107-83-33 0-67 0-101 0l0 295 0 15-15 0-308 0-15 0 0-15 0-295c-41 0-83 0-124 1-53 3-91 55-84 106 0 139-1 279 0 418 4 47 47 85 94 83 120 0 241 0 361 0l0 1z m-216-330l276 0 0-276-276 0 0 276z m37-112l0-47 203 0 0 47-203 0z" horiz-adv-x="1000" />
<glyph glyph-name="subprocess-collapsed" unicode="&#xe809;" d="m785 728c-4 0-9 0-13 0l-556 0c-93 2-176-85-168-178 0-140 0-280 1-420 2-92 91-166 181-158 188 0 375 0 562 0 91 2 166 89 159 178-1 140 0 280-1 420-2 86-80 158-165 158l0 0z m-208-73c72 0 144 0 217-1 53-3 89-56 83-106-1-140 0-279-1-419-3-53-56-89-106-83-34 0-67 0-101 0l0 294 0 15-15 0-308 0-15 0 0-15 0-294c-42 0-83 0-124 1-53 3-91 55-85 106 0 139-1 279 0 418 4 47 48 85 94 83 121 0 241 0 361 0l0 1z m-215-331l276 0 0-276-276 0 0 276z m115-39l0-23 0-54-54 0-23 0 0-47 23 0 54 0 0-53 0-24 46 0 0 24 0 53 54 0 23 0 0 47-23 0-54 0 0 54 0 23-46 0z" horiz-adv-x="1000" />
<glyph glyph-name="send-task" unicode="&#xe80a;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177l-545 0z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m-38-71l235-130 235 130-470 0z m0-45l0-292 470 0 0 292-235-117-235 117z" horiz-adv-x="1000" />
<glyph glyph-name="receive-task" unicode="&#xe80b;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m-35-71c0 0 0 0-1 0-1 0-2-1-2-2l0-332c0-2 1-3 3-3l465 0c1 0 2 1 2 3l0 332c0 1-1 2-2 2 0 0 0 0 0 0l-231 0-73 0z m9-5l225 0 221 0-223-127z m-7-2l229-130c1-1 2-1 2 0l229 130 0-325-460 0z" horiz-adv-x="1000" />
<glyph glyph-name="user-task" unicode="&#xe80c;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177l-545 0z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m84-47l-3 0c-53 0-87-38-87-86 0-25 18-47 35-63-9-3-33-12-57-25-14-8-28-17-38-28-11-10-18-22-19-36l0 0 0-127 61 0c1 0 1 0 2 0l285 0 0 127c0 12-8 23-19 33-11 11-25 20-40 28-26 15-51 25-61 29 17 16 30 37 30 62 0 48-36 86-89 86z m-24-51c8 0 17-1 25-6 36-19 75-27 82-21 1-3 1-5 1-8 0-24-14-46-31-61l-4-3 4-2c4-1 22-7 42-17-1-43-42-79-94-79-52 0-94 34-95 78 22 10 41 17 45 18l4 1-3 3c-18 16-37 38-37 62 0 3 0 6 0 8 6 6 32 27 61 27z m124-121c6-2 12-6 18-9 14-8 28-17 39-27 10-10 17-20 17-30l0-122-57 0 0 90-5 0 0-90-216 0 0 90c0 3-6 3-5 0l0-90-55 0 0 122c1 12 7 23 17 33 10 10 24 19 37 26 4 2 7 4 11 6 2-45 46-80 100-80 53 0 97 36 99 81z" horiz-adv-x="1000" />
<glyph glyph-name="manual-task" unicode="&#xe80d;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177l-545 0z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m99-66c-1 0-1 0-2 0l0 0c-3 0-7-1-10-3l0 0 0 0c-23-14-103-67-121-79l0 0c-14-9-24-23-30-41l0 0 0 0c-6-18-5-39-5-56l0 0 0 0c0-14 0-25 4-38 0 0 0 0 0 0 0 0 0 0 0 0 5-20 14-35 27-45 13-10 29-15 49-15 72 0 144 0 216 0l0 0 0 0c6 0 11 2 15 5 4 4 5 9 5 17l0 0c1 7-1 12-5 16-4 3-9 4-15 4l0 0c-27 0-88 0-92 0l0 7 123 0c6 0 11 1 16 3 4 3 7 7 8 13l0 0c2 9 1 16-4 20-4 5-11 7-19 7l0 0c-38 0-121 0-124 0l0 6c4 0 132 0 147 0 8 0 15 3 18 7 4 4 6 11 6 18 0 8-2 13-6 17-5 4-11 6-18 6-45 0-144 0-147 0l0 6c3 0 77 0 110 0l0 0 0 0c7 0 13 2 18 6 4 5 6 11 6 18l0 0 0 0c-1 8-3 14-7 18-4 5-10 7-17 7l0 0c-27 0-70 0-105 0-18 0-35-1-47 0-6 0-11 0-15 0-1 0-2 0-3 0 3 3 9 9 17 16 8 8 15 15 19 19 8 10 9 24 2 33-3 5-8 8-12 8-1 0-2 0-2 0z m0-5c0 0 1 0 1 0 3 0 6-2 9-6l0 0 0 0c5-7 4-18-2-27l0 0 0 0c-3-3-11-11-19-18-8-8-16-15-19-18-1-2-1-4 0-5 0-1 1-2 3-2 0 0 0 0 1 0 0 0 1 0 1 0 1 0 3 0 4 0 4 0 9 0 15 0 12-1 29 0 47 0 36 0 78 0 105 0l0 0 0 0c6 0 11-2 14-5 3-3 4-8 5-15 0-6-2-11-5-14-3-3-8-5-14-5-34 0-113 0-113 0l-2 0 0-16 2 0c0 0 104 0 150 0 7 0 11-2 14-5 3-2 5-6 5-13 0-7-2-12-4-15-3-3-7-5-15-5-15 0-150 0-150 0l-2 0 0-16 2 0c0 0 88 0 127 0l0 0 0 0c7 0 12-2 16-5 3-3 4-8 2-16l0 0 0 0c-1-5-3-7-6-9-3-2-7-3-13-3l-128 0 0-2 0-15 2 0c0 0 67 0 95 0l0 0c5 0 9-1 12-3 2-2 4-6 3-12l0 0 0 0c0-7-1-11-4-13-2-3-6-4-11-4-72 0-144 0-216 0l0 0 0 0c-19 0-34 5-46 14-12 10-21 23-25 42l0 0 0 0c-4 13-4 23-4 37l0 0c0 17-1 37 5 54l0 0c5 17 15 30 28 39 18 12 98 65 121 79l0 0c2 1 5 2 8 2l0 0c0 0 0 0 1 0z" horiz-adv-x="1000" />
<glyph glyph-name="business-rule-task" unicode="&#xe80e;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177l-545 0z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m-39-77l0-158 0-15 0-5 0-137 145 0 5 0 275 0 0 157 0 158-425 0z m5-105l140 0 0-68-140 0 0 15 0 53z m145 0l270 0 0-53 0-15-270 0 0 68z m-145-73l140 0 0-132-140 0 0 132z m145 0l270 0 0-132-270 0 0 132z" horiz-adv-x="1000" />
<glyph glyph-name="service-task" unicode="&#xe80f;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177l-545 0z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m33-51l0-2 0-30c-6-2-13-4-19-6l0 0 0 0c-6-3-12-6-18-10l-23 23-35-34 24-24c-8-11-13-23-16-37l-33 0 0-48 34 0c1-7 3-13 6-19l0 0c2-7 6-13 9-18l-24-24 35-34 22 22 0-8 22 0c4-2 8-3 13-5 1-4 3-9 4-13l0-22 3 0c1 0 3 0 5 0l-22-21 35-34 24 23c12-7 24-12 37-15l1-34 2 0c15 0 44 0 44 0l-2 3 5 0 0 2 0 30c6 1 13 3 19 6l0 0 0 0c6 2 12 6 18 9l24-24 34 35-24 24c7 11 13 24 15 37l33 0 0 49-33 0c-1 6-3 12-6 19l0 0c-3 6-6 12-9 17l22 23-35 35-21-22 0 9-3 0-18 0c-4 1-9 3-13 4-1 4-3 9-4 13l0 20-10 0 22 22-35 35-23-23c-11 7-24 12-37 15l0 32-49 0z m5-5l39 0 0-31 2 0c14-3 28-9 39-16l2-1 22 22 28-28-22-22-33 0 0-18c-19 25-54 35-85 22-36-15-54-58-38-94 5-12 13-22 23-30l-20 0 0-33-22-22-28 27 24 23-1 2c-4 6-8 12-11 18l0 0 0 0c-2 7-4 14-6 21l0 2-33 0 0 38 32 0 1 3c3 13 8 27 16 38l1 2-23 23 28 27 22-22 2 1c6 4 12 7 19 10l0 0c7 3 13 5 20 6l2 1 0 31z m19-72c24 1 46-11 58-31l0-5c-6-2-13-4-19-6l0 0 0 0c-6-3-12-6-18-10l-23 23-35-34 24-24c-7-11-13-23-15-37l-5 0c-12 8-22 18-28 32-14 34 2 73 36 87l0 0c8 4 17 5 25 5z m63-9l40 0 0-15 0 0-1-16 2 0c1-1 2-1 3-1 0 0 0 0 0 0 1 0 1 0 2-1l1 0c5-1 9-2 14-4 2-1 4-2 7-3 0 0 0 0 0 0 1-1 3-2 4-2 0 0 0 0 0 0 1-1 2-1 3-2 0 0 0 0 0 0 1-1 3-1 4-2 1-1 1-1 2-1l1-2 0 1 1-1 0 1 21 22 28-28-22-22 1-2c4-5 8-12 10-18l0 0 0 0c3-7 5-14 7-20l0-2 32 0 0-39-32 0 0-2c-3-14-8-27-16-39l-1-2 23-23-27-28-24 23-1-1c-6-4-12-7-19-10-7-2-14-5-20-6l-2 0 0-34c-3 0-25 0-39 0l-1 33-2 1c-13 3-27 8-39 16l-1 1-24-23-28 27 22 21 3 0-1 2 0 0-1 1 0 1c-1 0-1 0-1 0-1 2-1 3-2 4 0 1 0 1-1 1 0 1 0 1-1 2 0 0 0 0 0 0-1 2-1 3-2 4 0 1 0 1-1 2 0 0 0 0 0 1-1 1-2 3-2 4l0 0c0 0 0 0 0 0-1 1-1 1-1 1-2 5-3 10-4 14l-1 1c0 1 0 2 0 2 0 1-1 2-1 3l0 2-2 0-14 0 0 0-17 0 0 2 0 36 33 0 0 3c3 13 8 27 16 38l1 2-23 23 28 27 23-22 1 1c6 4 12 7 19 10l0 0c7 3 13 5 20 6l2 1 0 31z m78-37l0-3c-2 1-3 2-5 3l5 0z m-57-30c-1 0-2 0-2 0l0 0c0 0 0 0 0 0 0 0-1 0-1 0l0 0c-1 0-2 0-3 0l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 0 0 0 0 0l0 0c-8 0-15-2-23-5-24-10-40-33-43-58l0 0c0 0 0 0 0 0l0 0c0-1 0-2 0-2l0 0c0 0 0 0 0-1l0 0c-1-1-1-3-1-5l0 0c0 0 0 0 0 0l0 0c0-1 0-3 0-5l0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0c1-2 1-3 1-5l0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0c0-1 0-2 0-3l0 0c0 0 0 0 0 0l0 0c0-1 1-1 1-2l0 0c0 0 0 0 0-1 0 0 0 0 0 0l0 0c0 0 0-1 0-2l0 0c0 0 0 0 0 0l0 0c1-1 1-2 1-2l0 0 0 0c0 0 0-1 0-1 1-2 2-5 3-7l0 0c0-1 1-2 1-2 0 0 0 0 0 0 0-1 0-1 0-1 1-1 2-3 2-4 0 0 0 0 0 0 0 0 1-1 1-1 17-31 56-45 90-31 37 16 54 58 39 95l0 0c-7 15-18 27-32 35l0 0c0 0 0 0 0 0l0 0c-1 0-1 0-2 1l0 0c0 0 0 0 0 0l0 0c-1 0-2 0-2 1l0 0c0 0 0 0 0 0l0 0c-1 0-2 0-2 1l0 0c0 0-1 0-1 0l0 0c0 0-1 0-2 1l1 0c-1 0-1 0-1 0l0 0c0 0-1 0-2 0l0 0c0 0 0 1 0 1l0 0c-1 0-1 0-2 0l0 0c0 0 0 0 0 0l0 0c-2 1-3 1-5 1l0 0c0 0 0 1 0 1l0 0c-1 0-1 0-2 0l0 0c0 0 0 0 0 0l0 0c-1 0-2 0-2 0l0 0c-1 0-1 0-1 0l0 0c0 1-1 1-2 1l0 0c0 0 0 0 0 0l0 0c-1 0-1 0-2 0l0 0c0 0 0 0 0 0l0 0c-1 0-2 0-2 0l0 0c-1 0-1 0-1 0l0 0c-1 0-1 0-2 0l0 0c0 0 0 0 0 0l0 0c-1 0-2 0-2 0z m0-5c0 0 1 0 2 0l0 0c0 0 0 0 0 0l0 0c1 0 1 0 2 0l0 0c0 0 0 0 0 0l0 0c1 0 2 0 2 0 0 0 0 0 1 0l0 0c0 0 1 0 1 0l0 0c0 0 1 0 1 0l0 0c0 0 1 0 1 0l0 0c1 0 1 0 1 0 0-1 1-1 2-1l0 0c0 0 0 0 0 0l0 0c1 0 1 0 2 0l0 0c0 0 0 0 0 0l0 0c2-1 3-1 4-1l0 0c0-1 0-1 1-1l0 0c0 0 1 0 1 0l0 0c0 0 0 0 1 0l0 0c0-1 1-1 1-1l0 0c1 0 1 0 1 0l0 0c0 0 1 0 1-1l0 0c1 0 1 0 1 0l0 0c0 0 1 0 1-1l0 0c1 0 1 0 1 0l0 0c0 0 1 0 2-1l0 0c0 0 0 0 0 0l0 0c0 0 1 0 1-1l0 0c1 0 1 0 1 0l0 0c13-7 23-18 29-32 15-34-1-74-35-88l0 0c-32-13-69 0-85 29 0 0 0 0 0 0 0 0 0 0 0 0l0 0c-1 1-2 3-2 4l0 0c0 0 0 0 0 0 0 0 0 0-1 1l0 0c0 0 0 1 0 2l0 0c-1 0-1 1-1 2 0 0 0 0-1 0 0 2-1 3-1 5l0 0c0 0 0 0 0 0l0 0c0 1 0 1-1 2l0 0c0 0 0 0 0 0l0 0c0 1 0 2 0 3l0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 1-1 1-1 2l0 0c0 0 0 0 0 0l0 0c0 1 0 2 0 2l0 0c0 0 0 0 0 0 0 1 0 1 0 1l0 0c0 1-1 3-1 4l0 0c0 0 0 0 0 1 0 0 0 0 0 0l0 0c0 1 0 3 0 4l0 0c0 0 0 0 0 0l0 0c0 2 0 3 0 5l0 0c0 0 0 0 0 0l0 0c1 1 1 2 1 2l0 0c0 0 0 0 0 0l0 0c2 24 17 45 40 54l0 0c7 3 14 5 21 5l0 0c0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 0 1 0 2 0l0 0c1 0 1 0 1 0l0 0c0 0 1 0 2 0z m-102-120c0 0 1 0 1 0 0-1 0-1 0-2 1 0 1 0 1 0 0-1 1-2 2-4-1 0-3 0-4 0l0 6z" horiz-adv-x="1000" />
<glyph glyph-name="script-task" unicode="&#xe810;" d="m228 720c-98 0-178-79-178-177l0-385c0-98 80-178 178-178l545 0c98 0 177 80 177 178l0 385c0 98-79 177-177 177l-545 0z m0-40l545 0c76 0 137-61 137-137l0-385c0-77-61-138-137-138l-545 0c-77 0-138 61-138 138l0 385c0 76 61 137 138 137z m27-73l0 0c-25-15-42-29-53-41-11-13-16-24-16-36 0-22 17-40 34-57 17-18 34-35 36-53 1-9-1-18-10-29-8-10-23-22-45-35l-8-5 169 0 1 0c23 14 38 26 47 37 9 12 12 23 11 33-2 21-20 38-37 55-17 18-33 35-33 54 0 10 4 21 14 33 11 12 27 25 52 39l8 5-170 0z m2-5l150 0c-21-13-36-25-45-36-11-13-16-24-16-36 0-22 17-40 34-57 17-18 34-35 36-53 1-9-2-18-10-29-9-10-23-22-45-35l-150 0c18 11 31 22 39 32 9 12 12 23 11 33-2 21-20 38-37 55-17 18-33 35-33 54 0 10 4 21 15 33 10 12 26 25 51 39z m-22-44c-4 0-4-5 0-5l89 0c4 0 4 5 0 5l-20 0-69 0z m9-51c-4 0-4-5 0-5l81 0c4 0 4 5 0 5l-81 0z m27-50c-3 0-3-5 0-5l91 0c3 0 3 5 0 5l-91 0z m18-51c-3 1-3-5 0-5l91 0c3 0 3 6 0 5l-91 0z" horiz-adv-x="1000" />
<glyph glyph-name="trash" unicode="&#xe811;" d="m429 743c-58-4-70 11-71-52l0-9-172-56c-20-5-20-29 0-30l624 0c19 0 19 25 0 30l-168 55 0 10c0 62-7 48-71 52l-71 0z m-215-204c-14 0-25-12-24-26l50-555c1-12 11-22 24-22l457 0c13 0 23 9 25 22l64 554c2 15-9 27-24 27l-143 0-143 0z m27-49l259 0 259 0-59-505-414 0z m120-73c-1 0-2 0-3 0-16-1-28-15-25-31l44-320c2-15 16-26 31-24 15 2 25 17 22 32l-44 319c-2 13-12 23-25 24z m280 0c-13 0-25-10-27-24l-44-319c-3-15 7-30 22-32 16-2 29 9 31 24l44 320c3 16-9 30-26 31z" horiz-adv-x="1000" />
<glyph glyph-name="user" unicode="&#xe812;" d="m492 644l-5-1c-84 0-140-60-140-139 0-39 29-74 58-100-16-5-54-19-93-41-23-12-45-27-62-44-16-17-28-37-29-58l0 0 0-204 98 0c1-1 2-1 3 0l457 0 0 204c0 19-12 37-29 53-18 17-41 32-64 45-42 24-83 40-99 46 28 26 48 60 48 99 0 79-58 140-143 140z m-38-82c13 0 27-3 40-10 59-31 121-43 132-34 1-4 1-9 1-14 0-38-21-73-50-97l-6-5 7-2c6-2 35-13 69-29-2-70-70-127-154-127-84 0-151 55-153 125 35 17 67 28 74 30l7 2-6 5c-29 25-60 60-60 98 0 5 0 10 1 15 10 8 52 42 98 43z m198-194c10-5 20-10 30-16 23-13 46-28 62-43 17-16 27-33 27-48l0-196-90 0 0 144-8 0 0-144-349 0 0 144c0 6-8 6-8 0l0-144-87 0 0 196c1 18 11 36 27 52 16 16 38 31 60 43 6 4 12 7 19 10 3-72 73-127 158-127 86 0 156 57 159 129z" horiz-adv-x="1000" />
<glyph glyph-name="service" unicode="&#xe813;" d="m396 646l0-3 0-49c-11-3-21-6-32-10l0 0 0 0c-10-5-20-10-29-16l-38 37-53-53 38-37c-12-19-21-40-25-61l-53 0 0-76 53 0c2-10 6-21 10-31 4-11 10-20 16-29l-39-38 54-53 37 36 0-15 33 1c8-3 15-6 23-8 1-7 4-14 7-22l0-33 2 0c4 0 8-1 12-1l-36-35 54-53 38 38c19-12 40-20 62-25l0-54 2 0c24 0 71 0 71 0l0 0 2 0 0 2 0 52c11 3 22 6 32 10l0 0 0 0c10 5 20 10 29 16l39-38 53 54-38 37c12 19 20 40 25 62l52 0 0 75-53 0c-2 10-5 21-10 31l0 0c-4 11-10 20-16 29l37 37-54 53-36-36 0 16-3 0-29 0c-8 3-15 5-22 7-2 7-5 14-7 22l0 31-17 0c0 0 0 0 0 0l36 37-54 53-36-37c-19 12-40 21-61 25l0 52-76 0z m5-5l66 0 0-51 2 0c22-5 44-13 63-26l2-1 35 36 47-46-36-36 1-1-53 0 0 0 0-33c-31 42-87 60-137 39-59-24-86-91-61-149l0 0c8-21 22-37 39-49l-34 0 0 0 0-54-37-36-47 46 38 37-1 2c-6 9-12 19-16 30l0 0c-5 11-8 22-10 32l-1 2-52 0 0 66 52 0 0 2c5 22 13 44 26 63l1 1-37 37 47 46 36-36 2 1c9 6 19 12 30 16l0 0c11 5 22 8 33 10l2 1 0 51z m32-115c38 0 74-19 95-52l0-10c-11-2-22-6-32-10l0 0 0 0c-11-4-20-10-29-16l-38 37-53-53 37-37c-12-19-20-39-25-61l-9 0c-20 11-36 29-45 51l0 0c-23 55 3 119 58 142l0 0c14 6 28 8 41 9z m100-15l57 0 9 0 0-27 0 0-1-24 2 0c3-1 6-1 8-2l1 0c8-2 15-4 22-7l0 0c11-4 21-9 30-15l1-1c1 0 1 0 2-1l1-1 36 36 47-46-36-36 1-2c7-9 12-19 17-30l0 0c4-10 7-21 10-32l0-2 52 0 0-65-51-1-1-2c-4-22-13-43-26-63l-1-1 38-37-46-47-38 37-2-1c-9-6-19-12-30-16-11-5-22-8-33-10l-2-1 0-53c-4 0-43 0-65 0l0 53-2 0c-23 5-45 14-64 26l-1 1-38-37-47 46 36 35 3 0-1 2 0 0-1 1-1 1c-1 2-2 4-3 6-3 4-5 8-7 12-1 1-1 2-1 2 0 1-1 2-1 2 0 1-1 1-1 2 0 1-1 1-1 2 0 1 0 1-1 2 0 1 0 1-1 2l0 0 0 0c0 1 0 1 0 2l-1 1 0 0c-3 7-5 14-7 21l0 1 0 0c0 0 0 0 0 0-1 3-1 5-2 7l0 3 0 0 0 0-2 0-12 0-10 0-29-1 0 9 0 57 52 0 1 2c4 22 13 44 26 63l1 2-37 36 46 46 37-36 2 1c9 6 19 12 30 16l0 0c11 5 22 8 33 11l2 0 0 6 0 2 0 43z m70-41c1-2 2-4 2-6 0 0-1 0-2 0l0 0 0 6z m57-19l0-9c-5 3-11 6-16 9l16 0z m-93-50c-1 0-2 0-3 0l0 0c0 0 0 0 0 0l0 0 0 0c-1 0-1 0-1 0l0 0c-2 0-3 0-5 0l0 0c0 0 0-1 0-1l0 0c-12 0-24-3-36-8-39-16-64-52-69-91l0 0c0 0 0 0 0 0 0-1 0-1 0-1 0 0 0 0 0 0l0 0c0 0 0 0 0 0l0 0c0-1 0-2 0-3l0 0c0 0 0 0 0 0 0 0 0-1 0-1 0 0 0 0 0 0 0 0 0 0 0 0l0 0c-1-2-1-5-1-8l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c0-3 0-5 0-8l0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0c1-3 1-5 1-8l0 0c0 0 0 0 0-1l0 0c1-1 1-2 1-3l0 0c0 0 0 0 0 0l0 0c0 0 0 0 0 0 0-1 0-1 0-1l0 0c0 0 0 0 0 0l0 0c0-1 0-2 1-3l0 0c0 0 0 0 0 0 0 0 0-1 0-1l0 0c0-1 0-2 1-4l0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0c0-1 0-2 1-3l0 0 0 0c0-1 0-1 0-1l0 0c1-3 1-5 2-7 1-1 1-1 1-2l0 0c0 0 0 0 0 0l0 0c1-1 1-2 1-3l0 0c1-1 1-2 2-3 0 0 0 0 0 0 0-1 0-1 0-1 1-3 2-5 4-7 0 0 0 0 0 0 0 0 0 0 0-1 0 0 0 0 0 0 28-49 90-71 144-49 58 25 85 92 61 149-11 25-29 44-51 56l0 0c0 0 0 0 0 0l0 0 0 0c-1 1-2 1-3 1l0 0c0 1 0 1 0 1l0 0c-2 0-3 1-4 1l0 0c0 0 0 0 0 0l0 0c-1 1-2 1-3 2l0 0c0 0 0 0 0 0l0 0 0 0c-1 0-2 1-3 1l0 0c0 0-1 0-1 0l0 0c-1 1-2 1-3 1l0 0c0 1 0 1-1 1l0 0c-1 0-1 0-2 0l0 0c-1 1-1 1-1 1l0 0c-2 0-5 1-7 2l0 0c0 0 0 0 0 0l0 0 0 0c-1 0-2 0-3 0l0 0c0 0-1 0-1 1l0 0c-1 0-2 0-3 0l0 0c-1 0-1 0-1 0l0 0 0 0c-1 0-2 1-3 1l0 0c0 0 0 0-1 0l0 0c-1 0-2 0-3 0l0 0c0 0 0 0 0 0l0 0c-1 0-2 0-3 1l0 0c-1 0-1 0-1 0l0 0c-1 0-3 0-4 0 0 0 0 0 0 0l0 0 0 0c-1 0-2 0-3 0z m0-5l0 0c1 0 2 0 3 0l0 0c0 0 0 0 1 0l0 0c1 0 1 0 2 0l0 0c1 0 1 0 1 0l0 0c1-1 2-1 3-1l0 0c1 0 1 0 1 0l0 0c1 0 2 0 3 0l0 0c0 0 0 0 1 0l0 0c0 0 1-1 2-1l0 0c1 0 1 0 1 0l0 0c1 0 2 0 3 0l0 0c0 0 0 0 1-1l0 0c1 0 2 0 2 0l0 0c1 0 1 0 1 0l0 0c2-1 4-1 6-2l0 0c1 0 1 0 1 0l0 0c1-1 2-1 3-1l0 0c0 0 0 0 0 0l0 0c1-1 2-1 4-1l0 0c0 0 0-1 0-1l0 0 0 0c1 0 2 0 3-1l0 0c0 0 0 0 0 0l0 0c1 0 2-1 3-1l0 0c0 0 0 0 0 0l0 0c1-1 2-1 3-2l0 0c0 0 1 0 1 0l0 0c1 0 2-1 2-1l0 0c1 0 1-1 1-1l0 0c21-11 38-29 48-53 23-55-3-119-58-142l0 0c-52-22-111-1-138 47 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c-1 2-2 5-3 7 0 0 0 0 0 0 0 0 0 0 0 0-1 0-1 1-1 1 0 0 0 0 0 0 0 1-1 2-1 3 0 0 0 0 0 0-1 1-1 2-1 3-1 0-1 1-1 1 0 0 0 0 0 0-1 3-2 5-2 7l0 0c0 1 0 1 0 1 0 0 0 0 0 0-1 1-1 2-1 3l0 0c0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0l0 0c-1 1-1 2-1 3l0 0c0 0 0 1 0 1-1 1-1 2-1 3l0 0c0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0l0 0c0 1-1 2-1 3l0 0c0 0 0 0 0 0 0 0 0 1 0 1l0 0c0 2 0 5-1 7l0 0c0 0 0 0 0 0 0 0 0 0 0 1l0 0c0 2 0 5 0 7l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 3 0 5 1 8l0 0c0 0 0 0 0 0l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 1 0 3 0 4l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c5 37 29 72 66 87l0 0c11 5 23 8 34 8l0 0c0 1 0 1 1 1l0 0c1 0 2 0 4 0l0 0c0 0 1 0 1 0l0 0c1 0 2 0 3 0z m-178-147l0 0c0-1 0-1 0-2-2 1-3 1-5 2l5 0z m14-41c3-6 6-12 10-18-4 0-7 1-10 1l0 17z" horiz-adv-x="1000" />
<glyph glyph-name="send" unicode="&#xe814;" d="m112 644l388-214 388 214-776 0z m0-105l0-483 776 0 0 483-388-193-388 193z" horiz-adv-x="1000" />
<glyph glyph-name="business-rule" unicode="&#xe815;" d="m104 644l0-294 0-32 0-5 0-256 194 0 5 0 593 0 0 293 0 294-792 0z m5-194l189 0 0-132-189 0 0 32 0 100z m194 0l588 0 0-100 0-32-588 0 0 132z m-194-137l189 0 0-251-189 0 0 251z m194 0l588 0 0-251-588 0 0 251z" horiz-adv-x="1000" />
<glyph glyph-name="receive" unicode="&#xe816;" d="m115 644c0 0 0 0-1 0 0 0 0 0 0 0-1-1-2-2-2-3l0-582c0-1 1-2 3-2l771 0c1 0 2 1 2 2l0 582c0 1-1 2-2 3 0 0 0 0 0 0 0 0 0 0 0 0l-481 0z m9-5l753 0-377-228z m-7-2l382-231c1 0 2 0 2 0l382 231 0-575-766 0z" horiz-adv-x="1000" />
<glyph glyph-name="script" unicode="&#xe817;" d="m385 644l-2-1c-57-34-96-65-121-94-24-29-35-56-35-81-1-51 39-93 78-133 39-40 78-78 82-119 2-21-4-43-23-67-20-25-53-52-104-82l-19-10 389 0 2 0c52 31 86 58 107 85 21 26 28 51 26 75-5 47-47 86-86 126-39 40-75 80-74 125 0 22 9 46 32 74 24 27 62 57 118 91l18 11-388 0z m3-12l344 0c-48-30-81-57-103-83-25-29-36-56-36-81-1-51 39-93 78-133 39-40 78-78 82-119 2-21-4-43-23-67-19-24-52-51-103-81l-344 0c43 26 71 51 90 74 21 26 28 51 25 75-5 47-46 86-85 126-39 40-75 80-75 125 1 22 10 46 33 74 23 27 61 57 117 90z m-50-102c-8 0-8-11 0-11l205 0c8 0 8 11 0 11l-46 0-159 0z m20-115c-7 0-7-12 0-12l188 0c7 0 7 12 0 12l-188 0z m63-116c-8 0-8-11 0-11l208 0c8 0 8 11 0 11l-208 0z m41-115c-7 0-7-12 0-12l208 0c8 0 8 12 0 12l-208 0z" horiz-adv-x="1000" />
<glyph glyph-name="manual" unicode="&#xe818;" d="m460 644c-7 0-15-3-22-8l0 0 0 0c-47-30-209-143-245-167-29-20-49-50-61-87l0 0 0 0c-12-38-10-82-10-120l0 0 0 0c0-28 1-51 8-79 0 0 0 0 0 0 0 0 0 0 0 0 10-42 28-73 54-94 25-21 59-32 97-32 147-1 293-1 439 0l0 0 0 0c12 0 22 3 29 10 7 7 11 18 11 33l0 0c0 15-3 26-11 32-7 6-17 9-29 9l0 0c-55 0-184 0-189 0l0 21 252 0c13 0 23 2 31 6 8 5 14 14 16 25 4 18 1 32-7 41-8 10-21 14-38 14l0 0c-77 0-249 0-254 0l0 19c5 0 271 0 302 0 16 0 28 5 35 13 7 9 10 21 10 37 0 15-4 27-11 34-8 8-20 11-34 11l0 0c-93 0-298 0-302 0l0 19c5 0 159 0 226 0l0 0 0 0c15 0 26 5 34 13 8 9 12 21 12 37l0 0 0 0c0 15-4 27-12 36-8 8-20 13-34 13l0 0c-55 0-141 0-214-1-36 0-70 0-94 0-13 0-23 0-30 1-4 0-7 0-9 0-1 0-2 0-2 0-1 0-1 0-1 0 0 0 0 0-1 1 0 0 1 1 0 0 6 7 22 23 38 39 16 16 32 32 39 40l0 0c15 20 17 48 5 66l0 0c-7 11-15 16-24 17-1 0-2 1-4 1z m0-5c1 0 2-1 3-1 7-1 14-5 21-15l0 0 0 0c10-16 9-41-5-60l0 0 0 0c-6-7-22-23-39-39-16-17-32-32-38-39-1-2-1-5 0-6 1-2 2-3 4-4 0 0 1 0 2 0 0 0 1 0 2 0 2 0 5 0 9 0 7-1 17-1 30-1 24 0 58 0 94 0 73 1 159 1 214 1l0 0 0 0c13 0 23-4 30-12 7-7 11-18 11-33 0-14-4-25-11-33-6-7-16-11-30-11-68 0-228 0-228 0l-3 0 0-29 3 0c0 0 210 0 304 0 14 0 24-3 30-9 7-7 10-17 10-31 0-15-3-26-9-34-6-7-16-11-31-11-31 0-304 0-304 0l-3 0 0-29 3 0c0 0 178 0 256 0l0 0 0 0c16 0 27-4 34-12 7-8 10-20 6-37l0 0 0 0c-2-11-6-17-13-21-7-4-17-6-29-6l-257 0 0-3 0-28 3 0c0 0 135 0 191 0l0 0c12 0 20-3 26-8 6-5 9-14 9-28l0 0 0 0c0-14-4-23-9-29-6-6-15-9-26-9-146-1-292-1-439 0l0 0 0 0c-38 0-69 10-94 31-25 20-43 50-53 91l0 0 0 0c-6 28-7 50-7 78l0 0c0 38-1 82 10 118 12 36 31 65 59 85 36 24 198 137 244 167l0 0c7 4 14 7 20 7z" horiz-adv-x="1000" />
<glyph glyph-name="complex-gateway" unicode="&#xe819;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m-30-247l0-148-104 105-43-43 105-104-148 0 0-60 148 0-105-104 43-43 104 105 0-148 60 0 0 148 104-105 43 43-105 104 148 0 0 60-148 0 105 104-43 43-104-105 0 148-60 0z" horiz-adv-x="1000" />
<glyph glyph-name="event-based-gateway-high-quality" unicode="&#xe81a;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m0-182c-76 0-148-30-201-83-54-54-84-126-84-202 0-76 30-148 84-201 53-54 125-84 201-84 76 0 148 30 202 84 53 53 83 125 83 201 0 76-30 148-83 202-54 53-126 83-202 83z m0-10c73 0 143-29 195-80 51-52 80-122 80-195 0-73-29-143-80-194-52-52-122-81-195-81-73 0-143 29-194 81-52 51-81 121-81 194 0 73 29 143 81 195 51 51 121 80 194 80z m0-55c-58 0-114-23-156-64-41-42-64-98-64-156 0-58 23-114 64-156 42-41 98-64 156-64 58 0 114 23 156 64 41 42 64 98 64 156 0 58-23 114-64 156-42 41-98 64-156 64z m0-10c56 0 109-22 149-61 39-40 61-93 61-149 0-56-22-109-61-148-40-40-93-62-149-62-56 0-109 22-148 62-40 39-62 92-62 148 0 56 22 109 62 149 39 39 92 61 148 61z m0-49l-3-2-149-109 58-179 188 0 59 179-153 111z m0-12l141-102-54-166-174 0-54 166 141 102z" horiz-adv-x="1000" />
<glyph glyph-name="event-based-gateway" unicode="&#xe81b;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m0-262l-3-2-195-142 76-233 245 0 75 233-198 144z m0-13l186-135-71-219-230 0-71 219 186 135z" horiz-adv-x="1000" />
<glyph glyph-name="exclusive-event-based" unicode="&#xe81c;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m0-187c-74 0-145-29-198-82-52-52-82-124-82-198 0-74 30-145 82-198 53-52 124-82 198-82 74 0 146 30 198 82 53 53 82 124 82 198 0 74-29 146-82 198-52 53-124 82-198 82z m0-10c72 0 140-28 191-79 51-51 79-119 79-191 0-72-28-140-79-191-51-51-119-79-191-79-72 0-140 28-191 79-51 51-79 119-79 191 0 72 28 140 79 191 51 51 119 79 191 79z m0-75l-3-2-185-134 72-222 232 0 72 222-188 136z m0-12l177-128-68-208-218 0-67 208 176 128z" horiz-adv-x="1000" />
<glyph glyph-name="exclusive-gateway-variant-1" unicode="&#xe81d;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z" horiz-adv-x="1000" />
<glyph glyph-name="exclusive-gateway-variant-2" unicode="&#xe81e;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m-98-267l73-200-73-200 50 0 48 131 48-131 50 0-73 200 73 200-50 0-48-131-48 131-50 0z" horiz-adv-x="1000" />
<glyph glyph-name="inclusive-gateway" unicode="&#xe81f;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m0-219c-66 0-129-27-175-73-46-46-72-109-72-175 0-66 26-129 72-175 46-46 109-72 175-72 66 0 129 26 175 72 46 46 73 109 73 175 0 66-27 129-73 175-46 46-109 73-175 73z m0-45c54 0 105-22 143-60 38-38 60-89 60-143 0-54-22-105-60-143-38-38-89-59-143-59-54 0-105 21-143 59-38 38-59 89-59 143 0 54 21 105 59 143 38 38 89 60 143 60z" horiz-adv-x="1000" />
<glyph glyph-name="parallel-event-based-instantiate-gateway" unicode="&#xe820;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m0-182c-76 0-148-30-201-83-54-54-84-126-84-202 0-76 30-148 84-201 53-54 125-84 201-84 76 0 148 30 202 84 53 53 83 125 83 201 0 76-30 148-83 202-54 53-126 83-202 83z m0-10c73 0 143-29 195-80 51-52 80-122 80-195 0-73-29-143-80-194-52-52-122-81-195-81-73 0-143 29-194 81-52 51-81 121-81 194 0 73 29 143 81 195 51 51 121 80 194 80z m-40-75l0-5 0-155-160 0 0-80 160 0 0-160 80 0 0 160 160 0 0 80-160 0 0 160-80 0z m10-10l60 0 0-160 160 0 0-60-160 0 0-160-60 0 0 160-160 0 0 60 160 0 0 160z" horiz-adv-x="1000" />
<glyph glyph-name="parallel-gateway" unicode="&#xe821;" d="m500 845l-7-7-488-488 495-495 495 495-495 495z m0-28l467-467-467-467-467 467 467 467z m-40-247l0-180-180 0 0-80 180 0 0-180 80 0 0 180 180 0 0 80-180 0 0 180-80 0z" horiz-adv-x="1000" />
</font>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Binary file not shown.

View File

@ -68,6 +68,7 @@ Modeler.prototype._modelingModules = [
require('diagram-js/lib/features/resize'),
require('diagram-js/lib/features/lasso-tool'),
require('diagram-js/lib/features/replace'),
require('diagram-js/lib/features/popup-menu'),
require('./features/replace'),
require('./features/modeling'),
require('./features/context-pad'),

View File

@ -1,41 +1,54 @@
'use strict';
var assign = require('lodash/object/assign');
var assign = require('lodash/object/assign'),
forEach = require('lodash/collection/forEach');
/**
* A provider for BPMN 2.0 elements context pad
*/
function ContextPadProvider(contextPad, directEditing, modeling, selection, elementFactory, connect, create) {
function ContextPadProvider(contextPad, modeling, elementFactory,
connect, create, popupMenu,
replace, canvas) {
contextPad.registerProvider(this);
this._directEditing = directEditing;
this._contextPad = contextPad;
this._modeling = modeling;
this._selection = selection;
this._elementFactory = elementFactory;
this._connect = connect;
this._create = create;
this._popupMenu = popupMenu;
this._replace = replace;
this._canvas = canvas;
}
ContextPadProvider.$inject = [
'contextPad',
'directEditing',
'modeling',
'selection',
'elementFactory',
'connect',
'create'
'create',
'popupMenu',
'replace',
'canvas'
];
ContextPadProvider.prototype.getContextPadEntries = function(element) {
var modeling = this._modeling,
var contextPad = this._contextPad,
modeling = this._modeling,
elementFactory = this._elementFactory,
connect = this._connect,
create = this._create;
create = this._create,
popupMenu = this._popupMenu,
replace = this._replace,
canvas = this._canvas;
var actions = {};
@ -49,6 +62,176 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) {
connect.start(event, element, autoActivate);
}
function removeElement(e) {
if (element.waypoints) {
modeling.removeConnection(element);
} else {
modeling.removeShape(element);
}
}
function replaceElement(element, newType, newBusinessAtt) {
replace.replaceElement(element, {type: newType}, newBusinessAtt);
}
function getPosition(element) {
var Y_OFFSET = 20;
var pad = contextPad.getPad(element);
var rect = pad.html.getBoundingClientRect();
var zoom = 1 / canvas.zoom();
var pos = {
x: rect.left,
y: (rect.top - rect.height * zoom / 2) + rect.height + Y_OFFSET
};
return pos;
}
function getReplacementMenuEntries(element) {
function addMenuEntry(label, newType, newBusinessAtt, actionName, className) {
function appendListener() {
replaceElement(element, newType, newBusinessAtt);
}
return {
label: label,
className: className,
action: {
name: actionName,
handler: appendListener
}
};
}
// var startEventReplace = [];
// var interEventReplace = [];
// var endEventReplace = [];
var gatewayReplace = [
{
label: 'Exclusive Gateway',
actionName: 'replace-with-exclusive-gateway',
className: 'icon-exclusive-gateway-variant-1',
targetType: 'bpmn:ExclusiveGateway'
},
{
label: 'Parallel Gateway',
actionName: 'replace-with-parallel-gateway',
className: 'icon-parallel-gateway',
targetType: 'bpmn:ParallelGateway'
},
{
label: 'Inclusive Gateway',
actionName: 'replace-with-inclusive-gateway',
className: 'icon-inclusive-gateway',
targetType: 'bpmn:InclusiveGateway'
},
{
label: 'Complex Gateway',
actionName: 'replace-with-complex-gateway',
className: 'icon-complex-gateway',
targetType: 'bpmn:ComplexGateway'
},
{
label: 'Event based Gateway',
actionName: 'replace-with-event-based-gateway',
className: 'icon-event-based-gateway',
targetType: 'bpmn:EventBasedGateway',
newBusinessAtt: {instantiate: false, eventGatewayType: 'Exclusive'}
},
{
label: 'Event based instantiating Gateway',
actionName: 'replace-with-exclusive-event-based-gateway',
className: 'icon-exclusive-event-based',
targetType: 'bpmn:EventBasedGateway',
newBusinessAtt: {instantiate: true, eventGatewayType: 'Exclusive'}
},
{
label: 'Parallel Event based instantiating Gateway',
actionName: 'replace-with-parallel-event-based-instantiate-gateway',
className: 'icon-parallel-event-based-instantiate-gateway',
targetType: 'bpmn:EventBasedGateway',
newBusinessAtt: {instantiate: true, eventGatewayType: 'Parallel'}
}
];
var taskReplace = [
{
label: 'Send Task',
actionName: 'replace-with-send-task',
className: 'icon-send',
targetType: 'bpmn:SendTask'
},
{
label: 'Receive Task',
actionName: 'replace-with-receive-task',
className: 'icon-receive',
targetType: 'bpmn:ReceiveTask'
},
{
label: 'User Task',
actionName: 'replace-with-user-task',
className: 'icon-user',
targetType: 'bpmn:UserTask'
},
{
label: 'Manual Task',
actionName: 'replace-with-manual-task',
className: 'icon-manual',
targetType: 'bpmn:ManualTask'
},
{
label: 'Business Rule Task',
actionName: 'replace-with-rule-task',
className: 'icon-business-rule',
targetType: 'bpmn:BusinessRuleTask'
},
{
label: 'Service Task',
actionName: 'replace-with-service-task',
className: 'icon-service',
targetType: 'bpmn:ServiceTask'
},
{
label: 'Script Task',
actionName: 'replace-with-script-task',
className: 'icon-script',
targetType: 'bpmn:ScriptTask'
}
];
var menuEntries = [];
if (element.businessObject.$instanceOf('bpmn:Event')) {
console.warn('Replace for event is not implemented yet.');
} else if (element.businessObject.$instanceOf('bpmn:Gateway')) {
forEach(gatewayReplace, function(definition) {
var entry = addMenuEntry(definition.label, definition.targetType, definition.newBusinessAtt,
definition.actionName, definition.className);
menuEntries.push(entry);
});
} else if (element.businessObject.$instanceOf('bpmn:FlowNode')) {
forEach(taskReplace, function(definition) {
var entry = addMenuEntry(definition.label, definition.targetType, {},
definition.actionName, definition.className);
menuEntries.push(entry);
});
}
return menuEntries;
}
function appendAction(type, className) {
function appendListener(event, element) {
@ -89,16 +272,32 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) {
assign(actions, {
'append.text-annotation': appendAction('bpmn:TextAnnotation', 'icon-text-annotation')
});
// Replace menu entry
assign(actions, {
'replace': {
group: 'edit',
className: 'icon-screw-wrench',
action: {
click: function(event, element) {
var pos = getPosition(element);
var entries = getReplacementMenuEntries(element);
popupMenu.open(
pos,
entries,
{ className: 'replace-menu' }
);
}
}
}
});
}
function removeElement(e) {
if (element.waypoints) {
modeling.removeConnection(element);
} else {
modeling.removeShape(element);
}
}
// Delete Element Entry
assign(actions, {
'delete': {
group: 'edit',

View File

@ -19,8 +19,10 @@ function BpmnReplace(modeling, eventBus) {
var context = event.context,
oldShape = context.oldShape,
newShape = context.newShape;
newShape = context.newShape,
newBusinessAtt = context.options ? context.options.newBusinessAtt || {} : {};
_.assign(newShape.businessObject, newBusinessAtt);
modeling.updateLabel(newShape, LabelUtil.getLabel(oldShape));
});
@ -35,7 +37,7 @@ BpmnReplace.$inject = [ 'modeling', 'eventBus' ];
BpmnReplace.prototype = Object.create(BaseReplace.prototype);
BpmnReplace.prototype.replaceElement = function(oldElement, newElementData) {
BpmnReplace.prototype.replaceElement = function(oldElement, newElementData, newBusinessAtt) {
if (oldElement.waypoints) {
throw new Error('connections cannot be replaced (yet)');
@ -51,5 +53,5 @@ BpmnReplace.prototype.replaceElement = function(oldElement, newElementData) {
newElementData.height = oldElement.height;
}
return this._originalReplaceElement(oldElement, newElementData);
return this._originalReplaceElement(oldElement, newElementData, {newBusinessAtt: newBusinessAtt});
};

View File

@ -1,6 +1,5 @@
'use strict';
var TestHelper = require('../TestHelper');
var fs = require('fs');

View File

@ -1,9 +1,6 @@
'use strict';
var Matchers = require('../../Matchers'),
TestHelper = require('../../TestHelper');
/* global bootstrapViewer, inject */
var Matchers = require('../../Matchers');
var fs = require('fs');
@ -152,4 +149,4 @@ describe('draw - bpmn renderer', function() {
bootstrapViewer(xml)(done);
});
});
});

View File

@ -9,7 +9,9 @@ var Matchers = require('../../../Matchers'),
var fs = require('fs');
var contextPadModule = require('../../../../lib/features/context-pad'),
bpmnModule = require('../../../../lib/core');
bpmnModule = require('../../../../lib/core'),
popupModule = require('diagram-js/lib/features/popup-menu'),
replaceModule = require('diagram-js/lib/features/replace');
describe('features - context-pad', function() {
@ -19,7 +21,7 @@ describe('features - context-pad', function() {
var diagramXML = fs.readFileSync('test/fixtures/bpmn/simple.bpmn', 'utf8');
var testModules = [ contextPadModule, bpmnModule ];
var testModules = [ contextPadModule, bpmnModule, popupModule, replaceModule ];
beforeEach(bootstrapViewer(diagramXML, { modules: testModules }));