@ddd-tool/domain-designer-cli 0.1.0-beta.9 → 0.3.1

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 (107) hide show
  1. package/README.md +12 -20
  2. package/bin/domain-designer-cli.cjs +19148 -18666
  3. package/package.json +42 -23
  4. package/packages/core/dist/README.md +43 -0
  5. package/packages/core/dist/actor.d.ts +2 -0
  6. package/packages/core/dist/agg.d.ts +2 -0
  7. package/packages/core/dist/command.d.ts +3 -0
  8. package/packages/core/dist/common.d.ts +158 -0
  9. package/packages/core/dist/event.d.ts +2 -0
  10. package/packages/core/dist/index.d.ts +33 -0
  11. package/packages/core/dist/index.js +1980 -0
  12. package/packages/core/dist/info.d.ts +2 -0
  13. package/packages/core/dist/note.d.ts +2 -0
  14. package/packages/core/dist/package.json +21 -0
  15. package/packages/core/dist/policy.d.ts +2 -0
  16. package/packages/core/dist/read-model.d.ts +2 -0
  17. package/packages/core/dist/service.d.ts +2 -0
  18. package/packages/core/dist/system.d.ts +2 -0
  19. package/packages/core/dist/types.d.ts +558 -0
  20. package/packages/playground/.env +1 -0
  21. package/packages/playground/node_modules/.vite/deps/_metadata.json +34 -0
  22. package/packages/playground/node_modules/.vite/deps/chunk-F4TQRHS6.js +2147 -0
  23. package/packages/playground/node_modules/.vite/deps/chunk-F4TQRHS6.js.map +7 -0
  24. package/packages/playground/node_modules/.vite/deps/chunk-MFAKUPMY.js +12787 -0
  25. package/packages/playground/node_modules/.vite/deps/chunk-MFAKUPMY.js.map +7 -0
  26. package/packages/playground/node_modules/.vite/deps/package.json +3 -0
  27. package/packages/playground/node_modules/.vite/deps/primevue_button.js +1215 -0
  28. package/packages/playground/node_modules/.vite/deps/primevue_button.js.map +7 -0
  29. package/packages/playground/node_modules/.vite/deps/primevue_dock.js +1236 -0
  30. package/packages/playground/node_modules/.vite/deps/primevue_dock.js.map +7 -0
  31. package/packages/playground/node_modules/.vite/deps/vue.js +346 -0
  32. package/packages/playground/node_modules/.vite/deps/vue.js.map +7 -0
  33. package/packages/playground/node_modules/.vue-global-types/vue_3.5_0.d.ts +136 -0
  34. package/packages/playground/package.json +19 -0
  35. package/{src → packages/playground/src}/App.vue +12 -12
  36. package/{src → packages/playground/src}/main.ts +27 -27
  37. package/{src → packages/playground/src}/views/Index.vue +16 -16
  38. package/packages/playground/src/views/complex-example-detail/book.ts +383 -0
  39. package/packages/playground/src/views/complex-example-detail/common.ts +4 -0
  40. package/packages/playground/src/views/complex-example-detail/user.ts +66 -0
  41. package/packages/playground/src/views/complex-example.ts +4 -0
  42. package/{src → packages/playground/src}/views/design-en.ts +110 -99
  43. package/{src → packages/playground/src}/views/design-zh.ts +97 -91
  44. package/packages/playground/src/views/index.ts +19 -0
  45. package/packages/playground/src/views/simple-example.ts +103 -0
  46. package/packages/playground/tsconfig.json +32 -0
  47. package/packages/playground/vite-env.d.ts +12 -0
  48. package/packages/playground/vite.config.ts +22 -0
  49. package/packages/ui-component/dist/LICENSE +201 -0
  50. package/packages/ui-component/dist/README.md +5 -0
  51. package/packages/ui-component/dist/UI.vue.d.ts +29 -0
  52. package/packages/ui-component/dist/common.d.ts +9 -0
  53. package/packages/ui-component/dist/components/drag-zoom/Index.vue.d.ts +37 -0
  54. package/packages/ui-component/dist/components/node-info/Index.vue.d.ts +29 -0
  55. package/packages/ui-component/dist/components/nomnoml/Index.vue.d.ts +24 -0
  56. package/packages/ui-component/dist/components/nomnoml/base-style.d.ts +2 -0
  57. package/packages/ui-component/dist/components/nomnoml/preprocess.d.ts +5 -0
  58. package/packages/ui-component/dist/components/story-bar/Index.vue.d.ts +28 -0
  59. package/packages/ui-component/dist/components/tool-bar/Index.vue.d.ts +29 -0
  60. package/packages/ui-component/dist/domain/common.d.ts +27 -0
  61. package/packages/ui-component/dist/domain/diagram-agg/gen-code.d.ts +64 -0
  62. package/packages/ui-component/dist/domain/diagram-agg/index.d.ts +8554 -0
  63. package/packages/ui-component/dist/domain/diagram-agg/plugins.d.ts +80 -0
  64. package/packages/ui-component/dist/domain/diagram-agg/types.d.ts +20 -0
  65. package/packages/ui-component/dist/domain/i18n-agg/index.d.ts +25 -0
  66. package/packages/ui-component/dist/domain/i18n-agg/locale/en-US.d.ts +3 -0
  67. package/packages/ui-component/dist/domain/i18n-agg/locale/zh-CN.d.ts +3 -0
  68. package/packages/ui-component/dist/domain/i18n-agg/message.d.ts +42 -0
  69. package/packages/ui-component/dist/domain/mount-plugin.d.ts +1 -0
  70. package/packages/ui-component/dist/favicon.ico +0 -0
  71. package/packages/ui-component/dist/index.css +144 -0
  72. package/packages/ui-component/dist/index.d.ts +6 -0
  73. package/packages/ui-component/dist/index.js +19776 -0
  74. package/packages/ui-component/dist/package.json +28 -0
  75. package/packages/ui-component/dist/ui.d.ts +8 -0
  76. package/scripts/ai-assist-worker.cjs +7123 -0
  77. package/scripts/sync-version.mjs +22 -0
  78. package/templates/CLAUDE.md +276 -0
  79. package/templates/README.md +97 -0
  80. package/templates/complex-example-detail/book.ts +383 -0
  81. package/templates/complex-example-detail/common.ts +4 -0
  82. package/templates/complex-example-detail/user.ts +66 -0
  83. package/templates/complex-example.ts +4 -0
  84. package/templates/node_modules/@ddd-tool/domain-designer-core/actor.d.ts +1 -1
  85. package/templates/node_modules/@ddd-tool/domain-designer-core/agg.d.ts +1 -1
  86. package/templates/node_modules/@ddd-tool/domain-designer-core/command.d.ts +1 -1
  87. package/templates/node_modules/@ddd-tool/domain-designer-core/common.d.ts +7 -8
  88. package/templates/node_modules/@ddd-tool/domain-designer-core/event.d.ts +1 -1
  89. package/templates/node_modules/@ddd-tool/domain-designer-core/index.d.ts +3 -3
  90. package/templates/node_modules/@ddd-tool/domain-designer-core/info.d.ts +1 -1
  91. package/templates/node_modules/@ddd-tool/domain-designer-core/note.d.ts +1 -1
  92. package/templates/node_modules/@ddd-tool/domain-designer-core/policy.d.ts +1 -1
  93. package/templates/node_modules/@ddd-tool/domain-designer-core/read-model.d.ts +1 -1
  94. package/templates/node_modules/@ddd-tool/domain-designer-core/service.d.ts +1 -1
  95. package/templates/node_modules/@ddd-tool/domain-designer-core/system.d.ts +1 -1
  96. package/templates/node_modules/@ddd-tool/domain-designer-core/{define.d.ts → types.d.ts} +23 -4
  97. package/templates/node_modules/version.txt +1 -1
  98. package/templates/simple-example.ts +103 -0
  99. package/tsconfig.json +19 -6
  100. package/scripts/sync-ver.mjs +0 -0
  101. package/src/views/index.ts +0 -15
  102. package/templates/example-agg.ts +0 -31
  103. package/templates/example.ts +0 -91
  104. package/vite.config.ts +0 -16
  105. /package/{index.html → packages/playground/index.html} +0 -0
  106. /package/{src → packages/playground/src}/assets/logo.svg +0 -0
  107. /package/{src → packages/playground/src}/assets/main.css +0 -0
@@ -0,0 +1,80 @@
1
+ export declare const DIAGRAM_STORAGE_PLUGIN: import('vue-fn/domain').DomainSetupPlugin<
2
+ import('vue-fn/domain').DomainSingletonAgg<
3
+ {
4
+ renderConfig: {
5
+ ranker: import('./types').Ranker
6
+ padding: number
7
+ fontSize: number
8
+ edges: import('./types').EdgeType
9
+ bendSize: number
10
+ }
11
+ design: import('vue').ComputedRef<
12
+ import('@ddd-tool/domain-designer-core').DomainDesigner | undefined
13
+ >
14
+ designKeys: import('vue').ComputedRef<string[]>
15
+ designRecords: import('vue').Ref<
16
+ Record<string, import('@ddd-tool/domain-designer-core').DomainDesigner>,
17
+ Record<string, import('@ddd-tool/domain-designer-core').DomainDesigner>
18
+ >
19
+ code: import('vue').ComputedRef<string>
20
+ userStories: import('vue').ComputedRef<Record<string, string[]>>
21
+ workflows: import('vue').ComputedRef<Record<string, string[]>>
22
+ workflowPlayInterval: import('vue').Ref<number, number>
23
+ currentWorkflow: import('vue').Ref<string | undefined, string | undefined>
24
+ currentStory: import('vue').Ref<string, string>
25
+ currentDesignKey: import('vue').Ref<string | undefined, string | undefined>
26
+ currentNode: import('vue').Ref<string | undefined, string | undefined>
27
+ downloadEnabled: import('vue').Ref<boolean, boolean>
28
+ linkReadModel: import('vue').Ref<boolean, boolean>
29
+ linkSystem: import('vue').Ref<boolean, boolean>
30
+ builtinStoryMode: import('vue').Ref<boolean, boolean>
31
+ customWorkflowNames: import('vue').Ref<string[], string[]>
32
+ },
33
+ {
34
+ focusFlow: {
35
+ (workflow: undefined, userStory?: undefined): void
36
+ (workflow: string, userStory: string): void
37
+ }
38
+ downloadSvg(): void
39
+ getFilteredContext(): {
40
+ aggs: import('@ddd-tool/domain-designer-core').DomainDesignAgg<any>[]
41
+ commands: import('@ddd-tool/domain-designer-core').DomainDesignCommand<any>[]
42
+ facadeCommands: import('@ddd-tool/domain-designer-core').DomainDesignFacadeCommand<any>[]
43
+ events: import('@ddd-tool/domain-designer-core').DomainDesignEvent<any>[]
44
+ services: import('@ddd-tool/domain-designer-core').DomainDesignService[]
45
+ actors: import('@ddd-tool/domain-designer-core').DomainDesignActor[]
46
+ policies: import('@ddd-tool/domain-designer-core').DomainDesignPolicy[]
47
+ readModels: import('@ddd-tool/domain-designer-core').DomainDesignReadModel<any>[]
48
+ systems: import('@ddd-tool/domain-designer-core').DomainDesignSystem[]
49
+ links: Record<string, import('@ddd-tool/domain-designer-core/common').LinkType>
50
+ getIdMap: () => Record<string, import('@ddd-tool/domain-designer-core').DomainDesignObject>
51
+ }
52
+ setBuiltinStoryMode(b: boolean): void
53
+ setCustomWorkflowNames(v: string[]): void
54
+ setRenderRanker(v: import('./types').Ranker): void
55
+ setRenderPadding(v: number): void
56
+ setRenderFontSize(v: number): void
57
+ setRenderBendSize(v: number): void
58
+ setRenderEdgesType(v: import('./types').EdgeType): void
59
+ setDownloadEnabled(b: boolean): void
60
+ setWorkflowPlayInterval(i: number): void
61
+ setDisplayReadModel(b: boolean): void
62
+ setDisplaySystem(b: boolean): void
63
+ setCurrentNode(id: string | undefined): void
64
+ switchDesign(key: string): void
65
+ getIdMap(): Record<string, import('@ddd-tool/domain-designer-core').DomainDesignObject>
66
+ },
67
+ {
68
+ onFocusNode: import('vue-fn/domain').DomainBroadcastEvent<{
69
+ id: string | undefined
70
+ }>
71
+ onFocusFlow: import('vue-fn/domain').DomainBroadcastEvent<{
72
+ userStory: string
73
+ workflow: string | undefined
74
+ displayReadModel: import('vue').Ref<boolean, boolean>
75
+ displaySystem: import('vue').Ref<boolean, boolean>
76
+ }>
77
+ onDownloadSvg: import('vue-fn/domain').DomainBroadcastEvent<{}>
78
+ }
79
+ >
80
+ >
@@ -0,0 +1,20 @@
1
+ export declare const EMPTY_STORY = '__Empty__'
2
+ export declare const Ranker: Readonly<{
3
+ readonly NetworkSimplex: 'network-simplex'
4
+ readonly TightTree: 'tight-tree'
5
+ readonly LongestPath: 'longest-path'
6
+ }>
7
+ export type Ranker = Enum<typeof Ranker>
8
+ export declare const EdgeType: Readonly<{
9
+ readonly Rounded: 'rounded'
10
+ readonly Hard: 'hard'
11
+ }>
12
+ export type EdgeType = Enum<typeof EdgeType>
13
+ export type RenderConfig = {
14
+ ranker: Ranker
15
+ padding: number
16
+ fontSize: number
17
+ edges: EdgeType
18
+ bendSize: number
19
+ }
20
+ export declare function defaultRenderConfig(): RenderConfig
@@ -0,0 +1,25 @@
1
+ import { type ComputedRef } from 'vue'
2
+ import type { I18nMessageKeys } from './message'
3
+ export declare const validLanguages: readonly ['zh-CN', 'en-US']
4
+ export type Language = (typeof validLanguages)[number]
5
+ export declare function useI18nAgg(): Readonly<{
6
+ states: Readonly<{
7
+ currentLanguage: Readonly<import('vue').Ref<'zh-CN' | 'en-US', 'zh-CN' | 'en-US'>>
8
+ }>
9
+ commands: Readonly<{
10
+ setLanguage: (lang: Language) => void
11
+ t: {
12
+ (key: I18nMessageKeys, defaultValue?: string): string
13
+ (key: I18nMessageKeys, attr: Record<string, string | number>, defaultValue?: string): string
14
+ }
15
+ $t: {
16
+ (key: I18nMessageKeys, defaultValue?: string): ComputedRef<string>
17
+ (
18
+ key: I18nMessageKeys,
19
+ attr: Record<string, string | number>,
20
+ defaultValue?: string,
21
+ ): ComputedRef<string>
22
+ }
23
+ }>
24
+ events: Readonly<{}>
25
+ }>
@@ -0,0 +1,3 @@
1
+ import { type I18nMessages } from '../message'
2
+ declare const messages: I18nMessages
3
+ export default messages
@@ -0,0 +1,3 @@
1
+ import { type I18nMessages } from '../message'
2
+ declare const messages: I18nMessages
3
+ export default messages
@@ -0,0 +1,42 @@
1
+ export type I18nMessageKeys =
2
+ | 'constant.type'
3
+ | 'constant.type.id'
4
+ | 'constant.type.document'
5
+ | 'constant.type.function'
6
+ | 'constant.type.valueObject'
7
+ | 'constant.type.version'
8
+ | 'constant.relatedTypes'
9
+ | 'constant.note'
10
+ | 'constant.empty'
11
+ | 'constant.others'
12
+ | 'menu.replayWorkflow'
13
+ | 'menu.focusOnUserStory'
14
+ | 'menu.focusOnUserStory.focusNothing'
15
+ | 'menu.focusOnUserStory.animationDuration'
16
+ | 'menu.completenessAssist'
17
+ | 'menu.settings'
18
+ | 'menu.settings.linkExternalSystem'
19
+ | 'menu.settings.linkReadModel'
20
+ | 'menu.settings.language'
21
+ | 'menu.settings.dataSource'
22
+ | 'menu.settings.render'
23
+ | 'menu.settings.render.ranker'
24
+ | 'menu.settings.render.ranker.NetworkSimplex.note'
25
+ | 'menu.settings.render.ranker.TightTree.note'
26
+ | 'menu.settings.render.ranker.LongestPath.note'
27
+ | 'menu.settings.render.padding'
28
+ | 'menu.settings.render.fontSize'
29
+ | 'menu.settings.render.edgesType'
30
+ | 'menu.settings.render.edgesType.rounded'
31
+ | 'menu.settings.render.edgesType.hard'
32
+ | 'menu.settings.render.bendSize'
33
+ | 'menu.help'
34
+ | 'menu.help.zoom'
35
+ | 'menu.help.zoom.content'
36
+ | 'menu.help.drag'
37
+ | 'menu.help.drag.content'
38
+ | 'menu.exportSvg'
39
+ | 'menu.resetPosition'
40
+ export type I18nMessages = {
41
+ [key in I18nMessageKeys]: string
42
+ }
@@ -0,0 +1,144 @@
1
+
2
+ .nomnoml[data-v-d8ed1f3a] {
3
+ height: 100%;
4
+ overflow: auto;
5
+ }
6
+
7
+ .nomnoml text {
8
+ cursor: pointer;
9
+ }
10
+ @keyframes shining-info {
11
+ from {
12
+ stroke-width: 1px;
13
+ stroke-opacity: 0.2;
14
+ stroke: #000;
15
+ -webkit-text-stroke-color: #000;
16
+ }
17
+ to {
18
+ stroke-width: 1px;
19
+ stroke-opacity: 0.8;
20
+ stroke: #000;
21
+ -webkit-text-stroke-color: #000;
22
+ }
23
+ }
24
+ @keyframes shining-node {
25
+ from {
26
+ stroke-opacity: 0.2;
27
+ stroke: #33322e;
28
+ -webkit-text-stroke-color: #33322e;
29
+ }
30
+ to {
31
+ stroke-opacity: 1;
32
+ stroke: #33322e;
33
+ -webkit-text-stroke-color: #33322e;
34
+ }
35
+ }
36
+ .nomnoml .highlight-info:not(.active) text {
37
+ animation: shining-info 0.6s alternate infinite;
38
+ -webkit-animation: shining-info 0.6s alternate infinite;
39
+ -moz-animation: shining-info 0.6s alternate infinite;
40
+ }
41
+ .nomnoml .highlight-note:not(.active) {
42
+ animation: shining-info 0.6s alternate infinite;
43
+ -webkit-animation: shining-info 0.6s alternate infinite;
44
+ -moz-animation: shining-info 0.6s alternate infinite;
45
+ }
46
+ .nomnoml .highlight-node:not(.active) g:first-child {
47
+ animation: shining-node 0.6s alternate infinite;
48
+ -webkit-animation: shining-node 0.6s alternate infinite;
49
+ -moz-animation: shining-node 0.6s alternate infinite;
50
+ }
51
+ .nomnoml g[data-id].active text,
52
+ .nomnoml tspan[data-id].active {
53
+ stroke-width: 1px;
54
+ stroke-opacity: 0.8;
55
+ stroke: #000;
56
+ -webkit-text-stroke-color: #000;
57
+ }
58
+ .nomnoml g.node.active {
59
+ animation: shining-node 0.6s alternate infinite;
60
+ -webkit-animation: shining-node 0.6s alternate infinite;
61
+ -moz-animation: shining-node 0.6s alternate infinite;
62
+ }
63
+
64
+ .container {
65
+ width: 100vw;
66
+ height: 100vh;
67
+ background-color: #efefef;
68
+ overflow: hidden;
69
+ position: relative;
70
+ }
71
+ .draggable {
72
+ position: absolute;
73
+ top: 0;
74
+ left: 0;
75
+ user-select: none;
76
+ transform-origin: 0 0; /* 设置缩放原点为左上角 */
77
+ }
78
+
79
+ .dock-selector[data-v-419ca8ac] {
80
+ display: inline-block;
81
+ }
82
+ [data-v-419ca8ac] .p-dock-item {
83
+ padding: 0;
84
+ }
85
+ [data-v-419ca8ac] .p-dock-item-content > div {
86
+ padding: 0.5rem;
87
+ }
88
+
89
+ .p-dock {
90
+ opacity: 0.4;
91
+ transition: 0.5s;
92
+ }
93
+ .p-dock:hover {
94
+ opacity: 1;
95
+ }
96
+ .p-dock .p-dock-item {
97
+ transition: 0.5s;
98
+ }
99
+ .p-dock .p-dock-item:hover {
100
+ scale: 1.2;
101
+ }
102
+ .toolbar-drawer {
103
+ width: 40%;
104
+ }
105
+ .toolbar-drawer .datasource {
106
+ font-weight: bold;
107
+ }
108
+ .toolbar-drawer .datasource .datasource-item {
109
+ display: grid;
110
+ grid-template-columns: 20px 1fr;
111
+ grid-template-rows: 1fr;
112
+ margin: 5px 0;
113
+ line-height: 1.5rem;
114
+ font-size: 1rem;
115
+ border-radius: 5px;
116
+ }
117
+ .toolbar-drawer .datasource .datasource-item :hover {
118
+ cursor: pointer;
119
+ background-image: linear-gradient(to bottom, white, rgb(228, 250, 255), white);
120
+ }
121
+ .toolbar-drawer .datasource .datasource-item label {
122
+ padding-left: 5px;
123
+ }
124
+ .root-fieldset {
125
+ opacity: 0.7;
126
+ white-space: pre-line;
127
+ position: absolute;
128
+ right: 4rem;
129
+ top: 0;
130
+ width: 30%;
131
+ transition: opacity 0.5s ease-out;
132
+ }
133
+ .root-fieldset:hover {
134
+ opacity: 1;
135
+ }
136
+ .root-fieldset .note::before {
137
+ content: '';
138
+ display: inline-block;
139
+ height: 1rem;
140
+ width: 0.5rem;
141
+ border-radius: 0.25rem;
142
+ margin-right: 0.5rem;
143
+ background-color: #4441ff;
144
+ }
@@ -0,0 +1,6 @@
1
+ import Aura from '@primeuix/themes/aura'
2
+ import PrimeVue from 'primevue/config'
3
+ import Tooltip from 'primevue/tooltip'
4
+ import './domain/mount-plugin'
5
+ import Ui from './UI.vue'
6
+ export { Ui, PrimeVue, Aura, Tooltip }