@slicemachine/adapter-nuxt 0.0.2-dev-plugins-m3.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 (343) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +98 -0
  3. package/dist/_node_modules/data-uri-to-buffer/dist/index.cjs +41 -0
  4. package/dist/_node_modules/data-uri-to-buffer/dist/index.cjs.map +1 -0
  5. package/dist/_node_modules/data-uri-to-buffer/dist/index.js +41 -0
  6. package/dist/_node_modules/data-uri-to-buffer/dist/index.js.map +1 -0
  7. package/dist/_node_modules/fetch-blob/file.cjs +61 -0
  8. package/dist/_node_modules/fetch-blob/file.cjs.map +1 -0
  9. package/dist/_node_modules/fetch-blob/file.js +61 -0
  10. package/dist/_node_modules/fetch-blob/file.js.map +1 -0
  11. package/dist/_node_modules/fetch-blob/index.cjs +223 -0
  12. package/dist/_node_modules/fetch-blob/index.cjs.map +1 -0
  13. package/dist/_node_modules/fetch-blob/index.js +223 -0
  14. package/dist/_node_modules/fetch-blob/index.js.map +1 -0
  15. package/dist/_node_modules/fetch-blob/streams.cjs +43 -0
  16. package/dist/_node_modules/fetch-blob/streams.cjs.map +1 -0
  17. package/dist/_node_modules/fetch-blob/streams.js +42 -0
  18. package/dist/_node_modules/fetch-blob/streams.js.map +1 -0
  19. package/dist/_node_modules/formdata-polyfill/esm.min.cjs +116 -0
  20. package/dist/_node_modules/formdata-polyfill/esm.min.cjs.map +1 -0
  21. package/dist/_node_modules/formdata-polyfill/esm.min.js +116 -0
  22. package/dist/_node_modules/formdata-polyfill/esm.min.js.map +1 -0
  23. package/dist/_node_modules/node-domexception/index.cjs +11 -0
  24. package/dist/_node_modules/node-domexception/index.cjs.map +1 -0
  25. package/dist/_node_modules/node-domexception/index.js +10 -0
  26. package/dist/_node_modules/node-domexception/index.js.map +1 -0
  27. package/dist/_node_modules/node-fetch/src/body.cjs +262 -0
  28. package/dist/_node_modules/node-fetch/src/body.cjs.map +1 -0
  29. package/dist/_node_modules/node-fetch/src/body.js +262 -0
  30. package/dist/_node_modules/node-fetch/src/body.js.map +1 -0
  31. package/dist/_node_modules/node-fetch/src/errors/abort-error.cjs +10 -0
  32. package/dist/_node_modules/node-fetch/src/errors/abort-error.cjs.map +1 -0
  33. package/dist/_node_modules/node-fetch/src/errors/abort-error.js +10 -0
  34. package/dist/_node_modules/node-fetch/src/errors/abort-error.js.map +1 -0
  35. package/dist/_node_modules/node-fetch/src/errors/base.cjs +17 -0
  36. package/dist/_node_modules/node-fetch/src/errors/base.cjs.map +1 -0
  37. package/dist/_node_modules/node-fetch/src/errors/base.js +17 -0
  38. package/dist/_node_modules/node-fetch/src/errors/base.js.map +1 -0
  39. package/dist/_node_modules/node-fetch/src/errors/fetch-error.cjs +19 -0
  40. package/dist/_node_modules/node-fetch/src/errors/fetch-error.cjs.map +1 -0
  41. package/dist/_node_modules/node-fetch/src/errors/fetch-error.js +19 -0
  42. package/dist/_node_modules/node-fetch/src/errors/fetch-error.js.map +1 -0
  43. package/dist/_node_modules/node-fetch/src/headers.cjs +190 -0
  44. package/dist/_node_modules/node-fetch/src/headers.cjs.map +1 -0
  45. package/dist/_node_modules/node-fetch/src/headers.js +190 -0
  46. package/dist/_node_modules/node-fetch/src/headers.js.map +1 -0
  47. package/dist/_node_modules/node-fetch/src/index.cjs +292 -0
  48. package/dist/_node_modules/node-fetch/src/index.cjs.map +1 -0
  49. package/dist/_node_modules/node-fetch/src/index.js +292 -0
  50. package/dist/_node_modules/node-fetch/src/index.js.map +1 -0
  51. package/dist/_node_modules/node-fetch/src/request.cjs +206 -0
  52. package/dist/_node_modules/node-fetch/src/request.cjs.map +1 -0
  53. package/dist/_node_modules/node-fetch/src/request.js +206 -0
  54. package/dist/_node_modules/node-fetch/src/request.js.map +1 -0
  55. package/dist/_node_modules/node-fetch/src/response.cjs +122 -0
  56. package/dist/_node_modules/node-fetch/src/response.cjs.map +1 -0
  57. package/dist/_node_modules/node-fetch/src/response.js +123 -0
  58. package/dist/_node_modules/node-fetch/src/response.js.map +1 -0
  59. package/dist/_node_modules/node-fetch/src/utils/get-search.cjs +12 -0
  60. package/dist/_node_modules/node-fetch/src/utils/get-search.cjs.map +1 -0
  61. package/dist/_node_modules/node-fetch/src/utils/get-search.js +12 -0
  62. package/dist/_node_modules/node-fetch/src/utils/get-search.js.map +1 -0
  63. package/dist/_node_modules/node-fetch/src/utils/is-redirect.cjs +8 -0
  64. package/dist/_node_modules/node-fetch/src/utils/is-redirect.cjs.map +1 -0
  65. package/dist/_node_modules/node-fetch/src/utils/is-redirect.js +8 -0
  66. package/dist/_node_modules/node-fetch/src/utils/is-redirect.js.map +1 -0
  67. package/dist/_node_modules/node-fetch/src/utils/is.cjs +28 -0
  68. package/dist/_node_modules/node-fetch/src/utils/is.cjs.map +1 -0
  69. package/dist/_node_modules/node-fetch/src/utils/is.js +28 -0
  70. package/dist/_node_modules/node-fetch/src/utils/is.js.map +1 -0
  71. package/dist/_node_modules/node-fetch/src/utils/multipart-parser.cjs +356 -0
  72. package/dist/_node_modules/node-fetch/src/utils/multipart-parser.cjs.map +1 -0
  73. package/dist/_node_modules/node-fetch/src/utils/multipart-parser.js +356 -0
  74. package/dist/_node_modules/node-fetch/src/utils/multipart-parser.js.map +1 -0
  75. package/dist/_node_modules/node-fetch/src/utils/referrer.cjs +149 -0
  76. package/dist/_node_modules/node-fetch/src/utils/referrer.cjs.map +1 -0
  77. package/dist/_node_modules/node-fetch/src/utils/referrer.js +149 -0
  78. package/dist/_node_modules/node-fetch/src/utils/referrer.js.map +1 -0
  79. package/dist/_node_modules/web-streams-polyfill/dist/ponyfill.es2018.cjs +3822 -0
  80. package/dist/_node_modules/web-streams-polyfill/dist/ponyfill.es2018.cjs.map +1 -0
  81. package/dist/_node_modules/web-streams-polyfill/dist/ponyfill.es2018.js +3822 -0
  82. package/dist/_node_modules/web-streams-polyfill/dist/ponyfill.es2018.js.map +1 -0
  83. package/dist/_virtual/_commonjsHelpers.cjs +5 -0
  84. package/dist/_virtual/_commonjsHelpers.cjs.map +1 -0
  85. package/dist/_virtual/_commonjsHelpers.js +5 -0
  86. package/dist/_virtual/_commonjsHelpers.js.map +1 -0
  87. package/dist/_virtual/ponyfill.es2018.cjs +13 -0
  88. package/dist/_virtual/ponyfill.es2018.cjs.map +1 -0
  89. package/dist/_virtual/ponyfill.es2018.js +14 -0
  90. package/dist/_virtual/ponyfill.es2018.js.map +1 -0
  91. package/dist/constants.cjs +5 -0
  92. package/dist/constants.cjs.map +1 -0
  93. package/dist/constants.d.ts +4 -0
  94. package/dist/constants.js +5 -0
  95. package/dist/constants.js.map +1 -0
  96. package/dist/hooks/customType-asset-delete.cjs +31 -0
  97. package/dist/hooks/customType-asset-delete.cjs.map +1 -0
  98. package/dist/hooks/customType-asset-delete.d.ts +3 -0
  99. package/dist/hooks/customType-asset-delete.js +14 -0
  100. package/dist/hooks/customType-asset-delete.js.map +1 -0
  101. package/dist/hooks/customType-asset-read.cjs +34 -0
  102. package/dist/hooks/customType-asset-read.cjs.map +1 -0
  103. package/dist/hooks/customType-asset-read.d.ts +3 -0
  104. package/dist/hooks/customType-asset-read.js +17 -0
  105. package/dist/hooks/customType-asset-read.js.map +1 -0
  106. package/dist/hooks/customType-asset-update.cjs +34 -0
  107. package/dist/hooks/customType-asset-update.cjs.map +1 -0
  108. package/dist/hooks/customType-asset-update.d.ts +3 -0
  109. package/dist/hooks/customType-asset-update.js +16 -0
  110. package/dist/hooks/customType-asset-update.js.map +1 -0
  111. package/dist/hooks/customType-create.cjs +43 -0
  112. package/dist/hooks/customType-create.cjs.map +1 -0
  113. package/dist/hooks/customType-create.d.ts +3 -0
  114. package/dist/hooks/customType-create.js +25 -0
  115. package/dist/hooks/customType-create.js.map +1 -0
  116. package/dist/hooks/customType-delete.cjs +32 -0
  117. package/dist/hooks/customType-delete.cjs.map +1 -0
  118. package/dist/hooks/customType-delete.d.ts +3 -0
  119. package/dist/hooks/customType-delete.js +15 -0
  120. package/dist/hooks/customType-delete.js.map +1 -0
  121. package/dist/hooks/customType-read.cjs +31 -0
  122. package/dist/hooks/customType-read.cjs.map +1 -0
  123. package/dist/hooks/customType-read.d.ts +3 -0
  124. package/dist/hooks/customType-read.js +14 -0
  125. package/dist/hooks/customType-read.js.map +1 -0
  126. package/dist/hooks/customType-rename.cjs +6 -0
  127. package/dist/hooks/customType-rename.cjs.map +1 -0
  128. package/dist/hooks/customType-rename.d.ts +1 -0
  129. package/dist/hooks/customType-rename.js +6 -0
  130. package/dist/hooks/customType-rename.js.map +1 -0
  131. package/dist/hooks/customType-update.cjs +6 -0
  132. package/dist/hooks/customType-update.cjs.map +1 -0
  133. package/dist/hooks/customType-update.d.ts +1 -0
  134. package/dist/hooks/customType-update.js +6 -0
  135. package/dist/hooks/customType-update.js.map +1 -0
  136. package/dist/hooks/customTypeLibrary-read.cjs +53 -0
  137. package/dist/hooks/customTypeLibrary-read.cjs.map +1 -0
  138. package/dist/hooks/customTypeLibrary-read.d.ts +3 -0
  139. package/dist/hooks/customTypeLibrary-read.js +35 -0
  140. package/dist/hooks/customTypeLibrary-read.js.map +1 -0
  141. package/dist/hooks/project-init.cjs +112 -0
  142. package/dist/hooks/project-init.cjs.map +1 -0
  143. package/dist/hooks/project-init.d.ts +3 -0
  144. package/dist/hooks/project-init.js +94 -0
  145. package/dist/hooks/project-init.js.map +1 -0
  146. package/dist/hooks/slice-asset-delete.cjs +33 -0
  147. package/dist/hooks/slice-asset-delete.cjs.map +1 -0
  148. package/dist/hooks/slice-asset-delete.d.ts +3 -0
  149. package/dist/hooks/slice-asset-delete.js +16 -0
  150. package/dist/hooks/slice-asset-delete.js.map +1 -0
  151. package/dist/hooks/slice-asset-read.cjs +36 -0
  152. package/dist/hooks/slice-asset-read.cjs.map +1 -0
  153. package/dist/hooks/slice-asset-read.d.ts +3 -0
  154. package/dist/hooks/slice-asset-read.js +19 -0
  155. package/dist/hooks/slice-asset-read.js.map +1 -0
  156. package/dist/hooks/slice-asset-update.cjs +36 -0
  157. package/dist/hooks/slice-asset-update.cjs.map +1 -0
  158. package/dist/hooks/slice-asset-update.d.ts +3 -0
  159. package/dist/hooks/slice-asset-update.js +18 -0
  160. package/dist/hooks/slice-asset-update.js.map +1 -0
  161. package/dist/hooks/slice-create.cjs +77 -0
  162. package/dist/hooks/slice-create.cjs.map +1 -0
  163. package/dist/hooks/slice-create.d.ts +3 -0
  164. package/dist/hooks/slice-create.js +59 -0
  165. package/dist/hooks/slice-create.js.map +1 -0
  166. package/dist/hooks/slice-delete.cjs +41 -0
  167. package/dist/hooks/slice-delete.cjs.map +1 -0
  168. package/dist/hooks/slice-delete.d.ts +3 -0
  169. package/dist/hooks/slice-delete.js +24 -0
  170. package/dist/hooks/slice-delete.js.map +1 -0
  171. package/dist/hooks/slice-read.cjs +62 -0
  172. package/dist/hooks/slice-read.cjs.map +1 -0
  173. package/dist/hooks/slice-read.d.ts +3 -0
  174. package/dist/hooks/slice-read.js +44 -0
  175. package/dist/hooks/slice-read.js.map +1 -0
  176. package/dist/hooks/slice-rename.cjs +51 -0
  177. package/dist/hooks/slice-rename.cjs.map +1 -0
  178. package/dist/hooks/slice-rename.d.ts +3 -0
  179. package/dist/hooks/slice-rename.js +34 -0
  180. package/dist/hooks/slice-rename.js.map +1 -0
  181. package/dist/hooks/slice-update.cjs +14 -0
  182. package/dist/hooks/slice-update.cjs.map +1 -0
  183. package/dist/hooks/slice-update.d.ts +3 -0
  184. package/dist/hooks/slice-update.js +14 -0
  185. package/dist/hooks/slice-update.js.map +1 -0
  186. package/dist/hooks/sliceLibrary-read.cjs +52 -0
  187. package/dist/hooks/sliceLibrary-read.cjs.map +1 -0
  188. package/dist/hooks/sliceLibrary-read.d.ts +3 -0
  189. package/dist/hooks/sliceLibrary-read.js +34 -0
  190. package/dist/hooks/sliceLibrary-read.js.map +1 -0
  191. package/dist/hooks/sliceSimulator-setup-read.cjs +150 -0
  192. package/dist/hooks/sliceSimulator-setup-read.cjs.map +1 -0
  193. package/dist/hooks/sliceSimulator-setup-read.d.ts +3 -0
  194. package/dist/hooks/sliceSimulator-setup-read.js +150 -0
  195. package/dist/hooks/sliceSimulator-setup-read.js.map +1 -0
  196. package/dist/hooks/snippet-read.cjs +101 -0
  197. package/dist/hooks/snippet-read.cjs.map +1 -0
  198. package/dist/hooks/snippet-read.d.ts +3 -0
  199. package/dist/hooks/snippet-read.js +101 -0
  200. package/dist/hooks/snippet-read.js.map +1 -0
  201. package/dist/index.cjs +4 -0
  202. package/dist/index.cjs.map +1 -0
  203. package/dist/index.d.ts +3 -0
  204. package/dist/index.js +5 -0
  205. package/dist/index.js.map +1 -0
  206. package/dist/lib/buildCustomTypeAssetPath.cjs +29 -0
  207. package/dist/lib/buildCustomTypeAssetPath.cjs.map +1 -0
  208. package/dist/lib/buildCustomTypeAssetPath.d.ts +9 -0
  209. package/dist/lib/buildCustomTypeAssetPath.js +12 -0
  210. package/dist/lib/buildCustomTypeAssetPath.js.map +1 -0
  211. package/dist/lib/buildCustomTypeDirectoryPath.cjs +26 -0
  212. package/dist/lib/buildCustomTypeDirectoryPath.cjs.map +1 -0
  213. package/dist/lib/buildCustomTypeDirectoryPath.d.ts +8 -0
  214. package/dist/lib/buildCustomTypeDirectoryPath.js +9 -0
  215. package/dist/lib/buildCustomTypeDirectoryPath.js.map +1 -0
  216. package/dist/lib/buildCustomTypeLibraryDirectoryPath.cjs +7 -0
  217. package/dist/lib/buildCustomTypeLibraryDirectoryPath.cjs.map +1 -0
  218. package/dist/lib/buildCustomTypeLibraryDirectoryPath.d.ts +7 -0
  219. package/dist/lib/buildCustomTypeLibraryDirectoryPath.js +7 -0
  220. package/dist/lib/buildCustomTypeLibraryDirectoryPath.js.map +1 -0
  221. package/dist/lib/buildSliceAssetPath.cjs +34 -0
  222. package/dist/lib/buildSliceAssetPath.cjs.map +1 -0
  223. package/dist/lib/buildSliceAssetPath.d.ts +11 -0
  224. package/dist/lib/buildSliceAssetPath.js +17 -0
  225. package/dist/lib/buildSliceAssetPath.js.map +1 -0
  226. package/dist/lib/buildSliceDirectoryPath.cjs +30 -0
  227. package/dist/lib/buildSliceDirectoryPath.cjs.map +1 -0
  228. package/dist/lib/buildSliceDirectoryPath.d.ts +10 -0
  229. package/dist/lib/buildSliceDirectoryPath.js +13 -0
  230. package/dist/lib/buildSliceDirectoryPath.js.map +1 -0
  231. package/dist/lib/buildSliceLibraryDirectoryPath.cjs +7 -0
  232. package/dist/lib/buildSliceLibraryDirectoryPath.cjs.map +1 -0
  233. package/dist/lib/buildSliceLibraryDirectoryPath.d.ts +8 -0
  234. package/dist/lib/buildSliceLibraryDirectoryPath.js +7 -0
  235. package/dist/lib/buildSliceLibraryDirectoryPath.js.map +1 -0
  236. package/dist/lib/checkIsTypeScriptProject.cjs +9 -0
  237. package/dist/lib/checkIsTypeScriptProject.cjs.map +1 -0
  238. package/dist/lib/checkIsTypeScriptProject.d.ts +8 -0
  239. package/dist/lib/checkIsTypeScriptProject.js +9 -0
  240. package/dist/lib/checkIsTypeScriptProject.js.map +1 -0
  241. package/dist/lib/checkPathExists.cjs +30 -0
  242. package/dist/lib/checkPathExists.cjs.map +1 -0
  243. package/dist/lib/checkPathExists.d.ts +2 -0
  244. package/dist/lib/checkPathExists.js +13 -0
  245. package/dist/lib/checkPathExists.js.map +1 -0
  246. package/dist/lib/isSharedSliceModel.cjs +7 -0
  247. package/dist/lib/isSharedSliceModel.cjs.map +1 -0
  248. package/dist/lib/isSharedSliceModel.d.ts +335 -0
  249. package/dist/lib/isSharedSliceModel.js +7 -0
  250. package/dist/lib/isSharedSliceModel.js.map +1 -0
  251. package/dist/lib/pascalCase.cjs +8 -0
  252. package/dist/lib/pascalCase.cjs.map +1 -0
  253. package/dist/lib/pascalCase.d.ts +8 -0
  254. package/dist/lib/pascalCase.js +8 -0
  255. package/dist/lib/pascalCase.js.map +1 -0
  256. package/dist/lib/readJSONFile.cjs +26 -0
  257. package/dist/lib/readJSONFile.cjs.map +1 -0
  258. package/dist/lib/readJSONFile.d.ts +1 -0
  259. package/dist/lib/readJSONFile.js +9 -0
  260. package/dist/lib/readJSONFile.js.map +1 -0
  261. package/dist/lib/rejectIfNecessary.cjs +10 -0
  262. package/dist/lib/rejectIfNecessary.cjs.map +1 -0
  263. package/dist/lib/rejectIfNecessary.d.ts +1 -0
  264. package/dist/lib/rejectIfNecessary.js +10 -0
  265. package/dist/lib/rejectIfNecessary.js.map +1 -0
  266. package/dist/lib/updateSliceModelFile.cjs +33 -0
  267. package/dist/lib/updateSliceModelFile.cjs.map +1 -0
  268. package/dist/lib/updateSliceModelFile.d.ts +9 -0
  269. package/dist/lib/updateSliceModelFile.js +15 -0
  270. package/dist/lib/updateSliceModelFile.js.map +1 -0
  271. package/dist/lib/upsertGlobalContentTypes.cjs +55 -0
  272. package/dist/lib/upsertGlobalContentTypes.cjs.map +1 -0
  273. package/dist/lib/upsertGlobalContentTypes.d.ts +12 -0
  274. package/dist/lib/upsertGlobalContentTypes.js +37 -0
  275. package/dist/lib/upsertGlobalContentTypes.js.map +1 -0
  276. package/dist/lib/upsertSliceLibraryIndexFile.cjs +83 -0
  277. package/dist/lib/upsertSliceLibraryIndexFile.cjs.map +1 -0
  278. package/dist/lib/upsertSliceLibraryIndexFile.d.ts +7 -0
  279. package/dist/lib/upsertSliceLibraryIndexFile.js +65 -0
  280. package/dist/lib/upsertSliceLibraryIndexFile.js.map +1 -0
  281. package/dist/packages/adapter-nuxt/package.json.cjs +5 -0
  282. package/dist/packages/adapter-nuxt/package.json.cjs.map +1 -0
  283. package/dist/packages/adapter-nuxt/package.json.js +5 -0
  284. package/dist/packages/adapter-nuxt/package.json.js.map +1 -0
  285. package/dist/plugin.cjs +59 -0
  286. package/dist/plugin.cjs.map +1 -0
  287. package/dist/plugin.d.ts +2 -0
  288. package/dist/plugin.js +59 -0
  289. package/dist/plugin.js.map +1 -0
  290. package/dist/simulator/SliceSimulator.cjs +79 -0
  291. package/dist/simulator/SliceSimulator.cjs.map +1 -0
  292. package/dist/simulator/SliceSimulator.d.ts +34 -0
  293. package/dist/simulator/SliceSimulator.js +79 -0
  294. package/dist/simulator/SliceSimulator.js.map +1 -0
  295. package/dist/simulator/index.d.ts +2 -0
  296. package/dist/simulator.cjs +5 -0
  297. package/dist/simulator.cjs.map +1 -0
  298. package/dist/simulator.js +5 -0
  299. package/dist/simulator.js.map +1 -0
  300. package/dist/types.d.ts +5 -0
  301. package/package.json +107 -0
  302. package/src/constants.ts +5 -0
  303. package/src/hooks/customType-asset-delete.ts +18 -0
  304. package/src/hooks/customType-asset-read.ts +22 -0
  305. package/src/hooks/customType-asset-update.ts +20 -0
  306. package/src/hooks/customType-create.ts +45 -0
  307. package/src/hooks/customType-delete.ts +21 -0
  308. package/src/hooks/customType-read.ts +24 -0
  309. package/src/hooks/customType-rename.ts +3 -0
  310. package/src/hooks/customType-update.ts +3 -0
  311. package/src/hooks/customTypeLibrary-read.ts +53 -0
  312. package/src/hooks/project-init.ts +163 -0
  313. package/src/hooks/slice-asset-delete.ts +21 -0
  314. package/src/hooks/slice-asset-read.ts +25 -0
  315. package/src/hooks/slice-asset-update.ts +23 -0
  316. package/src/hooks/slice-create.ts +115 -0
  317. package/src/hooks/slice-delete.ts +41 -0
  318. package/src/hooks/slice-read.ts +69 -0
  319. package/src/hooks/slice-rename.ts +46 -0
  320. package/src/hooks/slice-update.ts +19 -0
  321. package/src/hooks/sliceLibrary-read.ts +48 -0
  322. package/src/hooks/sliceSimulator-setup-read.ts +209 -0
  323. package/src/hooks/snippet-read.ts +145 -0
  324. package/src/index.ts +4 -0
  325. package/src/lib/buildCustomTypeAssetPath.ts +24 -0
  326. package/src/lib/buildCustomTypeDirectoryPath.ts +20 -0
  327. package/src/lib/buildCustomTypeLibraryDirectoryPath.ts +13 -0
  328. package/src/lib/buildSliceAssetPath.ts +32 -0
  329. package/src/lib/buildSliceDirectoryPath.ts +26 -0
  330. package/src/lib/buildSliceLibraryDirectoryPath.ts +14 -0
  331. package/src/lib/checkIsTypeScriptProject.ts +17 -0
  332. package/src/lib/checkPathExists.ts +12 -0
  333. package/src/lib/isSharedSliceModel.ts +14 -0
  334. package/src/lib/pascalCase.ts +12 -0
  335. package/src/lib/readJSONFile.ts +7 -0
  336. package/src/lib/rejectIfNecessary.ts +16 -0
  337. package/src/lib/updateSliceModelFile.ts +33 -0
  338. package/src/lib/upsertGlobalContentTypes.ts +62 -0
  339. package/src/lib/upsertSliceLibraryIndexFile.ts +90 -0
  340. package/src/plugin.ts +63 -0
  341. package/src/simulator/SliceSimulator.ts +157 -0
  342. package/src/simulator/index.ts +2 -0
  343. package/src/types.ts +5 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is.js","sources":["../../../../../../../node_modules/node-fetch/src/utils/is.js"],"sourcesContent":["/**\n * Is.js\n *\n * Object type checks.\n */\n\nconst NAME = Symbol.toStringTag;\n\n/**\n * Check if `obj` is a URLSearchParams object\n * ref: https://github.com/node-fetch/node-fetch/issues/296#issuecomment-307598143\n * @param {*} object - Object to check for\n * @return {boolean}\n */\nexport const isURLSearchParameters = object => {\n\treturn (\n\t\ttypeof object === 'object' &&\n\t\ttypeof object.append === 'function' &&\n\t\ttypeof object.delete === 'function' &&\n\t\ttypeof object.get === 'function' &&\n\t\ttypeof object.getAll === 'function' &&\n\t\ttypeof object.has === 'function' &&\n\t\ttypeof object.set === 'function' &&\n\t\ttypeof object.sort === 'function' &&\n\t\tobject[NAME] === 'URLSearchParams'\n\t);\n};\n\n/**\n * Check if `object` is a W3C `Blob` object (which `File` inherits from)\n * @param {*} object - Object to check for\n * @return {boolean}\n */\nexport const isBlob = object => {\n\treturn (\n\t\tobject &&\n\t\ttypeof object === 'object' &&\n\t\ttypeof object.arrayBuffer === 'function' &&\n\t\ttypeof object.type === 'string' &&\n\t\ttypeof object.stream === 'function' &&\n\t\ttypeof object.constructor === 'function' &&\n\t\t/^(Blob|File)$/.test(object[NAME])\n\t);\n};\n\n/**\n * Check if `obj` is an instance of AbortSignal.\n * @param {*} object - Object to check for\n * @return {boolean}\n */\nexport const isAbortSignal = object => {\n\treturn (\n\t\ttypeof object === 'object' && (\n\t\t\tobject[NAME] === 'AbortSignal' ||\n\t\t\tobject[NAME] === 'EventTarget'\n\t\t)\n\t);\n};\n\n/**\n * isDomainOrSubdomain reports whether sub is a subdomain (or exact match) of\n * the parent domain.\n *\n * Both domains must already be in canonical form.\n * @param {string|URL} original\n * @param {string|URL} destination\n */\nexport const isDomainOrSubdomain = (destination, original) => {\n\tconst orig = new URL(original).hostname;\n\tconst dest = new URL(destination).hostname;\n\n\treturn orig === dest || orig.endsWith(`.${dest}`);\n};\n\n/**\n * isSameProtocol reports whether the two provided URLs use the same protocol.\n *\n * Both domains must already be in canonical form.\n * @param {string|URL} original\n * @param {string|URL} destination\n */\nexport const isSameProtocol = (destination, original) => {\n\tconst orig = new URL(original).protocol;\n\tconst dest = new URL(destination).protocol;\n\n\treturn orig === dest;\n};\n"],"names":[],"mappings":"AAMA,MAAM,OAAO,OAAO;AAQR,MAAC,wBAAwB,YAAU;AAC9C,SACC,OAAO,WAAW,YAClB,OAAO,OAAO,WAAW,cACzB,OAAO,OAAO,WAAW,cACzB,OAAO,OAAO,QAAQ,cACtB,OAAO,OAAO,WAAW,cACzB,OAAO,OAAO,QAAQ,cACtB,OAAO,OAAO,QAAQ,cACtB,OAAO,OAAO,SAAS,cACvB,OAAO,IAAI,MAAM;AAEnB;AAOY,MAAC,SAAS,YAAU;AAC/B,SACC,UACA,OAAO,WAAW,YAClB,OAAO,OAAO,gBAAgB,cAC9B,OAAO,OAAO,SAAS,YACvB,OAAO,OAAO,WAAW,cACzB,OAAO,OAAO,gBAAgB,cAC9B,gBAAgB,KAAK,OAAO,IAAI,CAAC;AAEnC;AAOY,MAAC,gBAAgB,YAAU;AACtC,SACC,OAAO,WAAW,aACjB,OAAO,IAAI,MAAM,iBACjB,OAAO,IAAI,MAAM;AAGpB;AAUY,MAAC,sBAAsB,CAAC,aAAa,aAAa;AAC7D,QAAM,OAAO,IAAI,IAAI,QAAQ,EAAE;AAC/B,QAAM,OAAO,IAAI,IAAI,WAAW,EAAE;AAElC,SAAO,SAAS,QAAQ,KAAK,SAAS,IAAI,MAAM;AACjD;AASY,MAAC,iBAAiB,CAAC,aAAa,aAAa;AACxD,QAAM,OAAO,IAAI,IAAI,QAAQ,EAAE;AAC/B,QAAM,OAAO,IAAI,IAAI,WAAW,EAAE;AAElC,SAAO,SAAS;AACjB;","x_google_ignoreList":[0]}
@@ -0,0 +1,356 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("node:fs");
4
+ require("node:path");
5
+ require("../../../node-domexception/index.cjs");
6
+ const file = require("../../../fetch-blob/file.cjs");
7
+ require("../../../fetch-blob/index.cjs");
8
+ const esm_min = require("../../../formdata-polyfill/esm.min.cjs");
9
+ let s = 0;
10
+ const S = {
11
+ START_BOUNDARY: s++,
12
+ HEADER_FIELD_START: s++,
13
+ HEADER_FIELD: s++,
14
+ HEADER_VALUE_START: s++,
15
+ HEADER_VALUE: s++,
16
+ HEADER_VALUE_ALMOST_DONE: s++,
17
+ HEADERS_ALMOST_DONE: s++,
18
+ PART_DATA_START: s++,
19
+ PART_DATA: s++,
20
+ END: s++
21
+ };
22
+ let f = 1;
23
+ const F = {
24
+ PART_BOUNDARY: f,
25
+ LAST_BOUNDARY: f *= 2
26
+ };
27
+ const LF = 10;
28
+ const CR = 13;
29
+ const SPACE = 32;
30
+ const HYPHEN = 45;
31
+ const COLON = 58;
32
+ const A = 97;
33
+ const Z = 122;
34
+ const lower = (c) => c | 32;
35
+ const noop = () => {
36
+ };
37
+ class MultipartParser {
38
+ /**
39
+ * @param {string} boundary
40
+ */
41
+ constructor(boundary) {
42
+ this.index = 0;
43
+ this.flags = 0;
44
+ this.onHeaderEnd = noop;
45
+ this.onHeaderField = noop;
46
+ this.onHeadersEnd = noop;
47
+ this.onHeaderValue = noop;
48
+ this.onPartBegin = noop;
49
+ this.onPartData = noop;
50
+ this.onPartEnd = noop;
51
+ this.boundaryChars = {};
52
+ boundary = "\r\n--" + boundary;
53
+ const ui8a = new Uint8Array(boundary.length);
54
+ for (let i = 0; i < boundary.length; i++) {
55
+ ui8a[i] = boundary.charCodeAt(i);
56
+ this.boundaryChars[ui8a[i]] = true;
57
+ }
58
+ this.boundary = ui8a;
59
+ this.lookbehind = new Uint8Array(this.boundary.length + 8);
60
+ this.state = S.START_BOUNDARY;
61
+ }
62
+ /**
63
+ * @param {Uint8Array} data
64
+ */
65
+ write(data) {
66
+ let i = 0;
67
+ const length_ = data.length;
68
+ let previousIndex = this.index;
69
+ let { lookbehind, boundary, boundaryChars, index, state, flags } = this;
70
+ const boundaryLength = this.boundary.length;
71
+ const boundaryEnd = boundaryLength - 1;
72
+ const bufferLength = data.length;
73
+ let c;
74
+ let cl;
75
+ const mark = (name) => {
76
+ this[name + "Mark"] = i;
77
+ };
78
+ const clear = (name) => {
79
+ delete this[name + "Mark"];
80
+ };
81
+ const callback = (callbackSymbol, start, end, ui8a) => {
82
+ if (start === void 0 || start !== end) {
83
+ this[callbackSymbol](ui8a && ui8a.subarray(start, end));
84
+ }
85
+ };
86
+ const dataCallback = (name, clear2) => {
87
+ const markSymbol = name + "Mark";
88
+ if (!(markSymbol in this)) {
89
+ return;
90
+ }
91
+ if (clear2) {
92
+ callback(name, this[markSymbol], i, data);
93
+ delete this[markSymbol];
94
+ } else {
95
+ callback(name, this[markSymbol], data.length, data);
96
+ this[markSymbol] = 0;
97
+ }
98
+ };
99
+ for (i = 0; i < length_; i++) {
100
+ c = data[i];
101
+ switch (state) {
102
+ case S.START_BOUNDARY:
103
+ if (index === boundary.length - 2) {
104
+ if (c === HYPHEN) {
105
+ flags |= F.LAST_BOUNDARY;
106
+ } else if (c !== CR) {
107
+ return;
108
+ }
109
+ index++;
110
+ break;
111
+ } else if (index - 1 === boundary.length - 2) {
112
+ if (flags & F.LAST_BOUNDARY && c === HYPHEN) {
113
+ state = S.END;
114
+ flags = 0;
115
+ } else if (!(flags & F.LAST_BOUNDARY) && c === LF) {
116
+ index = 0;
117
+ callback("onPartBegin");
118
+ state = S.HEADER_FIELD_START;
119
+ } else {
120
+ return;
121
+ }
122
+ break;
123
+ }
124
+ if (c !== boundary[index + 2]) {
125
+ index = -2;
126
+ }
127
+ if (c === boundary[index + 2]) {
128
+ index++;
129
+ }
130
+ break;
131
+ case S.HEADER_FIELD_START:
132
+ state = S.HEADER_FIELD;
133
+ mark("onHeaderField");
134
+ index = 0;
135
+ case S.HEADER_FIELD:
136
+ if (c === CR) {
137
+ clear("onHeaderField");
138
+ state = S.HEADERS_ALMOST_DONE;
139
+ break;
140
+ }
141
+ index++;
142
+ if (c === HYPHEN) {
143
+ break;
144
+ }
145
+ if (c === COLON) {
146
+ if (index === 1) {
147
+ return;
148
+ }
149
+ dataCallback("onHeaderField", true);
150
+ state = S.HEADER_VALUE_START;
151
+ break;
152
+ }
153
+ cl = lower(c);
154
+ if (cl < A || cl > Z) {
155
+ return;
156
+ }
157
+ break;
158
+ case S.HEADER_VALUE_START:
159
+ if (c === SPACE) {
160
+ break;
161
+ }
162
+ mark("onHeaderValue");
163
+ state = S.HEADER_VALUE;
164
+ case S.HEADER_VALUE:
165
+ if (c === CR) {
166
+ dataCallback("onHeaderValue", true);
167
+ callback("onHeaderEnd");
168
+ state = S.HEADER_VALUE_ALMOST_DONE;
169
+ }
170
+ break;
171
+ case S.HEADER_VALUE_ALMOST_DONE:
172
+ if (c !== LF) {
173
+ return;
174
+ }
175
+ state = S.HEADER_FIELD_START;
176
+ break;
177
+ case S.HEADERS_ALMOST_DONE:
178
+ if (c !== LF) {
179
+ return;
180
+ }
181
+ callback("onHeadersEnd");
182
+ state = S.PART_DATA_START;
183
+ break;
184
+ case S.PART_DATA_START:
185
+ state = S.PART_DATA;
186
+ mark("onPartData");
187
+ case S.PART_DATA:
188
+ previousIndex = index;
189
+ if (index === 0) {
190
+ i += boundaryEnd;
191
+ while (i < bufferLength && !(data[i] in boundaryChars)) {
192
+ i += boundaryLength;
193
+ }
194
+ i -= boundaryEnd;
195
+ c = data[i];
196
+ }
197
+ if (index < boundary.length) {
198
+ if (boundary[index] === c) {
199
+ if (index === 0) {
200
+ dataCallback("onPartData", true);
201
+ }
202
+ index++;
203
+ } else {
204
+ index = 0;
205
+ }
206
+ } else if (index === boundary.length) {
207
+ index++;
208
+ if (c === CR) {
209
+ flags |= F.PART_BOUNDARY;
210
+ } else if (c === HYPHEN) {
211
+ flags |= F.LAST_BOUNDARY;
212
+ } else {
213
+ index = 0;
214
+ }
215
+ } else if (index - 1 === boundary.length) {
216
+ if (flags & F.PART_BOUNDARY) {
217
+ index = 0;
218
+ if (c === LF) {
219
+ flags &= ~F.PART_BOUNDARY;
220
+ callback("onPartEnd");
221
+ callback("onPartBegin");
222
+ state = S.HEADER_FIELD_START;
223
+ break;
224
+ }
225
+ } else if (flags & F.LAST_BOUNDARY) {
226
+ if (c === HYPHEN) {
227
+ callback("onPartEnd");
228
+ state = S.END;
229
+ flags = 0;
230
+ } else {
231
+ index = 0;
232
+ }
233
+ } else {
234
+ index = 0;
235
+ }
236
+ }
237
+ if (index > 0) {
238
+ lookbehind[index - 1] = c;
239
+ } else if (previousIndex > 0) {
240
+ const _lookbehind = new Uint8Array(lookbehind.buffer, lookbehind.byteOffset, lookbehind.byteLength);
241
+ callback("onPartData", 0, previousIndex, _lookbehind);
242
+ previousIndex = 0;
243
+ mark("onPartData");
244
+ i--;
245
+ }
246
+ break;
247
+ case S.END:
248
+ break;
249
+ default:
250
+ throw new Error(`Unexpected state entered: ${state}`);
251
+ }
252
+ }
253
+ dataCallback("onHeaderField");
254
+ dataCallback("onHeaderValue");
255
+ dataCallback("onPartData");
256
+ this.index = index;
257
+ this.state = state;
258
+ this.flags = flags;
259
+ }
260
+ end() {
261
+ if (this.state === S.HEADER_FIELD_START && this.index === 0 || this.state === S.PART_DATA && this.index === this.boundary.length) {
262
+ this.onPartEnd();
263
+ } else if (this.state !== S.END) {
264
+ throw new Error("MultipartParser.end(): stream ended unexpectedly");
265
+ }
266
+ }
267
+ }
268
+ function _fileName(headerValue) {
269
+ const m = headerValue.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);
270
+ if (!m) {
271
+ return;
272
+ }
273
+ const match = m[2] || m[3] || "";
274
+ let filename = match.slice(match.lastIndexOf("\\") + 1);
275
+ filename = filename.replace(/%22/g, '"');
276
+ filename = filename.replace(/&#(\d{4});/g, (m2, code) => {
277
+ return String.fromCharCode(code);
278
+ });
279
+ return filename;
280
+ }
281
+ async function toFormData(Body, ct) {
282
+ if (!/multipart/i.test(ct)) {
283
+ throw new TypeError("Failed to fetch");
284
+ }
285
+ const m = ct.match(/boundary=(?:"([^"]+)"|([^;]+))/i);
286
+ if (!m) {
287
+ throw new TypeError("no or bad content-type header, no multipart boundary");
288
+ }
289
+ const parser = new MultipartParser(m[1] || m[2]);
290
+ let headerField;
291
+ let headerValue;
292
+ let entryValue;
293
+ let entryName;
294
+ let contentType;
295
+ let filename;
296
+ const entryChunks = [];
297
+ const formData = new esm_min.FormData();
298
+ const onPartData = (ui8a) => {
299
+ entryValue += decoder.decode(ui8a, { stream: true });
300
+ };
301
+ const appendToFile = (ui8a) => {
302
+ entryChunks.push(ui8a);
303
+ };
304
+ const appendFileToFormData = () => {
305
+ const file$1 = new file.File(entryChunks, filename, { type: contentType });
306
+ formData.append(entryName, file$1);
307
+ };
308
+ const appendEntryToFormData = () => {
309
+ formData.append(entryName, entryValue);
310
+ };
311
+ const decoder = new TextDecoder("utf-8");
312
+ decoder.decode();
313
+ parser.onPartBegin = function() {
314
+ parser.onPartData = onPartData;
315
+ parser.onPartEnd = appendEntryToFormData;
316
+ headerField = "";
317
+ headerValue = "";
318
+ entryValue = "";
319
+ entryName = "";
320
+ contentType = "";
321
+ filename = null;
322
+ entryChunks.length = 0;
323
+ };
324
+ parser.onHeaderField = function(ui8a) {
325
+ headerField += decoder.decode(ui8a, { stream: true });
326
+ };
327
+ parser.onHeaderValue = function(ui8a) {
328
+ headerValue += decoder.decode(ui8a, { stream: true });
329
+ };
330
+ parser.onHeaderEnd = function() {
331
+ headerValue += decoder.decode();
332
+ headerField = headerField.toLowerCase();
333
+ if (headerField === "content-disposition") {
334
+ const m2 = headerValue.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);
335
+ if (m2) {
336
+ entryName = m2[2] || m2[3] || "";
337
+ }
338
+ filename = _fileName(headerValue);
339
+ if (filename) {
340
+ parser.onPartData = appendToFile;
341
+ parser.onPartEnd = appendFileToFormData;
342
+ }
343
+ } else if (headerField === "content-type") {
344
+ contentType = headerValue;
345
+ }
346
+ headerValue = "";
347
+ headerField = "";
348
+ };
349
+ for await (const chunk of Body) {
350
+ parser.write(chunk);
351
+ }
352
+ parser.end();
353
+ return formData;
354
+ }
355
+ exports.toFormData = toFormData;
356
+ //# sourceMappingURL=multipart-parser.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multipart-parser.cjs","sources":["../../../../../../../node_modules/node-fetch/src/utils/multipart-parser.js"],"sourcesContent":["import {File} from 'fetch-blob/from.js';\nimport {FormData} from 'formdata-polyfill/esm.min.js';\n\nlet s = 0;\nconst S = {\n\tSTART_BOUNDARY: s++,\n\tHEADER_FIELD_START: s++,\n\tHEADER_FIELD: s++,\n\tHEADER_VALUE_START: s++,\n\tHEADER_VALUE: s++,\n\tHEADER_VALUE_ALMOST_DONE: s++,\n\tHEADERS_ALMOST_DONE: s++,\n\tPART_DATA_START: s++,\n\tPART_DATA: s++,\n\tEND: s++\n};\n\nlet f = 1;\nconst F = {\n\tPART_BOUNDARY: f,\n\tLAST_BOUNDARY: f *= 2\n};\n\nconst LF = 10;\nconst CR = 13;\nconst SPACE = 32;\nconst HYPHEN = 45;\nconst COLON = 58;\nconst A = 97;\nconst Z = 122;\n\nconst lower = c => c | 0x20;\n\nconst noop = () => {};\n\nclass MultipartParser {\n\t/**\n\t * @param {string} boundary\n\t */\n\tconstructor(boundary) {\n\t\tthis.index = 0;\n\t\tthis.flags = 0;\n\n\t\tthis.onHeaderEnd = noop;\n\t\tthis.onHeaderField = noop;\n\t\tthis.onHeadersEnd = noop;\n\t\tthis.onHeaderValue = noop;\n\t\tthis.onPartBegin = noop;\n\t\tthis.onPartData = noop;\n\t\tthis.onPartEnd = noop;\n\n\t\tthis.boundaryChars = {};\n\n\t\tboundary = '\\r\\n--' + boundary;\n\t\tconst ui8a = new Uint8Array(boundary.length);\n\t\tfor (let i = 0; i < boundary.length; i++) {\n\t\t\tui8a[i] = boundary.charCodeAt(i);\n\t\t\tthis.boundaryChars[ui8a[i]] = true;\n\t\t}\n\n\t\tthis.boundary = ui8a;\n\t\tthis.lookbehind = new Uint8Array(this.boundary.length + 8);\n\t\tthis.state = S.START_BOUNDARY;\n\t}\n\n\t/**\n\t * @param {Uint8Array} data\n\t */\n\twrite(data) {\n\t\tlet i = 0;\n\t\tconst length_ = data.length;\n\t\tlet previousIndex = this.index;\n\t\tlet {lookbehind, boundary, boundaryChars, index, state, flags} = this;\n\t\tconst boundaryLength = this.boundary.length;\n\t\tconst boundaryEnd = boundaryLength - 1;\n\t\tconst bufferLength = data.length;\n\t\tlet c;\n\t\tlet cl;\n\n\t\tconst mark = name => {\n\t\t\tthis[name + 'Mark'] = i;\n\t\t};\n\n\t\tconst clear = name => {\n\t\t\tdelete this[name + 'Mark'];\n\t\t};\n\n\t\tconst callback = (callbackSymbol, start, end, ui8a) => {\n\t\t\tif (start === undefined || start !== end) {\n\t\t\t\tthis[callbackSymbol](ui8a && ui8a.subarray(start, end));\n\t\t\t}\n\t\t};\n\n\t\tconst dataCallback = (name, clear) => {\n\t\t\tconst markSymbol = name + 'Mark';\n\t\t\tif (!(markSymbol in this)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (clear) {\n\t\t\t\tcallback(name, this[markSymbol], i, data);\n\t\t\t\tdelete this[markSymbol];\n\t\t\t} else {\n\t\t\t\tcallback(name, this[markSymbol], data.length, data);\n\t\t\t\tthis[markSymbol] = 0;\n\t\t\t}\n\t\t};\n\n\t\tfor (i = 0; i < length_; i++) {\n\t\t\tc = data[i];\n\n\t\t\tswitch (state) {\n\t\t\t\tcase S.START_BOUNDARY:\n\t\t\t\t\tif (index === boundary.length - 2) {\n\t\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\t\tflags |= F.LAST_BOUNDARY;\n\t\t\t\t\t\t} else if (c !== CR) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else if (index - 1 === boundary.length - 2) {\n\t\t\t\t\t\tif (flags & F.LAST_BOUNDARY && c === HYPHEN) {\n\t\t\t\t\t\t\tstate = S.END;\n\t\t\t\t\t\t\tflags = 0;\n\t\t\t\t\t\t} else if (!(flags & F.LAST_BOUNDARY) && c === LF) {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\tcallback('onPartBegin');\n\t\t\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c !== boundary[index + 2]) {\n\t\t\t\t\t\tindex = -2;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c === boundary[index + 2]) {\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_FIELD_START:\n\t\t\t\t\tstate = S.HEADER_FIELD;\n\t\t\t\t\tmark('onHeaderField');\n\t\t\t\t\tindex = 0;\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.HEADER_FIELD:\n\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\tclear('onHeaderField');\n\t\t\t\t\t\tstate = S.HEADERS_ALMOST_DONE;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tindex++;\n\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (c === COLON) {\n\t\t\t\t\t\tif (index === 1) {\n\t\t\t\t\t\t\t// empty header field\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tdataCallback('onHeaderField', true);\n\t\t\t\t\t\tstate = S.HEADER_VALUE_START;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tcl = lower(c);\n\t\t\t\t\tif (cl < A || cl > Z) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_VALUE_START:\n\t\t\t\t\tif (c === SPACE) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tmark('onHeaderValue');\n\t\t\t\t\tstate = S.HEADER_VALUE;\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.HEADER_VALUE:\n\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\tdataCallback('onHeaderValue', true);\n\t\t\t\t\t\tcallback('onHeaderEnd');\n\t\t\t\t\t\tstate = S.HEADER_VALUE_ALMOST_DONE;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADER_VALUE_ALMOST_DONE:\n\t\t\t\t\tif (c !== LF) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.HEADERS_ALMOST_DONE:\n\t\t\t\t\tif (c !== LF) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tcallback('onHeadersEnd');\n\t\t\t\t\tstate = S.PART_DATA_START;\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.PART_DATA_START:\n\t\t\t\t\tstate = S.PART_DATA;\n\t\t\t\t\tmark('onPartData');\n\t\t\t\t\t// falls through\n\t\t\t\tcase S.PART_DATA:\n\t\t\t\t\tpreviousIndex = index;\n\n\t\t\t\t\tif (index === 0) {\n\t\t\t\t\t\t// boyer-moore derrived algorithm to safely skip non-boundary data\n\t\t\t\t\t\ti += boundaryEnd;\n\t\t\t\t\t\twhile (i < bufferLength && !(data[i] in boundaryChars)) {\n\t\t\t\t\t\t\ti += boundaryLength;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ti -= boundaryEnd;\n\t\t\t\t\t\tc = data[i];\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index < boundary.length) {\n\t\t\t\t\t\tif (boundary[index] === c) {\n\t\t\t\t\t\t\tif (index === 0) {\n\t\t\t\t\t\t\t\tdataCallback('onPartData', true);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tindex++;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (index === boundary.length) {\n\t\t\t\t\t\tindex++;\n\t\t\t\t\t\tif (c === CR) {\n\t\t\t\t\t\t\t// CR = part boundary\n\t\t\t\t\t\t\tflags |= F.PART_BOUNDARY;\n\t\t\t\t\t\t} else if (c === HYPHEN) {\n\t\t\t\t\t\t\t// HYPHEN = end boundary\n\t\t\t\t\t\t\tflags |= F.LAST_BOUNDARY;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else if (index - 1 === boundary.length) {\n\t\t\t\t\t\tif (flags & F.PART_BOUNDARY) {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\tif (c === LF) {\n\t\t\t\t\t\t\t\t// unset the PART_BOUNDARY flag\n\t\t\t\t\t\t\t\tflags &= ~F.PART_BOUNDARY;\n\t\t\t\t\t\t\t\tcallback('onPartEnd');\n\t\t\t\t\t\t\t\tcallback('onPartBegin');\n\t\t\t\t\t\t\t\tstate = S.HEADER_FIELD_START;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else if (flags & F.LAST_BOUNDARY) {\n\t\t\t\t\t\t\tif (c === HYPHEN) {\n\t\t\t\t\t\t\t\tcallback('onPartEnd');\n\t\t\t\t\t\t\t\tstate = S.END;\n\t\t\t\t\t\t\t\tflags = 0;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tindex = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (index > 0) {\n\t\t\t\t\t\t// when matching a possible boundary, keep a lookbehind reference\n\t\t\t\t\t\t// in case it turns out to be a false lead\n\t\t\t\t\t\tlookbehind[index - 1] = c;\n\t\t\t\t\t} else if (previousIndex > 0) {\n\t\t\t\t\t\t// if our boundary turned out to be rubbish, the captured lookbehind\n\t\t\t\t\t\t// belongs to partData\n\t\t\t\t\t\tconst _lookbehind = new Uint8Array(lookbehind.buffer, lookbehind.byteOffset, lookbehind.byteLength);\n\t\t\t\t\t\tcallback('onPartData', 0, previousIndex, _lookbehind);\n\t\t\t\t\t\tpreviousIndex = 0;\n\t\t\t\t\t\tmark('onPartData');\n\n\t\t\t\t\t\t// reconsider the current character even so it interrupted the sequence\n\t\t\t\t\t\t// it could be the beginning of a new sequence\n\t\t\t\t\t\ti--;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase S.END:\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unexpected state entered: ${state}`);\n\t\t\t}\n\t\t}\n\n\t\tdataCallback('onHeaderField');\n\t\tdataCallback('onHeaderValue');\n\t\tdataCallback('onPartData');\n\n\t\t// Update properties for the next call\n\t\tthis.index = index;\n\t\tthis.state = state;\n\t\tthis.flags = flags;\n\t}\n\n\tend() {\n\t\tif ((this.state === S.HEADER_FIELD_START && this.index === 0) ||\n\t\t\t(this.state === S.PART_DATA && this.index === this.boundary.length)) {\n\t\t\tthis.onPartEnd();\n\t\t} else if (this.state !== S.END) {\n\t\t\tthrow new Error('MultipartParser.end(): stream ended unexpectedly');\n\t\t}\n\t}\n}\n\nfunction _fileName(headerValue) {\n\t// matches either a quoted-string or a token (RFC 2616 section 19.5.1)\n\tconst m = headerValue.match(/\\bfilename=(\"(.*?)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))($|;\\s)/i);\n\tif (!m) {\n\t\treturn;\n\t}\n\n\tconst match = m[2] || m[3] || '';\n\tlet filename = match.slice(match.lastIndexOf('\\\\') + 1);\n\tfilename = filename.replace(/%22/g, '\"');\n\tfilename = filename.replace(/&#(\\d{4});/g, (m, code) => {\n\t\treturn String.fromCharCode(code);\n\t});\n\treturn filename;\n}\n\nexport async function toFormData(Body, ct) {\n\tif (!/multipart/i.test(ct)) {\n\t\tthrow new TypeError('Failed to fetch');\n\t}\n\n\tconst m = ct.match(/boundary=(?:\"([^\"]+)\"|([^;]+))/i);\n\n\tif (!m) {\n\t\tthrow new TypeError('no or bad content-type header, no multipart boundary');\n\t}\n\n\tconst parser = new MultipartParser(m[1] || m[2]);\n\n\tlet headerField;\n\tlet headerValue;\n\tlet entryValue;\n\tlet entryName;\n\tlet contentType;\n\tlet filename;\n\tconst entryChunks = [];\n\tconst formData = new FormData();\n\n\tconst onPartData = ui8a => {\n\t\tentryValue += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tconst appendToFile = ui8a => {\n\t\tentryChunks.push(ui8a);\n\t};\n\n\tconst appendFileToFormData = () => {\n\t\tconst file = new File(entryChunks, filename, {type: contentType});\n\t\tformData.append(entryName, file);\n\t};\n\n\tconst appendEntryToFormData = () => {\n\t\tformData.append(entryName, entryValue);\n\t};\n\n\tconst decoder = new TextDecoder('utf-8');\n\tdecoder.decode();\n\n\tparser.onPartBegin = function () {\n\t\tparser.onPartData = onPartData;\n\t\tparser.onPartEnd = appendEntryToFormData;\n\n\t\theaderField = '';\n\t\theaderValue = '';\n\t\tentryValue = '';\n\t\tentryName = '';\n\t\tcontentType = '';\n\t\tfilename = null;\n\t\tentryChunks.length = 0;\n\t};\n\n\tparser.onHeaderField = function (ui8a) {\n\t\theaderField += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tparser.onHeaderValue = function (ui8a) {\n\t\theaderValue += decoder.decode(ui8a, {stream: true});\n\t};\n\n\tparser.onHeaderEnd = function () {\n\t\theaderValue += decoder.decode();\n\t\theaderField = headerField.toLowerCase();\n\n\t\tif (headerField === 'content-disposition') {\n\t\t\t// matches either a quoted-string or a token (RFC 2616 section 19.5.1)\n\t\t\tconst m = headerValue.match(/\\bname=(\"([^\"]*)\"|([^()<>@,;:\\\\\"/[\\]?={}\\s\\t]+))/i);\n\n\t\t\tif (m) {\n\t\t\t\tentryName = m[2] || m[3] || '';\n\t\t\t}\n\n\t\t\tfilename = _fileName(headerValue);\n\n\t\t\tif (filename) {\n\t\t\t\tparser.onPartData = appendToFile;\n\t\t\t\tparser.onPartEnd = appendFileToFormData;\n\t\t\t}\n\t\t} else if (headerField === 'content-type') {\n\t\t\tcontentType = headerValue;\n\t\t}\n\n\t\theaderValue = '';\n\t\theaderField = '';\n\t};\n\n\tfor await (const chunk of Body) {\n\t\tparser.write(chunk);\n\t}\n\n\tparser.end();\n\n\treturn formData;\n}\n"],"names":["clear","m","FormData","file","File"],"mappings":"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","x_google_ignoreList":[0]}