@gmb/bitmark-parser-generator 1.35.0 → 2.1.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 (289) hide show
  1. package/dist/browser/bitmark-parser-generator.min.js +1 -1
  2. package/dist/browser/bundle-report.html +2 -2
  3. package/dist/cjs/BitmarkParserGenerator.js +8 -3
  4. package/dist/cjs/BitmarkParserGenerator.js.map +1 -1
  5. package/dist/cjs/ast/Ast.js +1 -0
  6. package/dist/cjs/ast/Ast.js.map +1 -1
  7. package/dist/cjs/ast/BaseBuilder.js +91 -54
  8. package/dist/cjs/ast/BaseBuilder.js.map +1 -1
  9. package/dist/cjs/ast/Builder.js +813 -389
  10. package/dist/cjs/ast/Builder.js.map +1 -1
  11. package/dist/cjs/ast/ResourceBuilder.js +516 -252
  12. package/dist/cjs/ast/ResourceBuilder.js.map +1 -1
  13. package/dist/cjs/ast/rules/NodeValidator.js +61 -22
  14. package/dist/cjs/ast/rules/NodeValidator.js.map +1 -1
  15. package/dist/cjs/breakscaping/Breakscape.js +96 -71
  16. package/dist/cjs/breakscaping/Breakscape.js.map +1 -1
  17. package/dist/cjs/config/raw/bits.js +44 -5
  18. package/dist/cjs/config/raw/bits.js.map +1 -1
  19. package/dist/cjs/config/raw/properties.js +7 -2
  20. package/dist/cjs/config/raw/properties.js.map +1 -1
  21. package/dist/cjs/generated/build-info.js +1 -1
  22. package/dist/cjs/generated/build-info.js.map +1 -1
  23. package/dist/cjs/generated/parser/bitmark/bitmark-peggy-parser.js +1 -0
  24. package/dist/cjs/generated/parser/bitmark/bitmark-peggy-parser.js.map +1 -1
  25. package/dist/cjs/generator/AstWalkerGenerator.js +4 -1
  26. package/dist/cjs/generator/AstWalkerGenerator.js.map +1 -1
  27. package/dist/cjs/generator/bitmark/BitmarkGenerator.js +992 -339
  28. package/dist/cjs/generator/bitmark/BitmarkGenerator.js.map +1 -1
  29. package/dist/cjs/generator/json/JsonGenerator.js +312 -1985
  30. package/dist/cjs/generator/json/JsonGenerator.js.map +1 -1
  31. package/dist/cjs/generator/text/TextGenerator.js +26 -8
  32. package/dist/cjs/generator/text/TextGenerator.js.map +1 -1
  33. package/dist/cjs/index.js.map +1 -1
  34. package/dist/cjs/model/ast/NodeType.js +28 -8
  35. package/dist/cjs/model/ast/NodeType.js.map +1 -1
  36. package/dist/cjs/model/config/enum/PropertyConfigKey.js +1 -0
  37. package/dist/cjs/model/config/enum/PropertyConfigKey.js.map +1 -1
  38. package/dist/cjs/model/enum/BitType.js +2 -2
  39. package/dist/cjs/model/enum/BitType.js.map +1 -1
  40. package/dist/cjs/model/enum/PropertyFormat.js +3 -1
  41. package/dist/cjs/model/enum/PropertyFormat.js.map +1 -1
  42. package/dist/cjs/model/enum/TextFormat.js +1 -1
  43. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserHelper.js +9 -3
  44. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserHelper.js.map +1 -1
  45. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js +49 -131
  46. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  47. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  48. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js +7 -31
  49. package/dist/cjs/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  50. package/dist/cjs/parser/bitmark/peg/contentProcessors/BodyContentProcessor.js +255 -0
  51. package/dist/cjs/parser/bitmark/peg/contentProcessors/BodyContentProcessor.js.map +1 -0
  52. package/dist/cjs/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js +25 -12
  53. package/dist/cjs/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js.map +1 -1
  54. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +175 -129
  55. package/dist/cjs/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  56. package/dist/cjs/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js +8 -2
  57. package/dist/cjs/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js.map +1 -1
  58. package/dist/cjs/parser/bitmark/peg/contentProcessors/ContentProcessorUtils.js +61 -0
  59. package/dist/cjs/parser/bitmark/peg/contentProcessors/ContentProcessorUtils.js.map +1 -0
  60. package/dist/cjs/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js +11 -5
  61. package/dist/cjs/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js.map +1 -1
  62. package/dist/cjs/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js +21 -17
  63. package/dist/cjs/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js.map +1 -1
  64. package/dist/cjs/parser/bitmark/peg/contentProcessors/FooterContentProcessor.js +50 -0
  65. package/dist/cjs/parser/bitmark/peg/contentProcessors/FooterContentProcessor.js.map +1 -0
  66. package/dist/cjs/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.js +2 -15
  67. package/dist/cjs/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.js.map +1 -1
  68. package/dist/cjs/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js +2 -4
  69. package/dist/cjs/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js.map +1 -1
  70. package/dist/cjs/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.js +4 -1
  71. package/dist/cjs/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.js.map +1 -1
  72. package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.js +2 -4
  73. package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.js.map +1 -1
  74. package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js +5 -5
  75. package/dist/cjs/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js.map +1 -1
  76. package/dist/cjs/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js +5 -6
  77. package/dist/cjs/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js.map +1 -1
  78. package/dist/cjs/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js +23 -7
  79. package/dist/cjs/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js.map +1 -1
  80. package/dist/cjs/parser/bitmark/peg/contentProcessors/RatingLevelChainContentProcessor.js +5 -5
  81. package/dist/cjs/parser/bitmark/peg/contentProcessors/RatingLevelChainContentProcessor.js.map +1 -1
  82. package/dist/cjs/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js +3 -2
  83. package/dist/cjs/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js.map +1 -1
  84. package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js +19 -8
  85. package/dist/cjs/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
  86. package/dist/cjs/parser/bitmark/peg/contentProcessors/ServingsChainContentProcessor.js +4 -6
  87. package/dist/cjs/parser/bitmark/peg/contentProcessors/ServingsChainContentProcessor.js.map +1 -1
  88. package/dist/cjs/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js +4 -5
  89. package/dist/cjs/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js.map +1 -1
  90. package/dist/cjs/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js +14 -5
  91. package/dist/cjs/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js.map +1 -1
  92. package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js +37 -21
  93. package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js.map +1 -1
  94. package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js +3 -2
  95. package/dist/cjs/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js.map +1 -1
  96. package/dist/cjs/parser/json/JsonParser.js +73 -765
  97. package/dist/cjs/parser/json/JsonParser.js.map +1 -1
  98. package/dist/cjs/parser/text/TextParser.js +61 -2
  99. package/dist/cjs/parser/text/TextParser.js.map +1 -1
  100. package/dist/cjs/utils/BitUtils.js +15 -13
  101. package/dist/cjs/utils/BitUtils.js.map +1 -1
  102. package/dist/esm/BitmarkParserGenerator.js +8 -3
  103. package/dist/esm/BitmarkParserGenerator.js.map +1 -1
  104. package/dist/esm/ast/Ast.js +1 -0
  105. package/dist/esm/ast/Ast.js.map +1 -1
  106. package/dist/esm/ast/BaseBuilder.js +91 -54
  107. package/dist/esm/ast/BaseBuilder.js.map +1 -1
  108. package/dist/esm/ast/Builder.js +813 -389
  109. package/dist/esm/ast/Builder.js.map +1 -1
  110. package/dist/esm/ast/ResourceBuilder.js +516 -252
  111. package/dist/esm/ast/ResourceBuilder.js.map +1 -1
  112. package/dist/esm/ast/rules/NodeValidator.js +61 -22
  113. package/dist/esm/ast/rules/NodeValidator.js.map +1 -1
  114. package/dist/esm/breakscaping/Breakscape.js +96 -71
  115. package/dist/esm/breakscaping/Breakscape.js.map +1 -1
  116. package/dist/esm/config/raw/bits.js +44 -5
  117. package/dist/esm/config/raw/bits.js.map +1 -1
  118. package/dist/esm/config/raw/properties.js +7 -2
  119. package/dist/esm/config/raw/properties.js.map +1 -1
  120. package/dist/esm/generated/build-info.js +1 -1
  121. package/dist/esm/generated/build-info.js.map +1 -1
  122. package/dist/esm/generated/parser/bitmark/bitmark-peggy-parser.js +1 -0
  123. package/dist/esm/generated/parser/bitmark/bitmark-peggy-parser.js.map +1 -1
  124. package/dist/esm/generator/AstWalkerGenerator.js +4 -1
  125. package/dist/esm/generator/AstWalkerGenerator.js.map +1 -1
  126. package/dist/esm/generator/bitmark/BitmarkGenerator.js +992 -339
  127. package/dist/esm/generator/bitmark/BitmarkGenerator.js.map +1 -1
  128. package/dist/esm/generator/json/JsonGenerator.js +312 -1985
  129. package/dist/esm/generator/json/JsonGenerator.js.map +1 -1
  130. package/dist/esm/generator/text/TextGenerator.js +26 -8
  131. package/dist/esm/generator/text/TextGenerator.js.map +1 -1
  132. package/dist/esm/index.js.map +1 -1
  133. package/dist/esm/model/ast/NodeType.js +28 -8
  134. package/dist/esm/model/ast/NodeType.js.map +1 -1
  135. package/dist/esm/model/config/enum/PropertyConfigKey.js +1 -0
  136. package/dist/esm/model/config/enum/PropertyConfigKey.js.map +1 -1
  137. package/dist/esm/model/enum/BitType.js +2 -2
  138. package/dist/esm/model/enum/BitType.js.map +1 -1
  139. package/dist/esm/model/enum/PropertyFormat.js +3 -1
  140. package/dist/esm/model/enum/PropertyFormat.js.map +1 -1
  141. package/dist/esm/model/enum/TextFormat.js +1 -1
  142. package/dist/esm/parser/bitmark/peg/BitmarkPegParserHelper.js +9 -3
  143. package/dist/esm/parser/bitmark/peg/BitmarkPegParserHelper.js.map +1 -1
  144. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js +49 -131
  145. package/dist/esm/parser/bitmark/peg/BitmarkPegParserProcessor.js.map +1 -1
  146. package/dist/esm/parser/bitmark/peg/BitmarkPegParserTypes.js.map +1 -1
  147. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js +7 -31
  148. package/dist/esm/parser/bitmark/peg/BitmarkPegParserValidator.js.map +1 -1
  149. package/dist/esm/parser/bitmark/peg/contentProcessors/BodyContentProcessor.js +252 -0
  150. package/dist/esm/parser/bitmark/peg/contentProcessors/BodyContentProcessor.js.map +1 -0
  151. package/dist/esm/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js +25 -12
  152. package/dist/esm/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.js.map +1 -1
  153. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js +175 -129
  154. package/dist/esm/parser/bitmark/peg/contentProcessors/CardContentProcessor.js.map +1 -1
  155. package/dist/esm/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js +8 -2
  156. package/dist/esm/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.js.map +1 -1
  157. package/dist/esm/parser/bitmark/peg/contentProcessors/ContentProcessorUtils.js +58 -0
  158. package/dist/esm/parser/bitmark/peg/contentProcessors/ContentProcessorUtils.js.map +1 -0
  159. package/dist/esm/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js +11 -5
  160. package/dist/esm/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.js.map +1 -1
  161. package/dist/esm/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js +21 -17
  162. package/dist/esm/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.js.map +1 -1
  163. package/dist/esm/parser/bitmark/peg/contentProcessors/FooterContentProcessor.js +47 -0
  164. package/dist/esm/parser/bitmark/peg/contentProcessors/FooterContentProcessor.js.map +1 -0
  165. package/dist/esm/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.js +2 -15
  166. package/dist/esm/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.js.map +1 -1
  167. package/dist/esm/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js +2 -4
  168. package/dist/esm/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.js.map +1 -1
  169. package/dist/esm/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.js +4 -1
  170. package/dist/esm/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.js.map +1 -1
  171. package/dist/esm/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.js +2 -4
  172. package/dist/esm/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.js.map +1 -1
  173. package/dist/esm/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js +5 -5
  174. package/dist/esm/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.js.map +1 -1
  175. package/dist/esm/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js +5 -6
  176. package/dist/esm/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.js.map +1 -1
  177. package/dist/esm/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js +23 -7
  178. package/dist/esm/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.js.map +1 -1
  179. package/dist/esm/parser/bitmark/peg/contentProcessors/RatingLevelChainContentProcessor.js +5 -5
  180. package/dist/esm/parser/bitmark/peg/contentProcessors/RatingLevelChainContentProcessor.js.map +1 -1
  181. package/dist/esm/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js +3 -2
  182. package/dist/esm/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.js.map +1 -1
  183. package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js +19 -8
  184. package/dist/esm/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.js.map +1 -1
  185. package/dist/esm/parser/bitmark/peg/contentProcessors/ServingsChainContentProcessor.js +4 -6
  186. package/dist/esm/parser/bitmark/peg/contentProcessors/ServingsChainContentProcessor.js.map +1 -1
  187. package/dist/esm/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js +4 -5
  188. package/dist/esm/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.js.map +1 -1
  189. package/dist/esm/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js +14 -5
  190. package/dist/esm/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.js.map +1 -1
  191. package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js +37 -21
  192. package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.js.map +1 -1
  193. package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js +3 -2
  194. package/dist/esm/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.js.map +1 -1
  195. package/dist/esm/parser/json/JsonParser.js +73 -765
  196. package/dist/esm/parser/json/JsonParser.js.map +1 -1
  197. package/dist/esm/parser/text/TextParser.js +61 -2
  198. package/dist/esm/parser/text/TextParser.js.map +1 -1
  199. package/dist/esm/utils/BitUtils.js +15 -13
  200. package/dist/esm/utils/BitUtils.js.map +1 -1
  201. package/dist/types/BitmarkParserGenerator.d.ts +8 -0
  202. package/dist/types/BitmarkParserGenerator.d.ts.map +1 -1
  203. package/dist/types/ast/Ast.d.ts.map +1 -1
  204. package/dist/types/ast/BaseBuilder.d.ts +31 -21
  205. package/dist/types/ast/BaseBuilder.d.ts.map +1 -1
  206. package/dist/types/ast/Builder.d.ts +293 -441
  207. package/dist/types/ast/Builder.d.ts.map +1 -1
  208. package/dist/types/ast/ResourceBuilder.d.ts +177 -164
  209. package/dist/types/ast/ResourceBuilder.d.ts.map +1 -1
  210. package/dist/types/ast/rules/NodeValidator.d.ts +3 -2
  211. package/dist/types/ast/rules/NodeValidator.d.ts.map +1 -1
  212. package/dist/types/breakscaping/Breakscape.d.ts +6 -5
  213. package/dist/types/breakscaping/Breakscape.d.ts.map +1 -1
  214. package/dist/types/config/raw/bits.d.ts.map +1 -1
  215. package/dist/types/config/raw/properties.d.ts.map +1 -1
  216. package/dist/types/generated/parser/bitmark/bitmark-peggy-parser.d.ts.map +1 -1
  217. package/dist/types/generator/AstWalkerGenerator.d.ts.map +1 -1
  218. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts +92 -55
  219. package/dist/types/generator/bitmark/BitmarkGenerator.d.ts.map +1 -1
  220. package/dist/types/generator/json/JsonGenerator.d.ts +89 -108
  221. package/dist/types/generator/json/JsonGenerator.d.ts.map +1 -1
  222. package/dist/types/generator/text/TextGenerator.d.ts +14 -2
  223. package/dist/types/generator/text/TextGenerator.d.ts.map +1 -1
  224. package/dist/types/index.d.ts +2 -2
  225. package/dist/types/index.d.ts.map +1 -1
  226. package/dist/types/model/ast/NodeType.d.ts +50 -16
  227. package/dist/types/model/ast/NodeType.d.ts.map +1 -1
  228. package/dist/types/model/ast/Nodes.d.ts +64 -440
  229. package/dist/types/model/ast/Nodes.d.ts.map +1 -1
  230. package/dist/types/model/config/enum/ConfigKey.d.ts +2 -0
  231. package/dist/types/model/config/enum/ConfigKey.d.ts.map +1 -1
  232. package/dist/types/model/config/enum/PropertyConfigKey.d.ts +3 -0
  233. package/dist/types/model/config/enum/PropertyConfigKey.d.ts.map +1 -1
  234. package/dist/types/model/enum/BitType.d.ts +4 -4
  235. package/dist/types/model/enum/PropertyFormat.d.ts +4 -2
  236. package/dist/types/model/enum/PropertyFormat.d.ts.map +1 -1
  237. package/dist/types/model/enum/PropertyTag.d.ts +2 -0
  238. package/dist/types/model/enum/PropertyTag.d.ts.map +1 -1
  239. package/dist/types/model/json/BitJson.d.ts +38 -21
  240. package/dist/types/model/json/BitJson.d.ts.map +1 -1
  241. package/dist/types/model/json/BodyBitJson.d.ts +16 -12
  242. package/dist/types/model/json/BodyBitJson.d.ts.map +1 -1
  243. package/dist/types/model/json/ResourceJson.d.ts +2 -22
  244. package/dist/types/model/json/ResourceJson.d.ts.map +1 -1
  245. package/dist/types/parser/bitmark/peg/BitmarkPegParserHelper.d.ts +3 -2
  246. package/dist/types/parser/bitmark/peg/BitmarkPegParserHelper.d.ts.map +1 -1
  247. package/dist/types/parser/bitmark/peg/BitmarkPegParserProcessor.d.ts +2 -15
  248. package/dist/types/parser/bitmark/peg/BitmarkPegParserProcessor.d.ts.map +1 -1
  249. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts +83 -71
  250. package/dist/types/parser/bitmark/peg/BitmarkPegParserTypes.d.ts.map +1 -1
  251. package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts +2 -2
  252. package/dist/types/parser/bitmark/peg/BitmarkPegParserValidator.d.ts.map +1 -1
  253. package/dist/types/parser/bitmark/peg/contentProcessors/BodyContentProcessor.d.ts +37 -0
  254. package/dist/types/parser/bitmark/peg/contentProcessors/BodyContentProcessor.d.ts.map +1 -0
  255. package/dist/types/parser/bitmark/peg/contentProcessors/BookChainContentProcessor.d.ts.map +1 -1
  256. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts +2 -2
  257. package/dist/types/parser/bitmark/peg/contentProcessors/CardContentProcessor.d.ts.map +1 -1
  258. package/dist/types/parser/bitmark/peg/contentProcessors/ClozeTagContentProcessor.d.ts.map +1 -1
  259. package/dist/types/parser/bitmark/peg/contentProcessors/ContentProcessorUtils.d.ts +15 -0
  260. package/dist/types/parser/bitmark/peg/contentProcessors/ContentProcessorUtils.d.ts.map +1 -0
  261. package/dist/types/parser/bitmark/peg/contentProcessors/DefaultTagContentProcessor.d.ts.map +1 -1
  262. package/dist/types/parser/bitmark/peg/contentProcessors/ExampleTagContentProcessor.d.ts.map +1 -1
  263. package/dist/types/parser/bitmark/peg/contentProcessors/FooterContentProcessor.d.ts +16 -0
  264. package/dist/types/parser/bitmark/peg/contentProcessors/FooterContentProcessor.d.ts.map +1 -0
  265. package/dist/types/parser/bitmark/peg/contentProcessors/GapChainContentProcessor.d.ts.map +1 -1
  266. package/dist/types/parser/bitmark/peg/contentProcessors/ImageSourceChainContentProcessor.d.ts.map +1 -1
  267. package/dist/types/parser/bitmark/peg/contentProcessors/ItemLeadTagContentProcessor.d.ts.map +1 -1
  268. package/dist/types/parser/bitmark/peg/contentProcessors/MarkChainContentProcessor.d.ts.map +1 -1
  269. package/dist/types/parser/bitmark/peg/contentProcessors/MarkConfigChainContentProcessor.d.ts.map +1 -1
  270. package/dist/types/parser/bitmark/peg/contentProcessors/PersonChainContentProcessor.d.ts.map +1 -1
  271. package/dist/types/parser/bitmark/peg/contentProcessors/PropertyContentProcessor.d.ts.map +1 -1
  272. package/dist/types/parser/bitmark/peg/contentProcessors/RatingLevelChainContentProcessor.d.ts.map +1 -1
  273. package/dist/types/parser/bitmark/peg/contentProcessors/ReferenceTagContentProcessor.d.ts.map +1 -1
  274. package/dist/types/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.d.ts +2 -2
  275. package/dist/types/parser/bitmark/peg/contentProcessors/ResourceContentProcessor.d.ts.map +1 -1
  276. package/dist/types/parser/bitmark/peg/contentProcessors/ServingsChainContentProcessor.d.ts.map +1 -1
  277. package/dist/types/parser/bitmark/peg/contentProcessors/TechnicalTermChainContentProcessor.d.ts.map +1 -1
  278. package/dist/types/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.d.ts +5 -2
  279. package/dist/types/parser/bitmark/peg/contentProcessors/TitleTagContentProcessor.d.ts.map +1 -1
  280. package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.d.ts +1 -1
  281. package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseChainContentProcessor.d.ts.map +1 -1
  282. package/dist/types/parser/bitmark/peg/contentProcessors/TrueFalseTagContentProcessor.d.ts.map +1 -1
  283. package/dist/types/parser/json/JsonParser.d.ts +9 -72
  284. package/dist/types/parser/json/JsonParser.d.ts.map +1 -1
  285. package/dist/types/parser/text/TextParser.d.ts +16 -1
  286. package/dist/types/parser/text/TextParser.d.ts.map +1 -1
  287. package/dist/types/utils/BitUtils.d.ts +8 -8
  288. package/dist/types/utils/BitUtils.d.ts.map +1 -1
  289. package/package.json +1 -1
@@ -1,22 +1,26 @@
1
- import { BreakscapedString } from '../model/ast/BreakscapedString';
1
+ import { Bit, BitmarkAst, Body, CardBit, Footer } from '../model/ast/Nodes';
2
+ import { JsonText } from '../model/ast/TextNodes';
2
3
  import { BitTypeType } from '../model/enum/BitType';
3
4
  import { ResourceTagType } from '../model/enum/ResourceTag';
4
5
  import { TextFormatType } from '../model/enum/TextFormat';
6
+ import { ImageResourceWrapperJson, ResourceJson } from '../model/json/ResourceJson';
5
7
  import { ParserError } from '../model/parser/ParserError';
6
8
  import { ParserInfo } from '../model/parser/ParserInfo';
7
9
  import { BaseBuilder } from './BaseBuilder';
8
- import { Bit, BitmarkAst, Resource, Body, Statement, Response, Quiz, Heading, Pair, Matrix, Choice, Question, AudioResource, ImageResource, MatrixCell, Gap, SelectOption, Select, HighlightText, Highlight, BotResponse, Person, BodyText, BodyPart, Mark, MarkConfig, Example, Flashcard, ImageSource, CardBit, Ingredient, TechnicalTerm, Table, Servings, RatingLevelStartEnd, CaptionDefinition, CaptionDefinitionList, Footer, FooterText, DefinitionListItem } from '../model/ast/Nodes';
10
+ import { BookJson, BotResponseJson, CaptionDefinitionJson, CaptionDefinitionListJson, ChoiceJson, DefinitionListItemJson, ExampleJson, FlashcardJson, HeadingJson, ImageSourceJson, IngredientJson, MarkConfigJson, MatrixCellJson, MatrixJson, PairJson, PersonJson, QuestionJson, QuizJson, RatingLevelStartEndJson, ResponseJson, ServingsJson, StatementJson, TableJson, TechnicalTermJson } from '../model/json/BitJson';
11
+ import { GapJson, HighlightJson, HighlightTextJson, MarkJson, SelectJson, SelectOptionJson } from '../model/json/BodyBitJson';
9
12
  /**
10
13
  * Builder to build bitmark AST node programmatically
11
14
  */
12
15
  declare class Builder extends BaseBuilder {
16
+ private resourceBuilder;
13
17
  /**
14
18
  * Build bitmark node
15
19
  *
16
20
  * @param data - data for the node
17
21
  * @returns
18
22
  */
19
- bitmark(data: {
23
+ buildBitmark(data: {
20
24
  bits?: Bit[];
21
25
  errors?: ParserError[];
22
26
  }): BitmarkAst;
@@ -26,74 +30,74 @@ declare class Builder extends BaseBuilder {
26
30
  * @param data - data for the node
27
31
  * @returns
28
32
  */
29
- bit(data: {
33
+ buildBit(data: {
30
34
  bitType: BitTypeType;
31
35
  bitLevel: number;
32
36
  textFormat?: TextFormatType;
33
37
  resourceType?: ResourceTagType;
34
38
  isCommented?: boolean;
35
- id?: BreakscapedString | BreakscapedString[];
36
- internalComment?: BreakscapedString | BreakscapedString[];
37
- externalId?: BreakscapedString | BreakscapedString[];
38
- spaceId?: BreakscapedString | BreakscapedString[];
39
- padletId?: BreakscapedString;
40
- jupyterId?: BreakscapedString;
39
+ id?: string | string[];
40
+ internalComment?: string | string[];
41
+ externalId?: string | string[];
42
+ spaceId?: string | string[];
43
+ padletId?: string;
44
+ jupyterId?: string;
41
45
  jupyterExecutionCount?: number;
42
46
  isPublic?: boolean;
43
47
  aiGenerated?: boolean;
44
- machineTranslated?: BreakscapedString;
45
- analyticsTag?: BreakscapedString | BreakscapedString[];
46
- feedbackEngine?: BreakscapedString;
47
- feedbackType?: BreakscapedString;
48
+ machineTranslated?: string;
49
+ analyticsTag?: string | string[];
50
+ feedbackEngine?: string;
51
+ feedbackType?: string;
48
52
  disableFeedback?: boolean;
49
- releaseVersion?: BreakscapedString;
50
- releaseKind?: BreakscapedString;
51
- releaseDate?: BreakscapedString;
53
+ releaseVersion?: string;
54
+ releaseKind?: string;
55
+ releaseDate?: string;
52
56
  ageRange?: number | number[];
53
- lang?: BreakscapedString;
54
- language?: BreakscapedString | BreakscapedString[];
55
- publisher?: BreakscapedString | BreakscapedString[];
56
- publisherName?: BreakscapedString;
57
- theme?: BreakscapedString | BreakscapedString[];
58
- computerLanguage?: BreakscapedString;
59
- target?: BreakscapedString | BreakscapedString[];
60
- slug?: BreakscapedString;
61
- tag?: BreakscapedString | BreakscapedString[];
62
- reductionTag?: BreakscapedString | BreakscapedString[];
63
- bubbleTag?: BreakscapedString | BreakscapedString[];
64
- levelCEFRp?: BreakscapedString | BreakscapedString[];
65
- levelCEFR?: BreakscapedString | BreakscapedString[];
66
- levelILR?: BreakscapedString | BreakscapedString[];
67
- levelACTFL?: BreakscapedString | BreakscapedString[];
68
- icon?: BreakscapedString;
69
- iconTag?: BreakscapedString;
70
- colorTag?: BreakscapedString | BreakscapedString[];
71
- flashcardSet?: BreakscapedString | BreakscapedString[];
72
- subtype?: BreakscapedString;
73
- bookAlias?: BreakscapedString | BreakscapedString[];
74
- coverImage?: BreakscapedString | BreakscapedString[];
75
- coverColor?: BreakscapedString;
76
- publications?: BreakscapedString | BreakscapedString[];
77
- author?: BreakscapedString | BreakscapedString[];
78
- subject?: BreakscapedString | BreakscapedString[];
79
- date?: BreakscapedString;
80
- dateEnd?: BreakscapedString;
81
- location?: BreakscapedString;
82
- kind?: BreakscapedString;
57
+ lang?: string;
58
+ language?: string | string[];
59
+ publisher?: string | string[];
60
+ publisherName?: string;
61
+ theme?: string | string[];
62
+ computerLanguage?: string;
63
+ target?: string | string[];
64
+ slug?: string;
65
+ tag?: string | string[];
66
+ reductionTag?: string | string[];
67
+ bubbleTag?: string | string[];
68
+ levelCEFRp?: string | string[];
69
+ levelCEFR?: string | string[];
70
+ levelILR?: string | string[];
71
+ levelACTFL?: string | string[];
72
+ icon?: string;
73
+ iconTag?: string;
74
+ colorTag?: string | string[];
75
+ flashcardSet?: string | string[];
76
+ subtype?: string;
77
+ bookAlias?: string | string[];
78
+ coverImage?: string | string[];
79
+ coverColor?: string;
80
+ publications?: string | string[];
81
+ author?: string | string[];
82
+ subject?: string | string[];
83
+ date?: string;
84
+ dateEnd?: string;
85
+ location?: string;
86
+ kind?: string;
83
87
  hasMarkAsDone?: boolean;
84
88
  processHandIn?: boolean;
85
- action?: BreakscapedString;
89
+ action?: string;
86
90
  showInIndex?: boolean;
87
- blockId?: BreakscapedString;
91
+ blockId?: string;
88
92
  pageNo?: number;
89
93
  x?: number;
90
94
  y?: number;
91
95
  width?: string;
92
96
  height?: string;
93
97
  index?: number;
94
- classification?: BreakscapedString;
95
- availableClassifications?: BreakscapedString | BreakscapedString[];
96
- allowedBit?: BreakscapedString | BreakscapedString[];
98
+ classification?: string;
99
+ availableClassifications?: string | string[];
100
+ allowedBit?: string | string[];
97
101
  tableFixedHeader?: boolean;
98
102
  tableSearch?: boolean;
99
103
  tableSort?: boolean;
@@ -103,615 +107,463 @@ declare class Builder extends BaseBuilder {
103
107
  tableWhitespaceNoWrap?: boolean;
104
108
  tableAutoWidth?: boolean;
105
109
  tableResizableColumns?: boolean;
110
+ tableColumnMinWidth?: number;
106
111
  quizCountItems?: boolean;
107
112
  quizStrikethroughSolutions?: boolean;
108
113
  codeLineNumbers?: boolean;
109
114
  codeMinimap?: boolean;
110
- stripePricingTableId?: BreakscapedString;
111
- stripePublishableKey?: BreakscapedString;
112
- thumbImage?: BreakscapedString;
113
- scormSource?: BreakscapedString;
114
- posterImage?: BreakscapedString;
115
+ stripePricingTableId?: string;
116
+ stripePublishableKey?: string;
117
+ thumbImage?: string;
118
+ scormSource?: string;
119
+ posterImage?: string;
115
120
  focusX?: number;
116
121
  focusY?: number;
117
- pointerLeft?: BreakscapedString;
118
- pointerTop?: BreakscapedString;
122
+ pointerLeft?: string;
123
+ pointerTop?: string;
119
124
  listItemIndent?: number;
120
- backgroundWallpaper?: BreakscapedString;
125
+ backgroundWallpaper?: string;
121
126
  hasBookNavigation?: boolean;
122
- duration?: BreakscapedString;
123
- referenceProperty?: BreakscapedString | BreakscapedString[];
124
- deeplink?: BreakscapedString | BreakscapedString[];
125
- externalLink?: BreakscapedString;
126
- externalLinkText?: BreakscapedString;
127
- videoCallLink?: BreakscapedString;
128
- vendorUrl?: BreakscapedString;
129
- search?: BreakscapedString;
130
- bot?: BreakscapedString | BreakscapedString[];
131
- list?: BreakscapedString | BreakscapedString[];
132
- textReference?: BreakscapedString;
127
+ duration?: string;
128
+ referenceProperty?: string | string[];
129
+ deeplink?: string | string[];
130
+ externalLink?: string;
131
+ externalLinkText?: string;
132
+ videoCallLink?: string;
133
+ vendorUrl?: string;
134
+ search?: string;
135
+ bot?: string | string[];
136
+ list?: string | string[];
137
+ textReference?: string;
133
138
  isTracked?: boolean;
134
139
  isInfoOnly?: boolean;
135
140
  imageFirst?: boolean;
136
- activityType?: BreakscapedString;
137
- labelTrue?: BreakscapedString;
138
- labelFalse?: BreakscapedString;
139
- content2Buy?: BreakscapedString;
140
- mailingList?: BreakscapedString;
141
- buttonCaption?: BreakscapedString;
142
- callToActionUrl?: BreakscapedString;
143
- caption?: BreakscapedString;
144
- quotedPerson?: BreakscapedString;
141
+ activityType?: string;
142
+ labelTrue?: string;
143
+ labelFalse?: string;
144
+ content2Buy?: string;
145
+ mailingList?: string;
146
+ buttonCaption?: string;
147
+ callToActionUrl?: string;
148
+ caption?: JsonText;
149
+ quotedPerson?: string;
145
150
  reasonableNumOfChars?: number;
146
151
  resolved?: boolean;
147
- resolvedDate?: BreakscapedString;
148
- resolvedBy?: BreakscapedString;
152
+ resolvedDate?: string;
153
+ resolvedBy?: string;
149
154
  maxCreatedBits?: number;
150
155
  maxDisplayLevel?: number;
151
- page?: BreakscapedString | BreakscapedString[];
152
- productId?: BreakscapedString | BreakscapedString[];
153
- product?: BreakscapedString | BreakscapedString[];
154
- productList?: BreakscapedString | BreakscapedString[];
155
- productVideo?: BreakscapedString | BreakscapedString[];
156
- productVideoList?: BreakscapedString | BreakscapedString[];
157
- productFolder?: BreakscapedString;
158
- technicalTerm?: TechnicalTerm;
159
- servings?: Servings;
160
- ratingLevelStart?: RatingLevelStartEnd;
161
- ratingLevelEnd?: RatingLevelStartEnd;
156
+ page?: string | string[];
157
+ productId?: string | string[];
158
+ product?: string | string[];
159
+ productList?: string | string[];
160
+ productVideo?: string | string[];
161
+ productVideoList?: string | string[];
162
+ productFolder?: string;
163
+ technicalTerm?: Partial<TechnicalTermJson>;
164
+ servings?: Partial<ServingsJson>;
165
+ ratingLevelStart?: Partial<RatingLevelStartEndJson>;
166
+ ratingLevelEnd?: Partial<RatingLevelStartEndJson>;
162
167
  ratingLevelSelected?: number;
163
- partialAnswer?: BreakscapedString;
164
- book?: BreakscapedString;
165
- title?: BreakscapedString;
166
- subtitle?: BreakscapedString;
167
- level?: number | BreakscapedString;
168
+ partialAnswer?: string;
169
+ book?: string | BookJson[];
170
+ title?: JsonText;
171
+ subtitle?: JsonText;
172
+ level?: number | string;
168
173
  toc?: boolean;
169
174
  progress?: boolean;
170
- anchor?: BreakscapedString;
171
- reference?: BreakscapedString;
172
- referenceEnd?: BreakscapedString;
175
+ anchor?: string;
176
+ reference?: string;
177
+ referenceEnd?: string;
173
178
  isCaseSensitive?: boolean;
174
- item?: BreakscapedString;
175
- lead?: BreakscapedString;
176
- pageNumber?: BreakscapedString;
177
- marginNumber?: BreakscapedString;
178
- hint?: BreakscapedString;
179
- instruction?: BreakscapedString;
180
- isDefaultExample?: boolean;
181
- example?: Example;
182
- imageSource?: ImageSource;
183
- person?: Person;
179
+ item?: JsonText;
180
+ lead?: JsonText;
181
+ pageNumber?: JsonText;
182
+ marginNumber?: JsonText;
183
+ hint?: JsonText;
184
+ instruction?: JsonText;
185
+ example?: Partial<ExampleJson>;
186
+ imageSource?: Partial<ImageSourceJson>;
187
+ person?: Partial<PersonJson>;
184
188
  extraProperties?: {
185
189
  [key: string]: unknown | unknown[];
186
190
  };
187
- markConfig?: MarkConfig[];
188
- imagePlaceholder?: ImageResource;
189
- resources?: Resource | Resource[];
190
- body?: Body;
191
- sampleSolution?: BreakscapedString;
192
- additionalSolutions?: BreakscapedString | BreakscapedString[];
193
- elements?: BreakscapedString[];
194
- flashcards?: Flashcard[];
195
- definitions?: DefinitionListItem[];
196
- statement?: Statement;
197
- statements?: Statement[];
198
- responses?: Response[];
199
- quizzes?: Quiz[];
200
- heading?: Heading;
201
- pairs?: Pair[];
202
- matrix?: Matrix[];
203
- table?: Table;
204
- choices?: Choice[];
205
- questions?: Question[];
206
- botResponses?: BotResponse[];
207
- ingredients?: Ingredient[];
208
- captionDefinitionList?: CaptionDefinitionList;
209
- cardBits?: CardBit[];
210
- footer?: Footer;
191
+ markConfig?: Partial<MarkConfigJson>[];
192
+ imagePlaceholder?: Partial<ImageResourceWrapperJson>;
193
+ resources?: Partial<ResourceJson> | Partial<ResourceJson>[];
194
+ body?: Partial<Body>;
195
+ sampleSolution?: string;
196
+ additionalSolutions?: string | string[];
197
+ elements?: string[];
198
+ flashcards?: Partial<FlashcardJson>[];
199
+ definitions?: Partial<DefinitionListItemJson>[];
200
+ statement?: Partial<StatementJson>;
201
+ statements?: Partial<StatementJson>[];
202
+ responses?: Partial<ResponseJson>[];
203
+ quizzes?: Partial<QuizJson>[];
204
+ heading?: Partial<HeadingJson>;
205
+ pairs?: Partial<PairJson>[];
206
+ matrix?: Partial<MatrixJson>[];
207
+ table?: Partial<TableJson>;
208
+ choices?: Partial<ChoiceJson>[];
209
+ questions?: Partial<QuestionJson>[];
210
+ botResponses?: Partial<BotResponseJson>[];
211
+ ingredients?: Partial<IngredientJson>[];
212
+ captionDefinitionList?: Partial<CaptionDefinitionListJson>;
213
+ cardBits?: Partial<CardBit>[];
214
+ footer?: Partial<Footer>;
211
215
  markup?: string;
212
216
  parser?: ParserInfo;
217
+ __isDefaultExample?: boolean;
213
218
  }): Bit | undefined;
219
+ /**
220
+ * Build books[] node
221
+ *
222
+ * @param data - data for the node
223
+ * @returns
224
+ */
225
+ protected buildBooks(data: Partial<BookJson>[] | string | undefined): BookJson[] | string | undefined;
214
226
  /**
215
227
  * Build choice node
216
228
  *
217
229
  * @param data - data for the node
218
230
  * @returns
219
231
  */
220
- choice(data: {
221
- text: BreakscapedString;
222
- isCorrect: boolean;
223
- item?: BreakscapedString;
224
- lead?: BreakscapedString;
225
- pageNumber?: BreakscapedString;
226
- marginNumber?: BreakscapedString;
227
- hint?: BreakscapedString;
228
- instruction?: BreakscapedString;
229
- isDefaultExample?: boolean;
230
- example?: Example;
231
- }): Choice;
232
+ protected buildBook(data: Partial<BookJson> | undefined): BookJson | undefined;
233
+ /**
234
+ * Build choice[] node
235
+ *
236
+ * @param data - data for the node
237
+ * @returns
238
+ */
239
+ protected buildChoices(data: Partial<ChoiceJson>[] | undefined): ChoiceJson[] | undefined;
240
+ /**
241
+ * Build choice node
242
+ *
243
+ * @param data - data for the node
244
+ * @returns
245
+ */
246
+ protected buildChoice(data: Partial<ChoiceJson> | undefined): ChoiceJson | undefined;
247
+ /**
248
+ * Build response[] node
249
+ *
250
+ * @param data - data for the node
251
+ * @returns
252
+ */
253
+ protected buildResponses(data: Partial<ResponseJson>[] | undefined): ResponseJson[] | undefined;
232
254
  /**
233
255
  * Build response node
234
256
  *
235
257
  * @param data - data for the node
236
258
  * @returns
237
259
  */
238
- response(data: {
239
- text: BreakscapedString;
240
- isCorrect: boolean;
241
- item?: BreakscapedString;
242
- lead?: BreakscapedString;
243
- pageNumber?: BreakscapedString;
244
- marginNumber?: BreakscapedString;
245
- hint?: BreakscapedString;
246
- instruction?: BreakscapedString;
247
- isDefaultExample?: boolean;
248
- example?: Example;
249
- }): Response;
260
+ protected buildResponse(data: Partial<ResponseJson> | undefined): ResponseJson | undefined;
261
+ /**
262
+ * Build bot response[] node
263
+ *
264
+ * @param data - data for the node
265
+ * @returns
266
+ */
267
+ protected buildBotResponses(data: Partial<BotResponseJson>[] | undefined): BotResponseJson[] | undefined;
250
268
  /**
251
269
  * Build bot response node
252
270
  *
253
271
  * @param data - data for the node
254
272
  * @returns
255
273
  */
256
- botResponse(data: {
257
- response: BreakscapedString;
258
- reaction: BreakscapedString;
259
- feedback: BreakscapedString;
260
- item?: BreakscapedString;
261
- lead?: BreakscapedString;
262
- pageNumber?: BreakscapedString;
263
- marginNumber?: BreakscapedString;
264
- hint?: BreakscapedString;
265
- }): BotResponse;
274
+ protected botResponse(data: Partial<BotResponseJson> | undefined): BotResponseJson | undefined;
275
+ /**
276
+ * Build quiz[] node
277
+ *
278
+ * @param data - data for the node
279
+ * @returns
280
+ */
281
+ protected buildQuizzes(data: Partial<QuizJson>[] | undefined): QuizJson[] | undefined;
266
282
  /**
267
283
  * Build quiz node
268
284
  *
269
285
  * @param data - data for the node
270
286
  * @returns
271
287
  */
272
- quiz(data: {
273
- item?: BreakscapedString;
274
- lead?: BreakscapedString;
275
- pageNumber?: BreakscapedString;
276
- marginNumber?: BreakscapedString;
277
- hint?: BreakscapedString;
278
- instruction?: BreakscapedString;
279
- isDefaultExample?: boolean;
280
- example?: Example;
281
- choices?: Choice[];
282
- responses?: Response[];
283
- }): Quiz;
288
+ protected buildQuiz(data: Partial<QuizJson> | undefined): QuizJson | undefined;
284
289
  /**
285
290
  * Build heading node
286
291
  *
287
292
  * @param data - data for the node
288
293
  * @returns
289
294
  */
290
- heading(data: {
291
- forKeys: BreakscapedString;
292
- forValues: BreakscapedString | BreakscapedString[];
293
- }): Heading | undefined;
295
+ protected buildHeading(data: Partial<HeadingJson> | undefined): HeadingJson | undefined;
296
+ /**
297
+ * Build pair[] node
298
+ *
299
+ * @param data - data for the node
300
+ * @returns
301
+ */
302
+ protected buildPairs(bitType: BitTypeType, data: Partial<PairJson>[] | undefined): PairJson[] | undefined;
294
303
  /**
295
304
  * Build pair node
296
305
  *
297
306
  * @param data - data for the node
298
307
  * @returns
299
308
  */
300
- pair(data: {
301
- key?: BreakscapedString;
302
- keyAudio?: AudioResource;
303
- keyImage?: ImageResource;
304
- values: BreakscapedString[];
305
- item?: BreakscapedString;
306
- lead?: BreakscapedString;
307
- pageNumber?: BreakscapedString;
308
- marginNumber?: BreakscapedString;
309
- hint?: BreakscapedString;
310
- instruction?: BreakscapedString;
311
- isCaseSensitive?: boolean;
312
- isDefaultExample?: boolean;
313
- example?: Example;
314
- }): Pair;
309
+ protected buildPair(bitType: BitTypeType, data: Partial<PairJson> | undefined): PairJson | undefined;
310
+ /**
311
+ * Build matrix[] node
312
+ *
313
+ * @param data - data for the node
314
+ * @returns
315
+ */
316
+ protected buildMatricies(data: Partial<MatrixJson>[] | undefined): MatrixJson[] | undefined;
315
317
  /**
316
318
  * Build matrix node
317
319
  *
318
320
  * @param data - data for the node
319
321
  * @returns
320
322
  */
321
- matrix(data: {
322
- key: BreakscapedString;
323
- cells: MatrixCell[];
324
- item?: BreakscapedString;
325
- lead?: BreakscapedString;
326
- pageNumber?: BreakscapedString;
327
- marginNumber?: BreakscapedString;
328
- hint?: BreakscapedString;
329
- instruction?: BreakscapedString;
330
- isDefaultExample?: boolean;
331
- }): Matrix;
323
+ protected buildMatrix(data: Partial<MatrixJson> | undefined): MatrixJson | undefined;
332
324
  /**
333
325
  * Build matrixCell node
334
326
  *
335
327
  * @param data - data for the node
336
328
  * @returns
337
329
  */
338
- matrixCell(data: {
339
- values: BreakscapedString[];
340
- item?: BreakscapedString;
341
- lead?: BreakscapedString;
342
- hint?: BreakscapedString;
343
- pageNumber?: BreakscapedString;
344
- marginNumber?: BreakscapedString;
345
- instruction?: BreakscapedString;
346
- isCaseSensitive?: boolean;
347
- isDefaultExample?: boolean;
348
- example?: Example;
349
- }): MatrixCell;
330
+ protected buildMatrixCell(data: Partial<MatrixCellJson> | undefined): MatrixCellJson | undefined;
350
331
  /**
351
332
  * Build table node
352
333
  *
353
334
  * @param data - data for the node
354
335
  * @returns
355
336
  */
356
- table(data: {
357
- columns: BreakscapedString[];
358
- rows: BreakscapedString[][];
359
- }): Table;
337
+ protected buildTable(dataIn: Partial<TableJson> | undefined): TableJson | undefined;
360
338
  /**
361
- * Build question node
339
+ * Build question[] node
362
340
  *
363
341
  * @param data - data for the node
364
342
  * @returns
365
343
  */
366
- question(data: {
367
- question: BreakscapedString;
368
- partialAnswer?: BreakscapedString;
369
- sampleSolution?: BreakscapedString;
370
- additionalSolutions?: BreakscapedString[];
371
- item?: BreakscapedString;
372
- lead?: BreakscapedString;
373
- pageNumber?: BreakscapedString;
374
- marginNumber?: BreakscapedString;
375
- hint?: BreakscapedString;
376
- instruction?: BreakscapedString;
377
- reasonableNumOfChars?: number;
378
- isDefaultExample?: boolean;
379
- example?: Example;
380
- }): Question;
344
+ protected buildQuestions(data: Partial<QuestionJson>[] | undefined): QuestionJson[] | undefined;
381
345
  /**
382
- * Build ingredient node
346
+ * Build question node
383
347
  *
384
348
  * @param data - data for the node
385
349
  * @returns
386
350
  */
387
- ingredient(data: {
388
- title?: BreakscapedString;
389
- checked?: boolean;
390
- item?: BreakscapedString;
391
- quantity?: number;
392
- unit?: BreakscapedString;
393
- unitAbbr?: BreakscapedString;
394
- decimalPlaces?: number;
395
- disableCalculation?: boolean;
396
- }): Ingredient;
351
+ protected buildQuestion(data: Partial<QuestionJson> | undefined): QuestionJson | undefined;
397
352
  /**
398
- * Build body node
353
+ * Build ingredient[] node
399
354
  *
400
355
  * @param data - data for the node
401
356
  * @returns
402
357
  */
403
- body(data: {
404
- bodyParts?: BodyPart[];
405
- bodyJson?: unknown;
406
- }): Body;
358
+ protected buildIngredients(data: Partial<IngredientJson>[] | undefined): IngredientJson[] | undefined;
407
359
  /**
408
- * Build bodyPartText node
360
+ * Build ingredient node
409
361
  *
410
362
  * @param data - data for the node
411
- * @param isPlain - true if plain text, otherwise false
412
363
  * @returns
413
364
  */
414
- bodyText(data: {
415
- text: BreakscapedString;
416
- }, isPlain: boolean): BodyText;
365
+ protected buildIngredient(data: Partial<IngredientJson> | undefined): IngredientJson | undefined;
417
366
  /**
418
- * Build footer node
367
+ * Build body node
368
+ * - Handles JSON, Bitmark text, and plain text
369
+ * - body: set to either string, TextAst, or JSON
370
+ * - bodyBits: set to array of BodyBitJson (will be validated and merged into body if it is a string)
371
+ * - placeholders: set to placeholders from v2 JSON when body is a v2 JSON string
372
+ * - bodyString: set to the original string if body is a string (only used for card body)
419
373
  *
420
374
  * @param data - data for the node
421
375
  * @returns
422
376
  */
423
- footer(data: {
424
- footerParts?: FooterText[];
425
- }): Footer;
377
+ protected buildBody(textFormat: TextFormatType, data: Partial<Body> | undefined): Body | undefined;
426
378
  /**
427
379
  * Build footer node
428
380
  *
429
381
  * @param data - data for the node
430
382
  * @returns
431
383
  */
432
- footerText(data: {
433
- text: BreakscapedString;
434
- }, isPlain: boolean): FooterText;
384
+ protected buildFooter(data: Partial<Footer> | undefined): Footer | undefined;
435
385
  /**
436
386
  * Build gap node
437
387
  *
438
388
  * @param data - data for the node
439
389
  * @returns
440
390
  */
441
- gap(data: {
442
- solutions: BreakscapedString[];
443
- item?: BreakscapedString;
444
- lead?: BreakscapedString;
445
- pageNumber?: BreakscapedString;
446
- marginNumber?: BreakscapedString;
447
- hint?: BreakscapedString;
448
- instruction?: BreakscapedString;
449
- isCaseSensitive?: boolean;
450
- isDefaultExample?: boolean;
451
- example?: Example;
452
- }): Gap;
391
+ protected buildGap(data: Partial<GapJson> | undefined): GapJson | undefined;
392
+ /**
393
+ * Build mark configs node
394
+ *
395
+ * @param data - data for the node
396
+ * @returns
397
+ */
398
+ protected buildMarkConfigs(data: Partial<MarkConfigJson>[] | undefined): MarkConfigJson[] | undefined;
453
399
  /**
454
400
  * Build mark config node
455
401
  *
456
402
  * @param data - data for the node
457
403
  * @returns
458
404
  */
459
- markConfig(data: {
460
- mark: BreakscapedString;
461
- color?: BreakscapedString;
462
- emphasis?: BreakscapedString;
463
- }): MarkConfig;
405
+ protected buildMarkConfig(data: Partial<MarkConfigJson> | undefined): MarkConfigJson | undefined;
464
406
  /**
465
407
  * Build mark node
466
408
  *
467
409
  * @param data - data for the node
468
410
  * @returns
469
411
  */
470
- mark(data: {
471
- solution: BreakscapedString;
472
- mark?: BreakscapedString;
473
- item?: BreakscapedString;
474
- lead?: BreakscapedString;
475
- pageNumber?: BreakscapedString;
476
- marginNumber?: BreakscapedString;
477
- hint?: BreakscapedString;
478
- instruction?: BreakscapedString;
479
- isDefaultExample?: boolean;
480
- example?: BreakscapedString | boolean;
481
- }): Mark;
412
+ protected buildMark(data: Partial<MarkJson> | undefined): MarkJson | undefined;
482
413
  /**
483
414
  * Build select node
484
415
  *
485
416
  * @param data - data for the node
486
417
  * @returns
487
418
  */
488
- select(data: {
489
- options: SelectOption[];
490
- prefix?: BreakscapedString;
491
- postfix?: BreakscapedString;
492
- item?: BreakscapedString;
493
- lead?: BreakscapedString;
494
- pageNumber?: BreakscapedString;
495
- marginNumber?: BreakscapedString;
496
- hint?: BreakscapedString;
497
- instruction?: BreakscapedString;
498
- }): Select;
419
+ protected buildSelect(data: Partial<SelectJson> | undefined): SelectJson | undefined;
420
+ /**
421
+ * Build selectOption[] node
422
+ *
423
+ * @param data - data for the node
424
+ * @returns
425
+ */
426
+ protected buildSelectOptions(data: Partial<SelectOptionJson>[] | undefined): SelectOptionJson[] | undefined;
499
427
  /**
500
428
  * Build selectOption node
501
429
  *
502
430
  * @param data - data for the node
503
431
  * @returns
504
432
  */
505
- selectOption(data: {
506
- text: BreakscapedString;
507
- isCorrect: boolean;
508
- item?: BreakscapedString;
509
- lead?: BreakscapedString;
510
- pageNumber?: BreakscapedString;
511
- marginNumber?: BreakscapedString;
512
- hint?: BreakscapedString;
513
- instruction?: BreakscapedString;
514
- isDefaultExample?: boolean;
515
- example?: Example;
516
- }): SelectOption;
433
+ protected buildSelectOption(data: Partial<SelectOptionJson> | undefined): SelectOptionJson | undefined;
517
434
  /**
518
435
  * Build highlight node
519
436
  *
520
437
  * @param data - data for the node
521
438
  * @returns
522
439
  */
523
- highlight(data: {
524
- texts: HighlightText[];
525
- prefix?: BreakscapedString;
526
- postfix?: BreakscapedString;
527
- item?: BreakscapedString;
528
- lead?: BreakscapedString;
529
- pageNumber?: BreakscapedString;
530
- marginNumber?: BreakscapedString;
531
- hint?: BreakscapedString;
532
- instruction?: BreakscapedString;
533
- }): Highlight;
440
+ buildHighlight(data: Partial<HighlightJson> | undefined): HighlightJson | undefined;
441
+ /**
442
+ * Build highlightText[] node
443
+ *
444
+ * @param data - data for the node
445
+ * @returns
446
+ */
447
+ protected buildHighlightTexts(data: Partial<HighlightTextJson>[] | undefined): HighlightTextJson[] | undefined;
534
448
  /**
535
449
  * Build highlightText node
536
450
  *
537
451
  * @param data - data for the node
538
452
  * @returns
539
453
  */
540
- highlightText(data: {
541
- text: BreakscapedString;
542
- isCorrect: boolean;
543
- isHighlighted: boolean;
544
- item?: BreakscapedString;
545
- lead?: BreakscapedString;
546
- pageNumber?: BreakscapedString;
547
- marginNumber?: BreakscapedString;
548
- hint?: BreakscapedString;
549
- instruction?: BreakscapedString;
550
- isDefaultExample?: boolean;
551
- example?: Example;
552
- }): HighlightText;
454
+ protected buildHighlightText(data: Partial<HighlightTextJson> | undefined): HighlightTextJson | undefined;
455
+ /**
456
+ * Build flashcards node
457
+ *
458
+ * @param data - data for the node
459
+ * @returns
460
+ */
461
+ protected buildFlashcards(data: Partial<FlashcardJson>[] | undefined): FlashcardJson[] | undefined;
553
462
  /**
554
463
  * Build flashcard node
555
464
  *
556
465
  * @param data - data for the node
557
466
  * @returns
558
467
  */
559
- flashcard(data: {
560
- question: BreakscapedString;
561
- answer?: BreakscapedString;
562
- alternativeAnswers?: BreakscapedString[];
563
- item?: BreakscapedString;
564
- lead?: BreakscapedString;
565
- pageNumber?: BreakscapedString;
566
- marginNumber?: BreakscapedString;
567
- hint?: BreakscapedString;
568
- instruction?: BreakscapedString;
569
- isDefaultExample?: boolean;
570
- example?: Example;
571
- }): Flashcard;
468
+ protected buildFlashcard(data: Partial<FlashcardJson> | undefined): FlashcardJson | undefined;
469
+ /**
470
+ * Build definitionListItem[] node
471
+ *
472
+ * @param data - data for the node
473
+ * @returns
474
+ */
475
+ protected buildDefinitionList(data: Partial<DefinitionListItemJson>[] | undefined): DefinitionListItemJson[] | undefined;
572
476
  /**
573
477
  * Build definitionListItem node
574
478
  *
575
479
  * @param data - data for the node
576
480
  * @returns
577
481
  */
578
- definitionListItem(data: {
579
- term: BreakscapedString;
580
- description?: BreakscapedString;
581
- alternativeDefinitions?: BreakscapedString[];
582
- item?: BreakscapedString;
583
- lead?: BreakscapedString;
584
- pageNumber?: BreakscapedString;
585
- marginNumber?: BreakscapedString;
586
- hint?: BreakscapedString;
587
- instruction?: BreakscapedString;
588
- isDefaultExample?: boolean;
589
- example?: Example;
590
- }): DefinitionListItem;
482
+ protected buildDefinitionListItem(data: Partial<DefinitionListItemJson> | undefined): DefinitionListItemJson | undefined;
483
+ /**
484
+ * Build statement[] node
485
+ *
486
+ * @param data - data for the node
487
+ * @returns
488
+ */
489
+ protected buildStatements(data: Partial<StatementJson>[] | undefined): StatementJson[] | undefined;
591
490
  /**
592
491
  * Build statement node
593
492
  *
594
493
  * @param data - data for the node
595
494
  * @returns
596
495
  */
597
- statement(data: {
598
- text: BreakscapedString;
599
- isCorrect: boolean;
600
- item?: BreakscapedString;
601
- lead?: BreakscapedString;
602
- pageNumber?: BreakscapedString;
603
- marginNumber?: BreakscapedString;
604
- hint?: BreakscapedString;
605
- instruction?: BreakscapedString;
606
- isDefaultExample?: boolean;
607
- example?: Example;
608
- }): Statement;
496
+ protected buildStatement(data: Partial<StatementJson> | undefined): StatementJson | undefined;
609
497
  /**
610
498
  * Build (image-on-device) imageSource node
611
499
  *
612
500
  * @param data - data for the node
613
501
  * @returns
614
502
  */
615
- imageSource(data: {
616
- url: BreakscapedString;
617
- mockupId: BreakscapedString;
618
- size?: number;
619
- format?: BreakscapedString;
620
- trim?: boolean;
621
- }): ImageSource;
503
+ protected buildImageSource(data: Partial<ImageSourceJson> | undefined): ImageSourceJson | undefined;
622
504
  /**
623
505
  * Build (chat) person node
624
506
  *
625
507
  * @param data - data for the node
626
508
  * @returns
627
509
  */
628
- person(data: {
629
- name: BreakscapedString;
630
- title?: BreakscapedString;
631
- avatarImage?: ImageResource;
632
- }): Person;
510
+ protected buildPerson(bitType: BitTypeType, data: Partial<PersonJson> | undefined): PersonJson | undefined;
633
511
  /**
634
512
  * Build (cook-ingredients) technicalTerm node
635
513
  *
636
514
  * @param data - data for the node
637
515
  * @returns
638
516
  */
639
- technicalTerm(data: {
640
- technicalTerm: BreakscapedString;
641
- lang?: BreakscapedString;
642
- }): TechnicalTerm;
517
+ protected buildTechnicalTerm(data: Partial<TechnicalTermJson> | undefined): TechnicalTermJson | undefined;
643
518
  /**
644
519
  * Build (cook-ingredients) servings node
645
520
  *
646
521
  * @param data - data for the node
647
522
  * @returns
648
523
  */
649
- servings(data: {
650
- servings: number;
651
- unit?: BreakscapedString;
652
- unitAbbr?: BreakscapedString;
653
- decimalPlaces?: number;
654
- disableCalculation?: boolean;
655
- hint?: BreakscapedString;
656
- }): Servings;
524
+ protected buildServings(data: Partial<ServingsJson> | undefined): ServingsJson | undefined;
657
525
  /**
658
526
  * Build (survey-rating) ratingLevelStart / ratingLevelEnd node
659
527
  *
660
528
  * @param data - data for the node
661
529
  * @returns
662
530
  */
663
- ratingLevelStartEnd(data: {
664
- level: number;
665
- label?: BreakscapedString;
666
- }): RatingLevelStartEnd;
531
+ protected buildRatingLevelStartEnd(data: Partial<RatingLevelStartEndJson> | undefined): RatingLevelStartEndJson | undefined;
667
532
  /**
668
533
  * Build captionDefinition node
669
534
  *
670
535
  * @param data - data for the node
671
536
  * @returns
672
537
  */
673
- captionDefinition(data: {
674
- term: BreakscapedString;
675
- description: BreakscapedString;
676
- }): CaptionDefinition;
538
+ protected buildCaptionDefinition(data: Partial<CaptionDefinitionJson> | undefined): CaptionDefinitionJson | undefined;
677
539
  /**
678
540
  * Build captionDefinitionList node
679
541
  *
680
542
  * @param data - data for the node
681
543
  * @returns
682
544
  */
683
- captionDefinitionList(data: {
684
- columns: BreakscapedString[];
685
- definitions: CaptionDefinition[];
686
- }): CaptionDefinitionList;
687
- private itemLead;
545
+ protected buildCaptionDefinitionList(data: Partial<CaptionDefinitionListJson> | undefined): CaptionDefinitionListJson | undefined;
546
+ /**
547
+ * Build card bit[] node
548
+ *
549
+ * @param data - data for the node
550
+ * @returns
551
+ */
552
+ protected buildCardBits(textFormat: TextFormatType, data: Partial<CardBit>[] | undefined): CardBit[] | undefined;
688
553
  /**
689
554
  * Build card bit node
690
555
  *
691
556
  * @param data - data for the node
692
557
  * @returns
693
558
  */
694
- cardBit(data: {
695
- item?: BreakscapedString;
696
- lead?: BreakscapedString;
697
- pageNumber?: BreakscapedString;
698
- marginNumber?: BreakscapedString;
699
- hint?: BreakscapedString;
700
- instruction?: BreakscapedString;
701
- isDefaultExample?: boolean;
702
- example?: Example;
703
- extraProperties?: {
704
- [key: string]: unknown | unknown[];
705
- };
706
- body?: Body;
707
- }): CardBit | undefined;
708
- private cardNode;
559
+ protected buildCardBit(textFormat: TextFormatType, data: Partial<CardBit> | undefined): CardBit | undefined;
560
+ private buildCardNode;
709
561
  /**
710
562
  * Set examples down the tree
711
563
  *
712
564
  * @param body
713
565
  * @param cardNode
714
- * @param isDefaultExample
566
+ * @param __isDefaultExample
715
567
  * @param example
716
568
  * @returns true if any of the answers has an example, otherwise undefined
717
569
  */
@@ -719,7 +571,7 @@ declare class Builder extends BaseBuilder {
719
571
  /**
720
572
  * Set examples for boolean nodes
721
573
  *
722
- * @param isDefaultExample
574
+ * @param __isDefaultExample
723
575
  * @param example
724
576
  * @param onlyCorrect
725
577
  * @param nodes
@@ -729,7 +581,7 @@ declare class Builder extends BaseBuilder {
729
581
  /**
730
582
  * Set examples for string nodes
731
583
  *
732
- * @param isDefaultExample
584
+ * @param __isDefaultExample
733
585
  * @param example
734
586
  * @param nodes
735
587
  * @returns true if any of the answers has an example, otherwise undefined
@@ -741,7 +593,7 @@ declare class Builder extends BaseBuilder {
741
593
  *
742
594
  * This function is not type safe and should be used with care
743
595
  *
744
- * @param body set if the value should be passed down the body to the body bits
596
+ * @param body/body[] set if the value should be passed down the body to the body bits / card body bits
745
597
  * @param bodyBitTypes body bit types to push the value down to
746
598
  * @param cardNode set if the value should be passed down the card node
747
599
  * @param path path for the value