hyper-html-api 0.14.0 → 0.15.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 (415) hide show
  1. package/conformance/MANIFEST.json +2 -2
  2. package/conformance/cases/codec-form-nested.error.json +5 -0
  3. package/conformance/cases/codec-form-nested.html +4 -0
  4. package/conformance/cases/codec-form-nested.meta +6 -0
  5. package/conformance/cases/codec-form-nested.parsed.json +5 -0
  6. package/conformance/cases/codec-form-star.error.json +5 -0
  7. package/conformance/cases/codec-form-star.html +4 -0
  8. package/conformance/cases/codec-form-star.meta +6 -0
  9. package/conformance/cases/codec-form-star.parsed.json +3 -0
  10. package/conformance/cases/codec-form-under-v1.error.json +5 -0
  11. package/conformance/cases/codec-form-under-v1.html +4 -0
  12. package/conformance/cases/codec-form-under-v1.meta +6 -0
  13. package/conformance/cases/codec-form-under-v1.parsed.json +3 -0
  14. package/conformance/cases/codec-unknown-name.error.json +5 -0
  15. package/conformance/cases/codec-unknown-name.html +4 -0
  16. package/conformance/cases/codec-unknown-name.meta +6 -0
  17. package/conformance/cases/codec-unknown-name.parsed.json +3 -0
  18. package/conformance/cases/tag-version-2-plain.expected.json +7 -0
  19. package/conformance/cases/tag-version-2-plain.html +5 -0
  20. package/conformance/cases/tag-version-2-plain.meta +6 -0
  21. package/conformance/cases/tag-version-2-plain.parsed.json +4 -0
  22. package/conformance/cases/tag-wrong-version.error.json +1 -1
  23. package/conformance/cases/tag-wrong-version.html +1 -1
  24. package/conformance/sheet/body-data-write.body.json +3 -0
  25. package/conformance/sheet/body-data-write.data.json +3 -0
  26. package/conformance/sheet/body-data-write.html +25 -0
  27. package/conformance/sheet/body-data-write.meta +5 -0
  28. package/conformance/sheet/body-patch-key-in-rules.body.json +3 -0
  29. package/conformance/sheet/body-patch-key-in-rules.data.json +13 -0
  30. package/conformance/sheet/body-patch-key-in-rules.html +18 -0
  31. package/conformance/sheet/body-patch-key-in-rules.meta +5 -0
  32. package/conformance/sheet/body-patch-not-array.body.json +3 -0
  33. package/conformance/sheet/body-patch-not-array.data.json +3 -0
  34. package/conformance/sheet/body-patch-not-array.html +25 -0
  35. package/conformance/sheet/body-patch-not-array.meta +5 -0
  36. package/conformance/sheet/body-patch-on-sheet.body.json +3 -0
  37. package/conformance/sheet/body-patch-on-sheet.data.json +14 -0
  38. package/conformance/sheet/body-patch-on-sheet.html +25 -0
  39. package/conformance/sheet/body-patch-on-sheet.meta +5 -0
  40. package/conformance/sheet/body-patch-version-1.body.json +3 -0
  41. package/conformance/sheet/body-patch-version-1.data.json +13 -0
  42. package/conformance/sheet/body-patch-version-1.html +4 -0
  43. package/conformance/sheet/body-patch-version-1.meta +5 -0
  44. package/conformance/sheet/body-patch-with-other-key.body.json +3 -0
  45. package/conformance/sheet/body-patch-with-other-key.data.json +14 -0
  46. package/conformance/sheet/body-patch-with-other-key.html +25 -0
  47. package/conformance/sheet/body-patch-with-other-key.meta +5 -0
  48. package/conformance/sheet/body-patch-without-operation-id.body.json +3 -0
  49. package/conformance/sheet/body-patch-without-operation-id.data.json +13 -0
  50. package/conformance/sheet/body-patch-without-operation-id.html +25 -0
  51. package/conformance/sheet/body-patch-without-operation-id.meta +5 -0
  52. package/conformance/sheet/params-bad-range.error.json +6 -0
  53. package/conformance/sheet/params-bad-range.html +25 -0
  54. package/conformance/sheet/params-bad-range.meta +6 -0
  55. package/conformance/sheet/params-bad-render.error.json +6 -0
  56. package/conformance/sheet/params-bad-render.html +25 -0
  57. package/conformance/sheet/params-bad-render.meta +6 -0
  58. package/conformance/sheet/params-bad-shape.error.json +6 -0
  59. package/conformance/sheet/params-bad-shape.html +25 -0
  60. package/conformance/sheet/params-bad-shape.meta +6 -0
  61. package/conformance/sheet/params-cache-buster.expected.json +128 -0
  62. package/conformance/sheet/params-cache-buster.html +25 -0
  63. package/conformance/sheet/params-cache-buster.meta +6 -0
  64. package/conformance/sheet/params-data-alone.expected.json +128 -0
  65. package/conformance/sheet/params-data-alone.html +25 -0
  66. package/conformance/sheet/params-data-alone.meta +6 -0
  67. package/conformance/sheet/params-empty.error.json +6 -0
  68. package/conformance/sheet/params-empty.html +25 -0
  69. package/conformance/sheet/params-empty.meta +6 -0
  70. package/conformance/sheet/params-index.expected.json +19 -0
  71. package/conformance/sheet/params-index.html +25 -0
  72. package/conformance/sheet/params-index.meta +6 -0
  73. package/conformance/sheet/params-none.expected.json +128 -0
  74. package/conformance/sheet/params-none.html +25 -0
  75. package/conformance/sheet/params-none.meta +6 -0
  76. package/conformance/sheet/params-range.expected.json +17 -0
  77. package/conformance/sheet/params-range.html +25 -0
  78. package/conformance/sheet/params-range.meta +6 -0
  79. package/conformance/sheet/params-render-without-range.error.json +6 -0
  80. package/conformance/sheet/params-render-without-range.html +25 -0
  81. package/conformance/sheet/params-render-without-range.meta +6 -0
  82. package/conformance/sheet/params-repeated.error.json +6 -0
  83. package/conformance/sheet/params-repeated.html +25 -0
  84. package/conformance/sheet/params-repeated.meta +6 -0
  85. package/conformance/sheet/params-unknown-sheet.error.json +6 -0
  86. package/conformance/sheet/params-unknown-sheet.html +25 -0
  87. package/conformance/sheet/params-unknown-sheet.meta +6 -0
  88. package/conformance/sheet/params-with-data.error.json +6 -0
  89. package/conformance/sheet/params-with-data.html +25 -0
  90. package/conformance/sheet/params-with-data.meta +6 -0
  91. package/conformance/sheet/sheet-contract-cells.expected.json +57 -0
  92. package/conformance/sheet/sheet-contract-cells.html +10 -0
  93. package/conformance/sheet/sheet-contract-cells.meta +6 -0
  94. package/conformance/sheet/sheet-contract-formulas.expected.json +29 -0
  95. package/conformance/sheet/sheet-contract-formulas.html +10 -0
  96. package/conformance/sheet/sheet-contract-formulas.meta +6 -0
  97. package/conformance/sheet/sheet-contract-values.expected.json +29 -0
  98. package/conformance/sheet/sheet-contract-values.html +10 -0
  99. package/conformance/sheet/sheet-contract-values.meta +6 -0
  100. package/conformance/sheet/sheet-contract-whole.expected.json +59 -0
  101. package/conformance/sheet/sheet-contract-whole.html +10 -0
  102. package/conformance/sheet/sheet-contract-whole.meta +5 -0
  103. package/conformance/sheet/sheet-hostile-01.expected.json +18 -0
  104. package/conformance/sheet/sheet-hostile-01.html +6 -0
  105. package/conformance/sheet/sheet-hostile-01.meta +5 -0
  106. package/conformance/sheet/sheet-hostile-02.expected.json +18 -0
  107. package/conformance/sheet/sheet-hostile-02.html +6 -0
  108. package/conformance/sheet/sheet-hostile-02.meta +5 -0
  109. package/conformance/sheet/sheet-hostile-03.expected.json +18 -0
  110. package/conformance/sheet/sheet-hostile-03.html +6 -0
  111. package/conformance/sheet/sheet-hostile-03.meta +5 -0
  112. package/conformance/sheet/sheet-hostile-04.expected.json +18 -0
  113. package/conformance/sheet/sheet-hostile-04.html +6 -0
  114. package/conformance/sheet/sheet-hostile-04.meta +5 -0
  115. package/conformance/sheet/sheet-hostile-05.expected.json +18 -0
  116. package/conformance/sheet/sheet-hostile-05.html +6 -0
  117. package/conformance/sheet/sheet-hostile-05.meta +5 -0
  118. package/conformance/sheet/sheet-hostile-06.expected.json +21 -0
  119. package/conformance/sheet/sheet-hostile-06.html +6 -0
  120. package/conformance/sheet/sheet-hostile-06.meta +5 -0
  121. package/conformance/sheet/sheet-hostile-07.expected.json +21 -0
  122. package/conformance/sheet/sheet-hostile-07.html +6 -0
  123. package/conformance/sheet/sheet-hostile-07.meta +5 -0
  124. package/conformance/sheet/sheet-hostile-08.expected.json +21 -0
  125. package/conformance/sheet/sheet-hostile-08.html +6 -0
  126. package/conformance/sheet/sheet-hostile-08.meta +5 -0
  127. package/conformance/sheet/sheet-hostile-09.expected.json +21 -0
  128. package/conformance/sheet/sheet-hostile-09.html +6 -0
  129. package/conformance/sheet/sheet-hostile-09.meta +5 -0
  130. package/conformance/sheet/sheet-hostile-10.expected.json +21 -0
  131. package/conformance/sheet/sheet-hostile-10.html +6 -0
  132. package/conformance/sheet/sheet-hostile-10.meta +5 -0
  133. package/conformance/sheet/sheet-hostile-11.expected.json +22 -0
  134. package/conformance/sheet/sheet-hostile-11.html +6 -0
  135. package/conformance/sheet/sheet-hostile-11.meta +5 -0
  136. package/conformance/sheet/sheet-hostile-12.expected.json +18 -0
  137. package/conformance/sheet/sheet-hostile-12.html +6 -0
  138. package/conformance/sheet/sheet-hostile-12.meta +5 -0
  139. package/conformance/sheet/sheet-hostile-13.expected.json +18 -0
  140. package/conformance/sheet/sheet-hostile-13.html +6 -0
  141. package/conformance/sheet/sheet-hostile-13.meta +5 -0
  142. package/conformance/sheet/sheet-hostile-14.expected.json +21 -0
  143. package/conformance/sheet/sheet-hostile-14.html +6 -0
  144. package/conformance/sheet/sheet-hostile-14.meta +5 -0
  145. package/conformance/sheet/sheet-hostile-15.expected.json +18 -0
  146. package/conformance/sheet/sheet-hostile-15.html +0 -0
  147. package/conformance/sheet/sheet-hostile-15.meta +5 -0
  148. package/conformance/sheet/sheet-hostile-16.expected.json +18 -0
  149. package/conformance/sheet/sheet-hostile-16.html +6 -0
  150. package/conformance/sheet/sheet-hostile-16.meta +5 -0
  151. package/conformance/sheet/sheet-hostile-17.expected.json +18 -0
  152. package/conformance/sheet/sheet-hostile-17.html +6 -0
  153. package/conformance/sheet/sheet-hostile-17.meta +5 -0
  154. package/conformance/sheet/sheet-hostile-18.expected.json +18 -0
  155. package/conformance/sheet/sheet-hostile-18.html +6 -0
  156. package/conformance/sheet/sheet-hostile-18.meta +5 -0
  157. package/conformance/sheet/sheet-hostile-19.expected.json +18 -0
  158. package/conformance/sheet/sheet-hostile-19.html +6 -0
  159. package/conformance/sheet/sheet-hostile-19.meta +5 -0
  160. package/conformance/sheet/sheet-hostile-20.expected.json +16 -0
  161. package/conformance/sheet/sheet-hostile-20.html +6 -0
  162. package/conformance/sheet/sheet-hostile-20.meta +5 -0
  163. package/conformance/sheet/sheet-hostile-21.expected.json +18 -0
  164. package/conformance/sheet/sheet-hostile-21.html +6 -0
  165. package/conformance/sheet/sheet-hostile-21.meta +5 -0
  166. package/conformance/sheet/sheet-hostile-22.expected.json +21 -0
  167. package/conformance/sheet/sheet-hostile-22.html +6 -0
  168. package/conformance/sheet/sheet-hostile-22.meta +5 -0
  169. package/conformance/sheet/sheet-hostile-23.expected.json +18 -0
  170. package/conformance/sheet/sheet-hostile-23.html +6 -0
  171. package/conformance/sheet/sheet-hostile-23.meta +5 -0
  172. package/conformance/sheet/sheet-hostile-24.expected.json +18 -0
  173. package/conformance/sheet/sheet-hostile-24.html +6 -0
  174. package/conformance/sheet/sheet-hostile-24.meta +5 -0
  175. package/conformance/sheet/sheet-hostile-25.expected.json +18 -0
  176. package/conformance/sheet/sheet-hostile-25.html +6 -0
  177. package/conformance/sheet/sheet-hostile-25.meta +5 -0
  178. package/conformance/sheet/sheet-hostile-26.expected.json +18 -0
  179. package/conformance/sheet/sheet-hostile-26.html +6 -0
  180. package/conformance/sheet/sheet-hostile-26.meta +5 -0
  181. package/conformance/sheet/sheet-hostile-27.expected.json +24 -0
  182. package/conformance/sheet/sheet-hostile-27.html +7 -0
  183. package/conformance/sheet/sheet-hostile-27.meta +5 -0
  184. package/conformance/sheet/sheet-hostile-28.expected.json +18 -0
  185. package/conformance/sheet/sheet-hostile-28.html +6 -0
  186. package/conformance/sheet/sheet-hostile-28.meta +5 -0
  187. package/conformance/sheet/sheet-hostile-29.expected.json +18 -0
  188. package/conformance/sheet/sheet-hostile-29.html +6 -0
  189. package/conformance/sheet/sheet-hostile-29.meta +5 -0
  190. package/conformance/sheet/sheet-hostile-30.expected.json +18 -0
  191. package/conformance/sheet/sheet-hostile-30.html +6 -0
  192. package/conformance/sheet/sheet-hostile-30.meta +5 -0
  193. package/conformance/sheet/sheet-hostile-31.expected.json +19 -0
  194. package/conformance/sheet/sheet-hostile-31.html +6 -0
  195. package/conformance/sheet/sheet-hostile-31.meta +5 -0
  196. package/conformance/sheet/sheet-hostile-32.expected.json +24 -0
  197. package/conformance/sheet/sheet-hostile-32.html +6 -0
  198. package/conformance/sheet/sheet-hostile-32.meta +5 -0
  199. package/conformance/sheet/sheet-hostile-33.expected.json +18 -0
  200. package/conformance/sheet/sheet-hostile-33.html +6 -0
  201. package/conformance/sheet/sheet-hostile-33.meta +5 -0
  202. package/conformance/sheet/sheet-hostile-34.expected.json +24 -0
  203. package/conformance/sheet/sheet-hostile-34.html +8 -0
  204. package/conformance/sheet/sheet-hostile-34.meta +5 -0
  205. package/conformance/sheet/sheet-hostile-35.expected.json +24 -0
  206. package/conformance/sheet/sheet-hostile-35.html +8 -0
  207. package/conformance/sheet/sheet-hostile-35.meta +5 -0
  208. package/conformance/sheet/sheet-patch-append.after.html +27 -0
  209. package/conformance/sheet/sheet-patch-append.after.json +143 -0
  210. package/conformance/sheet/sheet-patch-append.data.json +15 -0
  211. package/conformance/sheet/sheet-patch-append.html +25 -0
  212. package/conformance/sheet/sheet-patch-append.meta +5 -0
  213. package/conformance/sheet/sheet-patch-append.write.json +7 -0
  214. package/conformance/sheet/sheet-patch-bad-range.data.json +11 -0
  215. package/conformance/sheet/sheet-patch-bad-range.error.json +6 -0
  216. package/conformance/sheet/sheet-patch-bad-range.html +25 -0
  217. package/conformance/sheet/sheet-patch-bad-range.meta +5 -0
  218. package/conformance/sheet/sheet-patch-bad-value.data.json +13 -0
  219. package/conformance/sheet/sheet-patch-bad-value.error.json +6 -0
  220. package/conformance/sheet/sheet-patch-bad-value.html +25 -0
  221. package/conformance/sheet/sheet-patch-bad-value.meta +5 -0
  222. package/conformance/sheet/sheet-patch-clean-tab-beside-edited.after.html +25 -0
  223. package/conformance/sheet/sheet-patch-clean-tab-beside-edited.after.json +129 -0
  224. package/conformance/sheet/sheet-patch-clean-tab-beside-edited.data.json +11 -0
  225. package/conformance/sheet/sheet-patch-clean-tab-beside-edited.html +25 -0
  226. package/conformance/sheet/sheet-patch-clean-tab-beside-edited.meta +5 -0
  227. package/conformance/sheet/sheet-patch-clean-tab-beside-edited.write.json +7 -0
  228. package/conformance/sheet/sheet-patch-covered-cell.data.json +10 -0
  229. package/conformance/sheet/sheet-patch-covered-cell.error.json +6 -0
  230. package/conformance/sheet/sheet-patch-covered-cell.html +10 -0
  231. package/conformance/sheet/sheet-patch-covered-cell.meta +5 -0
  232. package/conformance/sheet/sheet-patch-empty.data.json +1 -0
  233. package/conformance/sheet/sheet-patch-empty.error.json +6 -0
  234. package/conformance/sheet/sheet-patch-empty.html +25 -0
  235. package/conformance/sheet/sheet-patch-empty.meta +5 -0
  236. package/conformance/sheet/sheet-patch-fallback-route.after.html +24 -0
  237. package/conformance/sheet/sheet-patch-fallback-route.after.json +86 -0
  238. package/conformance/sheet/sheet-patch-fallback-route.data.json +10 -0
  239. package/conformance/sheet/sheet-patch-fallback-route.html +24 -0
  240. package/conformance/sheet/sheet-patch-fallback-route.meta +5 -0
  241. package/conformance/sheet/sheet-patch-fallback-route.write.json +7 -0
  242. package/conformance/sheet/sheet-patch-first-tab.after.html +25 -0
  243. package/conformance/sheet/sheet-patch-first-tab.after.json +129 -0
  244. package/conformance/sheet/sheet-patch-first-tab.data.json +10 -0
  245. package/conformance/sheet/sheet-patch-first-tab.html +25 -0
  246. package/conformance/sheet/sheet-patch-first-tab.meta +5 -0
  247. package/conformance/sheet/sheet-patch-first-tab.write.json +7 -0
  248. package/conformance/sheet/sheet-patch-formula.after.html +25 -0
  249. package/conformance/sheet/sheet-patch-formula.after.json +128 -0
  250. package/conformance/sheet/sheet-patch-formula.data.json +11 -0
  251. package/conformance/sheet/sheet-patch-formula.html +25 -0
  252. package/conformance/sheet/sheet-patch-formula.meta +5 -0
  253. package/conformance/sheet/sheet-patch-formula.write.json +7 -0
  254. package/conformance/sheet/sheet-patch-no-sheet-rule.data.json +10 -0
  255. package/conformance/sheet/sheet-patch-no-sheet-rule.error.json +6 -0
  256. package/conformance/sheet/sheet-patch-no-sheet-rule.html +18 -0
  257. package/conformance/sheet/sheet-patch-no-sheet-rule.meta +5 -0
  258. package/conformance/sheet/sheet-patch-no-values.data.json +6 -0
  259. package/conformance/sheet/sheet-patch-no-values.error.json +6 -0
  260. package/conformance/sheet/sheet-patch-no-values.html +25 -0
  261. package/conformance/sheet/sheet-patch-no-values.meta +5 -0
  262. package/conformance/sheet/sheet-patch-not-canonical.data.json +11 -0
  263. package/conformance/sheet/sheet-patch-not-canonical.error.json +6 -0
  264. package/conformance/sheet/sheet-patch-not-canonical.html +25 -0
  265. package/conformance/sheet/sheet-patch-not-canonical.meta +5 -0
  266. package/conformance/sheet/sheet-patch-outside-sheet.data.json +11 -0
  267. package/conformance/sheet/sheet-patch-outside-sheet.error.json +6 -0
  268. package/conformance/sheet/sheet-patch-outside-sheet.html +25 -0
  269. package/conformance/sheet/sheet-patch-outside-sheet.meta +5 -0
  270. package/conformance/sheet/sheet-patch-range.after.html +25 -0
  271. package/conformance/sheet/sheet-patch-range.after.json +126 -0
  272. package/conformance/sheet/sheet-patch-range.data.json +11 -0
  273. package/conformance/sheet/sheet-patch-range.html +25 -0
  274. package/conformance/sheet/sheet-patch-range.meta +5 -0
  275. package/conformance/sheet/sheet-patch-range.write.json +7 -0
  276. package/conformance/sheet/sheet-patch-two-tabs.after.html +25 -0
  277. package/conformance/sheet/sheet-patch-two-tabs.after.json +130 -0
  278. package/conformance/sheet/sheet-patch-two-tabs.data.json +20 -0
  279. package/conformance/sheet/sheet-patch-two-tabs.html +25 -0
  280. package/conformance/sheet/sheet-patch-two-tabs.meta +5 -0
  281. package/conformance/sheet/sheet-patch-two-tabs.write.json +7 -0
  282. package/conformance/sheet/sheet-patch-typed.after.html +25 -0
  283. package/conformance/sheet/sheet-patch-typed.after.json +121 -0
  284. package/conformance/sheet/sheet-patch-typed.data.json +13 -0
  285. package/conformance/sheet/sheet-patch-typed.html +25 -0
  286. package/conformance/sheet/sheet-patch-typed.meta +5 -0
  287. package/conformance/sheet/sheet-patch-typed.write.json +7 -0
  288. package/conformance/sheet/sheet-patch-unknown-sheet.data.json +11 -0
  289. package/conformance/sheet/sheet-patch-unknown-sheet.error.json +6 -0
  290. package/conformance/sheet/sheet-patch-unknown-sheet.html +25 -0
  291. package/conformance/sheet/sheet-patch-unknown-sheet.meta +5 -0
  292. package/conformance/sheet/sheet-read-bad-range.error.json +6 -0
  293. package/conformance/sheet/sheet-read-bad-range.html +25 -0
  294. package/conformance/sheet/sheet-read-bad-range.meta +6 -0
  295. package/conformance/sheet/sheet-read-bad-render.error.json +6 -0
  296. package/conformance/sheet/sheet-read-bad-render.html +25 -0
  297. package/conformance/sheet/sheet-read-bad-render.meta +6 -0
  298. package/conformance/sheet/sheet-read-digest.expected.json +91 -0
  299. package/conformance/sheet/sheet-read-digest.html +25 -0
  300. package/conformance/sheet/sheet-read-digest.meta +6 -0
  301. package/conformance/sheet/sheet-read-empty.expected.json +11 -0
  302. package/conformance/sheet/sheet-read-empty.html +6 -0
  303. package/conformance/sheet/sheet-read-empty.meta +5 -0
  304. package/conformance/sheet/sheet-read-escapes.expected.json +108 -0
  305. package/conformance/sheet/sheet-read-escapes.html +22 -0
  306. package/conformance/sheet/sheet-read-escapes.meta +5 -0
  307. package/conformance/sheet/sheet-read-formulas-formatted.expected.json +298 -0
  308. package/conformance/sheet/sheet-read-formulas-formatted.html +16 -0
  309. package/conformance/sheet/sheet-read-formulas-formatted.meta +5 -0
  310. package/conformance/sheet/sheet-read-grid-in-comment.expected.json +85 -0
  311. package/conformance/sheet/sheet-read-grid-in-comment.html +24 -0
  312. package/conformance/sheet/sheet-read-grid-in-comment.meta +5 -0
  313. package/conformance/sheet/sheet-read-grid-in-script.expected.json +85 -0
  314. package/conformance/sheet/sheet-read-grid-in-script.html +24 -0
  315. package/conformance/sheet/sheet-read-grid-in-script.meta +5 -0
  316. package/conformance/sheet/sheet-read-grid-in-template.expected.json +85 -0
  317. package/conformance/sheet/sheet-read-grid-in-template.html +24 -0
  318. package/conformance/sheet/sheet-read-grid-in-template.meta +5 -0
  319. package/conformance/sheet/sheet-read-grid-in-textarea.expected.json +85 -0
  320. package/conformance/sheet/sheet-read-grid-in-textarea.html +24 -0
  321. package/conformance/sheet/sheet-read-grid-in-textarea.meta +5 -0
  322. package/conformance/sheet/sheet-read-grid-outside-read-by-rule.expected.json +94 -0
  323. package/conformance/sheet/sheet-read-grid-outside-read-by-rule.html +24 -0
  324. package/conformance/sheet/sheet-read-grid-outside-read-by-rule.meta +5 -0
  325. package/conformance/sheet/sheet-read-grid-outside-sheet.expected.json +85 -0
  326. package/conformance/sheet/sheet-read-grid-outside-sheet.html +24 -0
  327. package/conformance/sheet/sheet-read-grid-outside-sheet.meta +5 -0
  328. package/conformance/sheet/sheet-read-hand-edited.expected.json +85 -0
  329. package/conformance/sheet/sheet-read-hand-edited.html +18 -0
  330. package/conformance/sheet/sheet-read-hand-edited.meta +5 -0
  331. package/conformance/sheet/sheet-read-index.expected.json +19 -0
  332. package/conformance/sheet/sheet-read-index.html +25 -0
  333. package/conformance/sheet/sheet-read-index.meta +6 -0
  334. package/conformance/sheet/sheet-read-merged.expected.json +59 -0
  335. package/conformance/sheet/sheet-read-merged.html +10 -0
  336. package/conformance/sheet/sheet-read-merged.meta +5 -0
  337. package/conformance/sheet/sheet-read-no-tag.error.json +5 -0
  338. package/conformance/sheet/sheet-read-no-tag.html +18 -0
  339. package/conformance/sheet/sheet-read-no-tag.meta +5 -0
  340. package/conformance/sheet/sheet-read-padded-name-index.expected.json +19 -0
  341. package/conformance/sheet/sheet-read-padded-name-index.html +25 -0
  342. package/conformance/sheet/sheet-read-padded-name-index.meta +6 -0
  343. package/conformance/sheet/sheet-read-padded-name-lookup.expected.json +83 -0
  344. package/conformance/sheet/sheet-read-padded-name-lookup.html +25 -0
  345. package/conformance/sheet/sheet-read-padded-name-lookup.meta +6 -0
  346. package/conformance/sheet/sheet-read-padded-name-trimmed-lookup.error.json +6 -0
  347. package/conformance/sheet/sheet-read-padded-name-trimmed-lookup.html +25 -0
  348. package/conformance/sheet/sheet-read-padded-name-trimmed-lookup.meta +6 -0
  349. package/conformance/sheet/sheet-read-padded-name.expected.json +128 -0
  350. package/conformance/sheet/sheet-read-padded-name.html +25 -0
  351. package/conformance/sheet/sheet-read-padded-name.meta +5 -0
  352. package/conformance/sheet/sheet-read-range-cells.expected.json +55 -0
  353. package/conformance/sheet/sheet-read-range-cells.html +25 -0
  354. package/conformance/sheet/sheet-read-range-cells.meta +6 -0
  355. package/conformance/sheet/sheet-read-range-first-tab.expected.json +12 -0
  356. package/conformance/sheet/sheet-read-range-first-tab.html +25 -0
  357. package/conformance/sheet/sheet-read-range-first-tab.meta +6 -0
  358. package/conformance/sheet/sheet-read-range-formulas.expected.json +24 -0
  359. package/conformance/sheet/sheet-read-range-formulas.html +25 -0
  360. package/conformance/sheet/sheet-read-range-formulas.meta +6 -0
  361. package/conformance/sheet/sheet-read-range-values.expected.json +24 -0
  362. package/conformance/sheet/sheet-read-range-values.html +25 -0
  363. package/conformance/sheet/sheet-read-range-values.meta +6 -0
  364. package/conformance/sheet/sheet-read-sheet-by-id.expected.json +46 -0
  365. package/conformance/sheet/sheet-read-sheet-by-id.html +25 -0
  366. package/conformance/sheet/sheet-read-sheet-by-id.meta +6 -0
  367. package/conformance/sheet/sheet-read-sheet-by-name.expected.json +46 -0
  368. package/conformance/sheet/sheet-read-sheet-by-name.html +25 -0
  369. package/conformance/sheet/sheet-read-sheet-by-name.meta +6 -0
  370. package/conformance/sheet/sheet-read-styled.expected.json +48 -0
  371. package/conformance/sheet/sheet-read-styled.html +10 -0
  372. package/conformance/sheet/sheet-read-styled.meta +5 -0
  373. package/conformance/sheet/sheet-read-tiny.expected.json +85 -0
  374. package/conformance/sheet/sheet-read-tiny.html +18 -0
  375. package/conformance/sheet/sheet-read-tiny.meta +5 -0
  376. package/conformance/sheet/sheet-read-two-tabs.expected.json +128 -0
  377. package/conformance/sheet/sheet-read-two-tabs.html +25 -0
  378. package/conformance/sheet/sheet-read-two-tabs.meta +5 -0
  379. package/conformance/sheet/sheet-read-unknown-sheet.error.json +6 -0
  380. package/conformance/sheet/sheet-read-unknown-sheet.html +25 -0
  381. package/conformance/sheet/sheet-read-unknown-sheet.meta +6 -0
  382. package/conformance/sheet/sheet-read-version-1-codec.error.json +5 -0
  383. package/conformance/sheet/sheet-read-version-1-codec.html +25 -0
  384. package/conformance/sheet/sheet-read-version-1-codec.meta +5 -0
  385. package/conformance/sheet/sheet-write-whole-refused.data.json +3 -0
  386. package/conformance/sheet/sheet-write-whole-refused.error.json +7 -0
  387. package/conformance/sheet/sheet-write-whole-refused.html +25 -0
  388. package/conformance/sheet/sheet-write-whole-refused.meta +5 -0
  389. package/conformance/sheet-guard-extraction.json +616 -0
  390. package/conformance/sheet-guard.json +32362 -0
  391. package/conformance/sheet-read-shapes.json +1 -0
  392. package/dist/hyper-html-api.engine.esm.js +1 -1
  393. package/dist/hyper-html-api.engine.min.js +1 -1
  394. package/dist/hyper-html-api.min.js +7 -7
  395. package/dist/hyper-html-api.upgrade.min.js +2 -2
  396. package/package.json +5 -3
  397. package/src/codecs/sheet.js +127 -0
  398. package/src/codecs/sheet.vendor.js +887 -0
  399. package/src/dom-api.js +20 -11
  400. package/src/engine/apply.js +12 -1
  401. package/src/engine/codecs.js +80 -0
  402. package/src/engine/errors.js +20 -1
  403. package/src/engine/extract.js +11 -0
  404. package/src/engine/index.js +9 -5
  405. package/src/engine/round-trip.js +16 -10
  406. package/src/engine/rule-syntax.js +16 -0
  407. package/src/engine/rules-tag.js +3 -2
  408. package/src/engine/write-plan.js +2 -0
  409. package/src/patch-document.js +122 -0
  410. package/src/read.js +163 -0
  411. package/src/upgrade/codec-carry.js +23 -0
  412. package/src/upgrade/extract-all.js +12 -3
  413. package/src/upgrade/migrate.js +30 -3
  414. package/src/upgrade/rules-tags.js +4 -4
  415. package/src/write.js +44 -5
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ " "
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td>&nbsp;</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td>&nbsp;</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "v": 1,
14
+ "text": "x"
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td n v="1" v="2">x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td n v="1" v="2">x</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "v": 7,
14
+ "text": "x"
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td N V="7">x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td N V="7">x</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "v": 1,
14
+ "text": "x"
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td v='1'>x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td v='1'>x</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "v": 1,
14
+ "text": "x"
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td v=1>x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td v=1>x</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "v": 1,
14
+ "text": "x"
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td v="1"n>x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td v="1"n>x</td>
@@ -0,0 +1,22 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "f": "=A1",
14
+ "v": 1,
15
+ "text": "x"
16
+ }
17
+ ]
18
+ }
19
+ ]
20
+ }
21
+ ]
22
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td v="1" f="=A1">x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td v="1" f="=A1">x</td> (order)
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ 1
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td n="">1</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td n="">1</td>
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "a\nb"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td>a
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td>a\rb</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "f": "a\nb",
14
+ "v": "x"
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td f="a
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td f="a\rb">x</td>
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "ab"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td>a\0b</td>
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "x"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td><b>x</b></td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td><b>x</b></td>
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "ab"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td>a<!--c-->b</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td>a<!--c-->b</td>
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "x"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td>x</td ></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td>x</td >
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "x"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><TD>x</TD></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <TD>x</TD>
@@ -0,0 +1,16 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": []
12
+ }
13
+ ]
14
+ }
15
+ ]
16
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td hidden>x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td hidden>x</td>
@@ -0,0 +1,18 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ "x"
13
+ ]
14
+ }
15
+ ]
16
+ }
17
+ ]
18
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td colspan="1">x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td colspan="1">x</td>
@@ -0,0 +1,21 @@
1
+ {
2
+ "title": "Book",
3
+ "sheets": [
4
+ {
5
+ "id": "s1",
6
+ "name": "Budget",
7
+ "cols": [],
8
+ "rows": [
9
+ {
10
+ "id": "r",
11
+ "cells": [
12
+ {
13
+ "v": "x",
14
+ "colspan": 2
15
+ }
16
+ ]
17
+ }
18
+ ]
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1,6 @@
1
+ <!DOCTYPE html>
2
+ <html><head><script type="application/json" data-rules-name="api" data-rules-version="2">{"title":"h1","sheets":"[items=sheets]@codec(sheet)"}</script></head><body><h1>Book</h1><main sap data-rev="12"><div items="sheets">
3
+ <section item data-id="s1" data-pos="V"><h2 bind="name">Budget</h2><table grid><tbody>
4
+ <tr data-id="r" data-pos="G"><td colspan="02">x</td></tr>
5
+ </tbody></table></section>
6
+ </div></main></body></html>
@@ -0,0 +1,5 @@
1
+ tier: 1
2
+ face: read
3
+ token: api
4
+ expect: ok
5
+ note: hostile: cell <td colspan="02">x</td>