@formicoidea/labre-framework-bpmn 0.23.2 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/consts.d.ts +41 -0
  2. package/{src/consts.ts → dist/consts.js} +47 -57
  3. package/dist/descriptor.d.ts +7 -0
  4. package/{src/descriptor.ts → dist/descriptor.js} +4 -5
  5. package/dist/effects.d.ts +9 -0
  6. package/dist/effects.js +6 -0
  7. package/dist/element-renderer.d.ts +12 -0
  8. package/dist/element-renderer.js +57 -0
  9. package/dist/element-view.d.ts +21 -0
  10. package/dist/element-view.js +102 -0
  11. package/{src/index.ts → dist/index.d.ts} +1 -1
  12. package/dist/index.js +1 -0
  13. package/dist/node/node-renderer.d.ts +15 -0
  14. package/dist/node/node-renderer.js +42 -0
  15. package/dist/node/node-view.d.ts +16 -0
  16. package/dist/node/node-view.js +27 -0
  17. package/dist/templates/index.d.ts +2 -0
  18. package/dist/templates/index.js +113 -0
  19. package/dist/toolbar/bpmn-menu.d.ts +26 -0
  20. package/dist/toolbar/bpmn-menu.js +178 -0
  21. package/dist/toolbar/bpmn-senior-button.d.ts +15 -0
  22. package/{src/toolbar/bpmn-senior-button.ts → dist/toolbar/bpmn-senior-button.js} +45 -51
  23. package/dist/toolbar/config.d.ts +13 -0
  24. package/dist/toolbar/config.js +54 -0
  25. package/dist/toolbar/icons.d.ts +15 -0
  26. package/{src/toolbar/icons.ts → dist/toolbar/icons.js} +23 -30
  27. package/dist/toolbar/senior-tool.d.ts +1 -0
  28. package/{src/toolbar/senior-tool.ts → dist/toolbar/senior-tool.js} +9 -10
  29. package/dist/view.d.ts +6 -0
  30. package/dist/view.js +33 -0
  31. package/package.json +15 -6
  32. package/src/effects.ts +0 -14
  33. package/src/element-renderer.ts +0 -93
  34. package/src/element-view.ts +0 -116
  35. package/src/node/node-renderer.ts +0 -65
  36. package/src/node/node-view.ts +0 -34
  37. package/src/templates/index.ts +0 -156
  38. package/src/toolbar/bpmn-menu.ts +0 -224
  39. package/src/toolbar/config.ts +0 -74
  40. package/src/view.ts +0 -37
@@ -1,74 +0,0 @@
1
- import { EdgelessCRUDIdentifier } from '@formicoidea/labre-core/blocks/surface';
2
- import { BpmnPoolElementModel } from '@formicoidea/labre-core/model';
3
- import {
4
- type ToolbarContext,
5
- type ToolbarModuleConfig,
6
- ToolbarModuleExtension,
7
- } from '@formicoidea/labre-core/shared/services';
8
- import { BlockFlavourIdentifier } from '@formicoidea/labre-core/std';
9
- import { html, type TemplateResult } from 'lit';
10
-
11
- const ResizeIcon = html`<svg
12
- width="24"
13
- height="24"
14
- viewBox="0 0 24 24"
15
- fill="none"
16
- stroke="currentColor"
17
- stroke-width="1.6"
18
- stroke-linecap="round"
19
- stroke-linejoin="round"
20
- >
21
- <path d="M9 5H5v4M15 19h4v-4" />
22
- <path d="M5 5l6 6M19 19l-6-6" />
23
- </svg>`;
24
-
25
- type BpmnPoolToggleProp = 'resizeEnabled';
26
-
27
- /**
28
- * Build a toolbar toggle that flips a boolean flag on every selected pool:
29
- * `active` reflects the current state, `run` flips it (with an undo checkpoint).
30
- */
31
- function booleanToggle(
32
- id: string,
33
- tooltip: string,
34
- icon: TemplateResult,
35
- prop: BpmnPoolToggleProp
36
- ) {
37
- return {
38
- id,
39
- tooltip,
40
- icon,
41
- active(ctx: ToolbarContext) {
42
- const models = ctx.getSurfaceModelsByType(BpmnPoolElementModel);
43
- return models.length > 0 && models.every(model => model[prop]);
44
- },
45
- run(ctx: ToolbarContext) {
46
- const models = ctx.getSurfaceModelsByType(BpmnPoolElementModel);
47
- if (!models.length) return;
48
-
49
- const enable = !models.every(model => model[prop]);
50
- ctx.std.store.captureSync();
51
- const crud = ctx.std.get(EdgelessCRUDIdentifier);
52
- for (const model of models) {
53
- crud.updateElement(model.id, { [prop]: enable });
54
- }
55
- },
56
- };
57
- }
58
-
59
- export const bpmnPoolToolbarConfig = {
60
- actions: [
61
- booleanToggle(
62
- 'a.toggle-resize',
63
- 'Enable / lock resizing',
64
- ResizeIcon,
65
- 'resizeEnabled'
66
- ),
67
- ],
68
- when: ctx => ctx.getSurfaceModelsByType(BpmnPoolElementModel).length > 0,
69
- } as const satisfies ToolbarModuleConfig;
70
-
71
- export const bpmnPoolToolbarExtension = ToolbarModuleExtension({
72
- id: BlockFlavourIdentifier('affine:surface:bpmnPool'),
73
- config: bpmnPoolToolbarConfig,
74
- });
package/src/view.ts DELETED
@@ -1,37 +0,0 @@
1
- import {
2
- type ViewExtensionContext,
3
- ViewExtensionProvider,
4
- } from '@formicoidea/labre-core/ext-loader';
5
- import { extendTemplateCategory } from '@formicoidea/labre-core/gfx/template';
6
-
7
- import { effects } from './effects';
8
- import { bpmnTemplateCategory } from './templates';
9
- import { BpmnPoolRendererExtension } from './element-renderer';
10
- import { BpmnPoolInteraction, BpmnPoolView } from './element-view';
11
- import { BpmnNodeRendererExtension } from './node/node-renderer';
12
- import { BpmnNodeView } from './node/node-view';
13
- import { bpmnPoolToolbarExtension } from './toolbar/config';
14
- import { bpmnSeniorTool } from './toolbar/senior-tool';
15
-
16
- export class BpmnViewExtension extends ViewExtensionProvider {
17
- override name = 'affine-bpmn-gfx';
18
-
19
- override effect(): void {
20
- super.effect();
21
- effects();
22
- extendTemplateCategory(bpmnTemplateCategory);
23
- }
24
-
25
- override setup(context: ViewExtensionContext) {
26
- super.setup(context);
27
- context.register(BpmnPoolView);
28
- context.register(BpmnPoolRendererExtension);
29
- context.register(BpmnNodeView);
30
- context.register(BpmnNodeRendererExtension);
31
- if (this.isEdgeless(context.scope)) {
32
- context.register(BpmnPoolInteraction);
33
- context.register(bpmnSeniorTool);
34
- context.register(bpmnPoolToolbarExtension);
35
- }
36
- }
37
- }