flow.mock.ts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. /**
  2. * Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
  3. * SPDX-License-Identifier: MIT
  4. */
  5. import { type FlowDocumentJSON } from '../src';
  6. export const baseMock: FlowDocumentJSON = {
  7. nodes: [
  8. {
  9. id: 'start_0',
  10. type: 'start',
  11. },
  12. {
  13. id: 'dynamicSplit_0',
  14. type: 'dynamicSplit',
  15. blocks: [{ id: 'block_0' }, { id: 'block_1' }],
  16. },
  17. {
  18. id: 'end_0',
  19. type: 'end',
  20. },
  21. ],
  22. };
  23. export const baseMockAddNode: FlowDocumentJSON = {
  24. nodes: [
  25. {
  26. id: 'start_0',
  27. type: 'start',
  28. },
  29. {
  30. id: 'dynamicSplit_0',
  31. type: 'dynamicSplit',
  32. blocks: [{ id: 'block_0' }, { id: 'block_1', blocks: [{ id: 'noop_0', type: 'noop' }] }],
  33. },
  34. {
  35. id: 'end_0',
  36. type: 'end',
  37. },
  38. ],
  39. };
  40. export const baseMockAddBranch: FlowDocumentJSON = {
  41. nodes: [
  42. {
  43. id: 'start_0',
  44. type: 'start',
  45. },
  46. {
  47. id: 'dynamicSplit_0',
  48. type: 'dynamicSplit',
  49. blocks: [
  50. { id: 'block_0' },
  51. { id: 'block_1', blocks: [{ id: 'noop_0', type: 'noop' }] },
  52. { id: 'block_2' },
  53. ],
  54. },
  55. {
  56. id: 'end_0',
  57. type: 'end',
  58. },
  59. ],
  60. };
  61. export const baseMockNodeEnd2: FlowDocumentJSON = {
  62. nodes: [
  63. {
  64. id: 'start_0',
  65. type: 'start',
  66. },
  67. {
  68. id: 'split',
  69. type: 'dynamicSplit',
  70. blocks: [
  71. {
  72. id: 'branch_0',
  73. blocks: [
  74. {
  75. id: 'endbL5T2',
  76. type: 'end',
  77. },
  78. ],
  79. },
  80. {
  81. id: 'branch_1',
  82. blocks: [
  83. {
  84. id: 'dynamicSplitcxIBv',
  85. type: 'dynamicSplit',
  86. blocks: [
  87. {
  88. id: '8ZFL8',
  89. blocks: [
  90. {
  91. id: 'enddQN1D',
  92. type: 'end',
  93. },
  94. ],
  95. },
  96. {
  97. id: 'vo83H',
  98. },
  99. ],
  100. },
  101. {
  102. id: 'endT3VLX',
  103. type: 'end',
  104. },
  105. ],
  106. },
  107. {
  108. id: '_sJEq',
  109. },
  110. ],
  111. },
  112. {
  113. id: 'staticSplitHLvrh',
  114. type: 'staticSplit',
  115. blocks: [
  116. {
  117. id: 'fPE-N',
  118. },
  119. {
  120. id: 'ulpHV',
  121. },
  122. ],
  123. },
  124. {
  125. id: 'end_0',
  126. type: 'end',
  127. },
  128. ],
  129. };
  130. export const baseMockNodeEnd: FlowDocumentJSON = {
  131. nodes: [
  132. {
  133. id: 'start_0',
  134. type: 'start',
  135. },
  136. {
  137. id: 'dynamicSplit_0',
  138. type: 'dynamicSplit',
  139. blocks: [
  140. { id: 'block_0', blocks: [{ id: 'noop_0', meta: { isNodeEnd: true }, type: 'end' }] },
  141. { id: 'block_1', blocks: [{ id: 'noop_1', meta: { isNodeEnd: true }, type: 'end' }] },
  142. ],
  143. },
  144. {
  145. id: 'end_0',
  146. type: 'end',
  147. blocks: [],
  148. },
  149. ],
  150. };