aptechka 0.10.1 → 0.11.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 (422) hide show
  1. package/{lib → client-lib}/slicer/SlicerElement.d.ts +1 -1
  2. package/package.json +433 -406
  3. package/server-lib/optimizer/FFmpeg.d.ts +10 -0
  4. package/server-lib/optimizer/generateFavicon.d.ts +4 -0
  5. package/server-lib/optimizer/generateSequence.d.ts +3 -0
  6. package/server-lib/optimizer/generateSprite.d.ts +4 -0
  7. package/server-lib/optimizer/index.d.ts +10 -0
  8. package/server-lib/optimizer/index.js +383 -0
  9. package/server-lib/optimizer/inputFiles.d.ts +26 -0
  10. package/server-lib/optimizer/optimize.d.ts +13 -0
  11. package/server-lib/optimizer/optimizeImage.d.ts +4 -0
  12. package/server-lib/optimizer/optimizeVideo.d.ts +3 -0
  13. package/server-lib/optimizer/optimizer.d.ts +5 -0
  14. package/server-lib/optimizer/types.d.ts +47 -0
  15. package/server-lib/utils/fs.d.ts +11 -0
  16. package/server-lib/utils/index.d.ts +3 -0
  17. package/server-lib/utils/index.js +54 -0
  18. package/server-lib/utils/path.d.ts +3 -0
  19. package/server-lib/utils/types.d.ts +8 -0
  20. /package/{lib → client-lib}/Animation-BInSRYNr.cjs +0 -0
  21. /package/{lib → client-lib}/Animation-uimN7sdT.js +0 -0
  22. /package/{lib → client-lib}/Composed-Fa7owymK.js +0 -0
  23. /package/{lib → client-lib}/Composed-Iihn8fT4.cjs +0 -0
  24. /package/{lib → client-lib}/Damped-Da3EnNN4.cjs +0 -0
  25. /package/{lib → client-lib}/Damped-yrNXlkDE.js +0 -0
  26. /package/{lib → client-lib}/Derived-CNbsNMn_.cjs +0 -0
  27. /package/{lib → client-lib}/Derived-rInkx3e4.js +0 -0
  28. /package/{lib → client-lib}/ElementConstructor-OK-6OPjh.cjs +0 -0
  29. /package/{lib → client-lib}/ElementConstructor-rValMo8f.js +0 -0
  30. /package/{lib → client-lib}/SourceManager--L_rA28b.js +0 -0
  31. /package/{lib → client-lib}/SourceManager-D6D2LVKf.cjs +0 -0
  32. /package/{lib → client-lib}/Store-Cr3VaD9G.cjs +0 -0
  33. /package/{lib → client-lib}/Store-Qr3SNOSf.js +0 -0
  34. /package/{lib → client-lib}/Tweened-CjgvoOwL.js +0 -0
  35. /package/{lib → client-lib}/Tweened-DksN-Rz6.cjs +0 -0
  36. /package/{lib → client-lib}/Viewport-BBYt1Ivy.cjs +0 -0
  37. /package/{lib → client-lib}/Viewport-Cgtq2I_K.js +0 -0
  38. /package/{lib → client-lib}/_createStore-C75y9luu.cjs +0 -0
  39. /package/{lib → client-lib}/_createStore-D3qHYaSz.js +0 -0
  40. /package/{lib → client-lib}/accordion/AccordionElement.d.ts +0 -0
  41. /package/{lib → client-lib}/accordion/index.cjs +0 -0
  42. /package/{lib → client-lib}/accordion/index.d.ts +0 -0
  43. /package/{lib → client-lib}/accordion/index.js +0 -0
  44. /package/{lib → client-lib}/animation/Animation.d.ts +0 -0
  45. /package/{lib → client-lib}/animation/Damped.d.ts +0 -0
  46. /package/{lib → client-lib}/animation/Tweened.d.ts +0 -0
  47. /package/{lib → client-lib}/animation/index.cjs +0 -0
  48. /package/{lib → client-lib}/animation/index.d.ts +0 -0
  49. /package/{lib → client-lib}/animation/index.js +0 -0
  50. /package/{lib → client-lib}/attribute/index.cjs +0 -0
  51. /package/{lib → client-lib}/attribute/index.d.ts +0 -0
  52. /package/{lib → client-lib}/attribute/index.js +0 -0
  53. /package/{lib → client-lib}/attributes-69we3byR.js +0 -0
  54. /package/{lib → client-lib}/attributes-Bf2svn4j.cjs +0 -0
  55. /package/{lib → client-lib}/browser-0zX67oeU.js +0 -0
  56. /package/{lib → client-lib}/browser-CpzFX2xg.cjs +0 -0
  57. /package/{lib → client-lib}/canvas/index.cjs +0 -0
  58. /package/{lib → client-lib}/canvas/index.d.ts +0 -0
  59. /package/{lib → client-lib}/canvas/index.js +0 -0
  60. /package/{lib → client-lib}/canvas-CU5Xjahf.cjs +0 -0
  61. /package/{lib → client-lib}/canvas-DeZ0SLUJ.js +0 -0
  62. /package/{lib → client-lib}/checkbox/index.cjs +0 -0
  63. /package/{lib → client-lib}/checkbox/index.d.ts +0 -0
  64. /package/{lib → client-lib}/checkbox/index.js +0 -0
  65. /package/{lib → client-lib}/class-linked-status/index.cjs +0 -0
  66. /package/{lib → client-lib}/class-linked-status/index.d.ts +0 -0
  67. /package/{lib → client-lib}/class-linked-status/index.js +0 -0
  68. /package/{lib → client-lib}/connector/index.cjs +0 -0
  69. /package/{lib → client-lib}/connector/index.d.ts +0 -0
  70. /package/{lib → client-lib}/connector/index.js +0 -0
  71. /package/{lib → client-lib}/controls/AutoplayControls.d.ts +0 -0
  72. /package/{lib → client-lib}/controls/Controls.d.ts +0 -0
  73. /package/{lib → client-lib}/controls/DragControls.d.ts +0 -0
  74. /package/{lib → client-lib}/controls/KeyboardControls.d.ts +0 -0
  75. /package/{lib → client-lib}/controls/WheelControls.d.ts +0 -0
  76. /package/{lib → client-lib}/controls/index.cjs +0 -0
  77. /package/{lib → client-lib}/controls/index.d.ts +0 -0
  78. /package/{lib → client-lib}/controls/index.js +0 -0
  79. /package/{lib → client-lib}/coordinates-CgdGoSYs.js +0 -0
  80. /package/{lib → client-lib}/coordinates-D8Np3cPD.cjs +0 -0
  81. /package/{lib → client-lib}/counter/index.d.ts +0 -0
  82. /package/{lib → client-lib}/createStylesheet-9nksoWW0.cjs +0 -0
  83. /package/{lib → client-lib}/createStylesheet-BrFGJ8Q7.js +0 -0
  84. /package/{lib → client-lib}/createTheme-CHnsCgAr.js +0 -0
  85. /package/{lib → client-lib}/createTheme-Cfaw9UmV.cjs +0 -0
  86. /package/{lib → client-lib}/css-property/index.cjs +0 -0
  87. /package/{lib → client-lib}/css-property/index.d.ts +0 -0
  88. /package/{lib → client-lib}/css-property/index.js +0 -0
  89. /package/{lib → client-lib}/css-unit-parser/index.cjs +0 -0
  90. /package/{lib → client-lib}/css-unit-parser/index.d.ts +0 -0
  91. /package/{lib → client-lib}/css-unit-parser/index.js +0 -0
  92. /package/{lib → client-lib}/css-value-parser/index.cjs +0 -0
  93. /package/{lib → client-lib}/css-value-parser/index.d.ts +0 -0
  94. /package/{lib → client-lib}/css-value-parser/index.js +0 -0
  95. /package/{lib → client-lib}/dev/index.cjs +0 -0
  96. /package/{lib → client-lib}/dev/index.d.ts +0 -0
  97. /package/{lib → client-lib}/dev/index.js +0 -0
  98. /package/{lib → client-lib}/device/Device.d.ts +0 -0
  99. /package/{lib → client-lib}/device/Viewport.d.ts +0 -0
  100. /package/{lib → client-lib}/device/index.cjs +0 -0
  101. /package/{lib → client-lib}/device/index.d.ts +0 -0
  102. /package/{lib → client-lib}/device/index.js +0 -0
  103. /package/{lib → client-lib}/dom-JBOkFLTh.cjs +0 -0
  104. /package/{lib → client-lib}/dom-P5QbAASX.js +0 -0
  105. /package/{lib → client-lib}/easings-BKi40vHz.js +0 -0
  106. /package/{lib → client-lib}/easings-DsS5-Kqc.cjs +0 -0
  107. /package/{lib → client-lib}/element-constructor/ElementConstructor.d.ts +0 -0
  108. /package/{lib → client-lib}/element-constructor/createStylesheet.d.ts +0 -0
  109. /package/{lib → client-lib}/element-constructor/createTheme.d.ts +0 -0
  110. /package/{lib → client-lib}/element-constructor/index.cjs +0 -0
  111. /package/{lib → client-lib}/element-constructor/index.d.ts +0 -0
  112. /package/{lib → client-lib}/element-constructor/index.js +0 -0
  113. /package/{lib → client-lib}/element-constructor/knownSvgTags.d.ts +0 -0
  114. /package/{lib → client-lib}/element-constructor/tags.d.ts +0 -0
  115. /package/{lib → client-lib}/element-resizer/index.cjs +0 -0
  116. /package/{lib → client-lib}/element-resizer/index.d.ts +0 -0
  117. /package/{lib → client-lib}/element-resizer/index.js +0 -0
  118. /package/{lib → client-lib}/en3/core/En3Raycaster.d.ts +0 -0
  119. /package/{lib → client-lib}/en3/core/En3View.d.ts +0 -0
  120. /package/{lib → client-lib}/en3/core/en3.d.ts +0 -0
  121. /package/{lib → client-lib}/en3/core/en3Cache.d.ts +0 -0
  122. /package/{lib → client-lib}/en3/helpers/En3ComposerManager.d.ts +0 -0
  123. /package/{lib → client-lib}/en3/helpers/En3GridHelper.d.ts +0 -0
  124. /package/{lib → client-lib}/en3/helpers/En3Helpers.d.ts +0 -0
  125. /package/{lib → client-lib}/en3/helpers/En3Object3dManager.d.ts +0 -0
  126. /package/{lib → client-lib}/en3/helpers/En3OrbitControls.d.ts +0 -0
  127. /package/{lib → client-lib}/en3/helpers/En3ParametersManager.d.ts +0 -0
  128. /package/{lib → client-lib}/en3/helpers/En3TransformControls.d.ts +0 -0
  129. /package/{lib → client-lib}/en3/helpers/index.cjs +0 -0
  130. /package/{lib → client-lib}/en3/helpers/index.d.ts +0 -0
  131. /package/{lib → client-lib}/en3/helpers/index.js +0 -0
  132. /package/{lib → client-lib}/en3/index.cjs +0 -0
  133. /package/{lib → client-lib}/en3/index.d.ts +0 -0
  134. /package/{lib → client-lib}/en3/index.js +0 -0
  135. /package/{lib → client-lib}/en3/libs/MeshoptDecoder.d.ts +0 -0
  136. /package/{lib → client-lib}/en3/libs/index.cjs +0 -0
  137. /package/{lib → client-lib}/en3/libs/index.d.ts +0 -0
  138. /package/{lib → client-lib}/en3/libs/index.js +0 -0
  139. /package/{lib → client-lib}/en3/loaders/En3GLTFLoader.d.ts +0 -0
  140. /package/{lib → client-lib}/en3/loaders/En3TextureLoader.d.ts +0 -0
  141. /package/{lib → client-lib}/en3/loaders/index.cjs +0 -0
  142. /package/{lib → client-lib}/en3/loaders/index.d.ts +0 -0
  143. /package/{lib → client-lib}/en3/loaders/index.js +0 -0
  144. /package/{lib → client-lib}/en3/loaders/loaders.d.ts +0 -0
  145. /package/{lib → client-lib}/en3/misc/En3ModifiedMaterial.d.ts +0 -0
  146. /package/{lib → client-lib}/en3/misc/En3SourceManager.d.ts +0 -0
  147. /package/{lib → client-lib}/en3/misc/index.cjs +0 -0
  148. /package/{lib → client-lib}/en3/misc/index.d.ts +0 -0
  149. /package/{lib → client-lib}/en3/misc/index.js +0 -0
  150. /package/{lib → client-lib}/en3/objects/En3Clip.d.ts +0 -0
  151. /package/{lib → client-lib}/en3/objects/En3ClipHelpers.d.ts +0 -0
  152. /package/{lib → client-lib}/en3/objects/En3GLTF.d.ts +0 -0
  153. /package/{lib → client-lib}/en3/objects/En3Image.d.ts +0 -0
  154. /package/{lib → client-lib}/en3/objects/En3ImageLike.d.ts +0 -0
  155. /package/{lib → client-lib}/en3/objects/En3SourceConsumer.d.ts +0 -0
  156. /package/{lib → client-lib}/en3/objects/En3Video.d.ts +0 -0
  157. /package/{lib → client-lib}/en3/objects/fluid/Advection.d.ts +0 -0
  158. /package/{lib → client-lib}/en3/objects/fluid/Divergence.d.ts +0 -0
  159. /package/{lib → client-lib}/en3/objects/fluid/En3Fluid.d.ts +0 -0
  160. /package/{lib → client-lib}/en3/objects/fluid/En3FluidElement.d.ts +0 -0
  161. /package/{lib → client-lib}/en3/objects/fluid/En3FluidPointer.d.ts +0 -0
  162. /package/{lib → client-lib}/en3/objects/fluid/ExternalForce.d.ts +0 -0
  163. /package/{lib → client-lib}/en3/objects/fluid/Poisson.d.ts +0 -0
  164. /package/{lib → client-lib}/en3/objects/fluid/Pressure.d.ts +0 -0
  165. /package/{lib → client-lib}/en3/objects/fluid/ShaderPass.d.ts +0 -0
  166. /package/{lib → client-lib}/en3/objects/fluid/Simulation.d.ts +0 -0
  167. /package/{lib → client-lib}/en3/objects/fluid/Viscous.d.ts +0 -0
  168. /package/{lib → client-lib}/en3/objects/fluid/index.d.ts +0 -0
  169. /package/{lib → client-lib}/en3/objects/index.d.ts +0 -0
  170. /package/{lib → client-lib}/en3/utils/coverTexture.d.ts +0 -0
  171. /package/{lib → client-lib}/en3/utils/dispose.d.ts +0 -0
  172. /package/{lib → client-lib}/en3/utils/getCurrentViewport.d.ts +0 -0
  173. /package/{lib → client-lib}/en3/utils/index.cjs +0 -0
  174. /package/{lib → client-lib}/en3/utils/index.d.ts +0 -0
  175. /package/{lib → client-lib}/en3/utils/index.js +0 -0
  176. /package/{lib → client-lib}/en3/utils/traverseMaterials.d.ts +0 -0
  177. /package/{lib → client-lib}/en3/utils/traverseMeshes.d.ts +0 -0
  178. /package/{lib → client-lib}/en3-CBBYE8rb.cjs +0 -0
  179. /package/{lib → client-lib}/en3-THFHEReu.js +0 -0
  180. /package/{lib → client-lib}/events-BGwqaxVW.cjs +0 -0
  181. /package/{lib → client-lib}/events-CJTUMSLU.js +0 -0
  182. /package/{lib → client-lib}/file-EevnUtRj.cjs +0 -0
  183. /package/{lib → client-lib}/file-lxi_oXJf.js +0 -0
  184. /package/{lib → client-lib}/function-C10DGppn.js +0 -0
  185. /package/{lib → client-lib}/function-MthRj-GJ.cjs +0 -0
  186. /package/{lib → client-lib}/gestures-D2Fdra_G.js +0 -0
  187. /package/{lib → client-lib}/gestures-DHLrn6Q8.cjs +0 -0
  188. /package/{lib → client-lib}/globals-DMjysUXI.js +0 -0
  189. /package/{lib → client-lib}/globals-bYKki-b9.cjs +0 -0
  190. /package/{lib → client-lib}/image/index.cjs +0 -0
  191. /package/{lib → client-lib}/image/index.d.ts +0 -0
  192. /package/{lib → client-lib}/image/index.js +0 -0
  193. /package/{lib → client-lib}/index-3R8YL-P3.js +0 -0
  194. /package/{lib → client-lib}/index-CyQAdqFu.cjs +0 -0
  195. /package/{lib → client-lib}/instantiate-D19vO5Ku.js +0 -0
  196. /package/{lib → client-lib}/instantiate-DF1bIAXR.cjs +0 -0
  197. /package/{lib → client-lib}/intersector/index.cjs +0 -0
  198. /package/{lib → client-lib}/intersector/index.d.ts +0 -0
  199. /package/{lib → client-lib}/intersector/index.js +0 -0
  200. /package/{lib → client-lib}/jsx/ComponentElement.d.ts +0 -0
  201. /package/{lib → client-lib}/jsx/globals.d.ts +0 -0
  202. /package/{lib → client-lib}/jsx/h.d.ts +0 -0
  203. /package/{lib → client-lib}/jsx/hooks/animation/createDamped.d.ts +0 -0
  204. /package/{lib → client-lib}/jsx/hooks/animation/createTweened.d.ts +0 -0
  205. /package/{lib → client-lib}/jsx/hooks/animation/index.cjs +0 -0
  206. /package/{lib → client-lib}/jsx/hooks/animation/index.d.ts +0 -0
  207. /package/{lib → client-lib}/jsx/hooks/animation/index.js +0 -0
  208. /package/{lib → client-lib}/jsx/hooks/basic/_createStore.d.ts +0 -0
  209. /package/{lib → client-lib}/jsx/hooks/basic/attachInternals.d.ts +0 -0
  210. /package/{lib → client-lib}/jsx/hooks/basic/attachShadow.d.ts +0 -0
  211. /package/{lib → client-lib}/jsx/hooks/basic/attachStylesheet.d.ts +0 -0
  212. /package/{lib → client-lib}/jsx/hooks/basic/createContext.d.ts +0 -0
  213. /package/{lib → client-lib}/jsx/hooks/basic/createRef.d.ts +0 -0
  214. /package/{lib → client-lib}/jsx/hooks/basic/onConnect.d.ts +0 -0
  215. /package/{lib → client-lib}/jsx/hooks/basic/onDisconnect.d.ts +0 -0
  216. /package/{lib → client-lib}/jsx/hooks/basic/onStoreChange.d.ts +0 -0
  217. /package/{lib → client-lib}/jsx/hooks/onAnimationFrame.cjs +0 -0
  218. /package/{lib → client-lib}/jsx/hooks/onAnimationFrame.d.ts +0 -0
  219. /package/{lib → client-lib}/jsx/hooks/onAnimationFrame.js +0 -0
  220. /package/{lib → client-lib}/jsx/hooks/onElementResize.cjs +0 -0
  221. /package/{lib → client-lib}/jsx/hooks/onElementResize.d.ts +0 -0
  222. /package/{lib → client-lib}/jsx/hooks/onElementResize.js +0 -0
  223. /package/{lib → client-lib}/jsx/hooks/onIntersection.cjs +0 -0
  224. /package/{lib → client-lib}/jsx/hooks/onIntersection.d.ts +0 -0
  225. /package/{lib → client-lib}/jsx/hooks/onIntersection.js +0 -0
  226. /package/{lib → client-lib}/jsx/hooks/onWindowResize.cjs +0 -0
  227. /package/{lib → client-lib}/jsx/hooks/onWindowResize.d.ts +0 -0
  228. /package/{lib → client-lib}/jsx/hooks/onWindowResize.js +0 -0
  229. /package/{lib → client-lib}/jsx/hooks/store/createCached.d.ts +0 -0
  230. /package/{lib → client-lib}/jsx/hooks/store/createComposed.d.ts +0 -0
  231. /package/{lib → client-lib}/jsx/hooks/store/createDerived.d.ts +0 -0
  232. /package/{lib → client-lib}/jsx/hooks/store/createDerivedArray.d.ts +0 -0
  233. /package/{lib → client-lib}/jsx/hooks/store/createResource.d.ts +0 -0
  234. /package/{lib → client-lib}/jsx/hooks/store/createStore.d.ts +0 -0
  235. /package/{lib → client-lib}/jsx/hooks/store/index.cjs +0 -0
  236. /package/{lib → client-lib}/jsx/hooks/store/index.d.ts +0 -0
  237. /package/{lib → client-lib}/jsx/hooks/store/index.js +0 -0
  238. /package/{lib → client-lib}/jsx/hooks/watchAttribute.cjs +0 -0
  239. /package/{lib → client-lib}/jsx/hooks/watchAttribute.d.ts +0 -0
  240. /package/{lib → client-lib}/jsx/hooks/watchAttribute.js +0 -0
  241. /package/{lib → client-lib}/jsx/hooks/watchCSSProperty.cjs +0 -0
  242. /package/{lib → client-lib}/jsx/hooks/watchCSSProperty.d.ts +0 -0
  243. /package/{lib → client-lib}/jsx/hooks/watchCSSProperty.js +0 -0
  244. /package/{lib → client-lib}/jsx/index.cjs +0 -0
  245. /package/{lib → client-lib}/jsx/index.d.ts +0 -0
  246. /package/{lib → client-lib}/jsx/index.js +0 -0
  247. /package/{lib → client-lib}/jsx/instantiate.d.ts +0 -0
  248. /package/{lib → client-lib}/jsx/register.d.ts +0 -0
  249. /package/{lib → client-lib}/jsx/render.d.ts +0 -0
  250. /package/{lib → client-lib}/jsx/type.d.ts +0 -0
  251. /package/{lib → client-lib}/ladder/index.cjs +0 -0
  252. /package/{lib → client-lib}/ladder/index.d.ts +0 -0
  253. /package/{lib → client-lib}/ladder/index.js +0 -0
  254. /package/{lib → client-lib}/layout-8ryRAMGJ.cjs +0 -0
  255. /package/{lib → client-lib}/layout-HoBT_Da2.js +0 -0
  256. /package/{lib → client-lib}/layout-box/index.cjs +0 -0
  257. /package/{lib → client-lib}/layout-box/index.d.ts +0 -0
  258. /package/{lib → client-lib}/layout-box/index.js +0 -0
  259. /package/{lib → client-lib}/libs/path-data-polyfill.d.ts +0 -0
  260. /package/{lib → client-lib}/loading/index.cjs +0 -0
  261. /package/{lib → client-lib}/loading/index.d.ts +0 -0
  262. /package/{lib → client-lib}/loading/index.js +0 -0
  263. /package/{lib → client-lib}/math-BOBiC4TN.js +0 -0
  264. /package/{lib → client-lib}/math-GDWEqu7y.cjs +0 -0
  265. /package/{lib → client-lib}/media/index.cjs +0 -0
  266. /package/{lib → client-lib}/media/index.d.ts +0 -0
  267. /package/{lib → client-lib}/media/index.js +0 -0
  268. /package/{lib → client-lib}/modal/ModalElement.d.ts +0 -0
  269. /package/{lib → client-lib}/modal/index.cjs +0 -0
  270. /package/{lib → client-lib}/modal/index.d.ts +0 -0
  271. /package/{lib → client-lib}/modal/index.js +0 -0
  272. /package/{lib → client-lib}/morph/Link.d.ts +0 -0
  273. /package/{lib → client-lib}/morph/Morph.d.ts +0 -0
  274. /package/{lib → client-lib}/morph/index.cjs +0 -0
  275. /package/{lib → client-lib}/morph/index.d.ts +0 -0
  276. /package/{lib → client-lib}/morph/index.js +0 -0
  277. /package/{lib → client-lib}/notifier/index.cjs +0 -0
  278. /package/{lib → client-lib}/notifier/index.d.ts +0 -0
  279. /package/{lib → client-lib}/notifier/index.js +0 -0
  280. /package/{lib → client-lib}/object-CCiXnER2.cjs +0 -0
  281. /package/{lib → client-lib}/object-D6MVWB4l.js +0 -0
  282. /package/{lib → client-lib}/onConnect-DGP866cj.cjs +0 -0
  283. /package/{lib → client-lib}/onConnect-y5DrxJ9P.js +0 -0
  284. /package/{lib → client-lib}/order/index.cjs +0 -0
  285. /package/{lib → client-lib}/order/index.d.ts +0 -0
  286. /package/{lib → client-lib}/order/index.js +0 -0
  287. /package/{lib → client-lib}/pointer/Pointer.d.ts +0 -0
  288. /package/{lib → client-lib}/pointer/PointerElement.d.ts +0 -0
  289. /package/{lib → client-lib}/pointer/index.cjs +0 -0
  290. /package/{lib → client-lib}/pointer/index.d.ts +0 -0
  291. /package/{lib → client-lib}/pointer/index.js +0 -0
  292. /package/{lib → client-lib}/polyfills-CM4SCDTt.cjs +0 -0
  293. /package/{lib → client-lib}/polyfills-X6KXuHg-.js +0 -0
  294. /package/{lib → client-lib}/popover/PopoverButtonElement.d.ts +0 -0
  295. /package/{lib → client-lib}/popover/PopoverElement.d.ts +0 -0
  296. /package/{lib → client-lib}/popover/index.cjs +0 -0
  297. /package/{lib → client-lib}/popover/index.d.ts +0 -0
  298. /package/{lib → client-lib}/popover/index.js +0 -0
  299. /package/{lib → client-lib}/router/Link.d.ts +0 -0
  300. /package/{lib → client-lib}/router/Route.d.ts +0 -0
  301. /package/{lib → client-lib}/router/Router.d.ts +0 -0
  302. /package/{lib → client-lib}/router/index.cjs +0 -0
  303. /package/{lib → client-lib}/router/index.d.ts +0 -0
  304. /package/{lib → client-lib}/router/index.js +0 -0
  305. /package/{lib → client-lib}/scroll/ScrollBulletButtonsElement.d.ts +0 -0
  306. /package/{lib → client-lib}/scroll/ScrollButtonElement.d.ts +0 -0
  307. /package/{lib → client-lib}/scroll/ScrollElement.d.ts +0 -0
  308. /package/{lib → client-lib}/scroll/ScrollSection.d.ts +0 -0
  309. /package/{lib → client-lib}/scroll/ScrollSegmentElement.d.ts +0 -0
  310. /package/{lib → client-lib}/scroll/ScrollSetButtonElement.d.ts +0 -0
  311. /package/{lib → client-lib}/scroll/ScrollStepButtonElement.d.ts +0 -0
  312. /package/{lib → client-lib}/scroll/ScrollUserElement.d.ts +0 -0
  313. /package/{lib → client-lib}/scroll/ScrollbarElement.d.ts +0 -0
  314. /package/{lib → client-lib}/scroll/index.cjs +0 -0
  315. /package/{lib → client-lib}/scroll/index.d.ts +0 -0
  316. /package/{lib → client-lib}/scroll/index.js +0 -0
  317. /package/{lib → client-lib}/scroll-entries/index.cjs +0 -0
  318. /package/{lib → client-lib}/scroll-entries/index.d.ts +0 -0
  319. /package/{lib → client-lib}/scroll-entries/index.js +0 -0
  320. /package/{lib → client-lib}/select/SelectElement.d.ts +0 -0
  321. /package/{lib → client-lib}/select/SelectHeadElement.d.ts +0 -0
  322. /package/{lib → client-lib}/select/SelectOptionElement.d.ts +0 -0
  323. /package/{lib → client-lib}/select/SelectUserElement.d.ts +0 -0
  324. /package/{lib → client-lib}/select/index.cjs +0 -0
  325. /package/{lib → client-lib}/select/index.d.ts +0 -0
  326. /package/{lib → client-lib}/select/index.js +0 -0
  327. /package/{lib → client-lib}/sequence/index.cjs +0 -0
  328. /package/{lib → client-lib}/sequence/index.d.ts +0 -0
  329. /package/{lib → client-lib}/sequence/index.js +0 -0
  330. /package/{lib → client-lib}/slicer/DecoderElement.d.ts +0 -0
  331. /package/{lib → client-lib}/slicer/Letter.d.ts +0 -0
  332. /package/{lib → client-lib}/slicer/Word.d.ts +0 -0
  333. /package/{lib → client-lib}/slicer/index.cjs +0 -0
  334. /package/{lib → client-lib}/slicer/index.d.ts +0 -0
  335. /package/{lib → client-lib}/slicer/index.js +0 -0
  336. /package/{lib → client-lib}/source/SourceClass.d.ts +0 -0
  337. /package/{lib → client-lib}/source/SourceElement.d.ts +0 -0
  338. /package/{lib → client-lib}/source/SourceManager.d.ts +0 -0
  339. /package/{lib → client-lib}/source/SourceSet.d.ts +0 -0
  340. /package/{lib → client-lib}/source/index.cjs +0 -0
  341. /package/{lib → client-lib}/source/index.d.ts +0 -0
  342. /package/{lib → client-lib}/source/index.js +0 -0
  343. /package/{lib → client-lib}/store/Cached.d.ts +0 -0
  344. /package/{lib → client-lib}/store/Composed.d.ts +0 -0
  345. /package/{lib → client-lib}/store/Derived.d.ts +0 -0
  346. /package/{lib → client-lib}/store/DerivedArray.d.ts +0 -0
  347. /package/{lib → client-lib}/store/Resource.d.ts +0 -0
  348. /package/{lib → client-lib}/store/Store.d.ts +0 -0
  349. /package/{lib → client-lib}/store/StoreRegistry.d.ts +0 -0
  350. /package/{lib → client-lib}/store/index.cjs +0 -0
  351. /package/{lib → client-lib}/store/index.d.ts +0 -0
  352. /package/{lib → client-lib}/store/index.js +0 -0
  353. /package/{lib → client-lib}/string-DhgS_iFl.cjs +0 -0
  354. /package/{lib → client-lib}/string-f0Dnk0L1.js +0 -0
  355. /package/{lib → client-lib}/style-At6aDoqG.cjs +0 -0
  356. /package/{lib → client-lib}/style-j2TwriJ_.js +0 -0
  357. /package/{lib → client-lib}/svg-path-data/index.cjs +0 -0
  358. /package/{lib → client-lib}/svg-path-data/index.d.ts +0 -0
  359. /package/{lib → client-lib}/svg-path-data/index.js +0 -0
  360. /package/{lib → client-lib}/tags-BosXYPYv.cjs +0 -0
  361. /package/{lib → client-lib}/tags-D0kLlFdQ.js +0 -0
  362. /package/{lib → client-lib}/test/starting-style/index.d.ts +0 -0
  363. /package/{lib → client-lib}/theme/index.cjs +0 -0
  364. /package/{lib → client-lib}/theme/index.d.ts +0 -0
  365. /package/{lib → client-lib}/theme/index.js +0 -0
  366. /package/{lib → client-lib}/ticker/index.cjs +0 -0
  367. /package/{lib → client-lib}/ticker/index.d.ts +0 -0
  368. /package/{lib → client-lib}/ticker/index.js +0 -0
  369. /package/{lib → client-lib}/traverseMaterials-BKSwwNmo.js +0 -0
  370. /package/{lib → client-lib}/traverseMaterials-BtBXV88O.cjs +0 -0
  371. /package/{lib → client-lib}/tweaker/TweakerBooleanManagerElement.d.ts +0 -0
  372. /package/{lib → client-lib}/tweaker/TweakerColorManagerElement.d.ts +0 -0
  373. /package/{lib → client-lib}/tweaker/TweakerElement.d.ts +0 -0
  374. /package/{lib → client-lib}/tweaker/TweakerFieldElement.d.ts +0 -0
  375. /package/{lib → client-lib}/tweaker/TweakerFolderElement.d.ts +0 -0
  376. /package/{lib → client-lib}/tweaker/TweakerLinkManagerElement.d.ts +0 -0
  377. /package/{lib → client-lib}/tweaker/TweakerNumberManagerElement.d.ts +0 -0
  378. /package/{lib → client-lib}/tweaker/TweakerSelectManagerElement.d.ts +0 -0
  379. /package/{lib → client-lib}/tweaker/TweakerStoreManagerElement.d.ts +0 -0
  380. /package/{lib → client-lib}/tweaker/TweakerStringManagerElement.d.ts +0 -0
  381. /package/{lib → client-lib}/tweaker/index.cjs +0 -0
  382. /package/{lib → client-lib}/tweaker/index.d.ts +0 -0
  383. /package/{lib → client-lib}/tweaker/index.js +0 -0
  384. /package/{lib → client-lib}/tweaker/tweakerManagerConstructors.d.ts +0 -0
  385. /package/{lib → client-lib}/tweaker/tweakerStorage.d.ts +0 -0
  386. /package/{lib → client-lib}/url-C3dWnJQg.cjs +0 -0
  387. /package/{lib → client-lib}/url-DMNfW7uN.js +0 -0
  388. /package/{lib → client-lib}/utils/array.d.ts +0 -0
  389. /package/{lib → client-lib}/utils/attributes.d.ts +0 -0
  390. /package/{lib → client-lib}/utils/browser.d.ts +0 -0
  391. /package/{lib → client-lib}/utils/bytes.d.ts +0 -0
  392. /package/{lib → client-lib}/utils/canvas.d.ts +0 -0
  393. /package/{lib → client-lib}/utils/collisions.d.ts +0 -0
  394. /package/{lib → client-lib}/utils/coordinates.d.ts +0 -0
  395. /package/{lib → client-lib}/utils/cssom.d.ts +0 -0
  396. /package/{lib → client-lib}/utils/decoding.d.ts +0 -0
  397. /package/{lib → client-lib}/utils/dom.d.ts +0 -0
  398. /package/{lib → client-lib}/utils/easings.d.ts +0 -0
  399. /package/{lib → client-lib}/utils/events.d.ts +0 -0
  400. /package/{lib → client-lib}/utils/file.d.ts +0 -0
  401. /package/{lib → client-lib}/utils/function.d.ts +0 -0
  402. /package/{lib → client-lib}/utils/gestures.d.ts +0 -0
  403. /package/{lib → client-lib}/utils/index.cjs +0 -0
  404. /package/{lib → client-lib}/utils/index.d.ts +0 -0
  405. /package/{lib → client-lib}/utils/index.js +0 -0
  406. /package/{lib → client-lib}/utils/layout.d.ts +0 -0
  407. /package/{lib → client-lib}/utils/math.d.ts +0 -0
  408. /package/{lib → client-lib}/utils/number.d.ts +0 -0
  409. /package/{lib → client-lib}/utils/object.d.ts +0 -0
  410. /package/{lib → client-lib}/utils/polyfills.d.ts +0 -0
  411. /package/{lib → client-lib}/utils/promises.d.ts +0 -0
  412. /package/{lib → client-lib}/utils/string.d.ts +0 -0
  413. /package/{lib → client-lib}/utils/style.d.ts +0 -0
  414. /package/{lib → client-lib}/utils/ts-shape.d.ts +0 -0
  415. /package/{lib → client-lib}/utils/ts-utility.d.ts +0 -0
  416. /package/{lib → client-lib}/utils/url.d.ts +0 -0
  417. /package/{lib → client-lib}/video/index.cjs +0 -0
  418. /package/{lib → client-lib}/video/index.d.ts +0 -0
  419. /package/{lib → client-lib}/video/index.js +0 -0
  420. /package/{lib → client-lib}/window-resizer/index.cjs +0 -0
  421. /package/{lib → client-lib}/window-resizer/index.d.ts +0 -0
  422. /package/{lib → client-lib}/window-resizer/index.js +0 -0
@@ -0,0 +1,10 @@
1
+ import { default as Ffmpeg } from 'fluent-ffmpeg';
2
+ import { Output } from '../utils';
3
+
4
+ export interface FFmpegParameters {
5
+ inputPath: string;
6
+ outputPath?: string;
7
+ fileContent: Buffer;
8
+ instructions?: (command: Ffmpeg.FfmpegCommand) => void | Promise<void>;
9
+ }
10
+ export declare function FFmpeg({ inputPath, outputPath, fileContent, instructions, }: FFmpegParameters): Promise<Output>;
@@ -0,0 +1,4 @@
1
+ import { FaviconSource } from './types';
2
+ import { Output } from '../utils';
3
+
4
+ export declare function generateFavicon(source: FaviconSource): Promise<Output>;
@@ -0,0 +1,3 @@
1
+ import { SequenceSource } from './types';
2
+
3
+ export declare function generateSequence(source: SequenceSource): Promise<import('../utils').Output>;
@@ -0,0 +1,4 @@
1
+ import { SpriteSource } from './types';
2
+ import { Output } from '../utils';
3
+
4
+ export declare function generateSprite(source: SpriteSource): Promise<Output>;
@@ -0,0 +1,10 @@
1
+ export { FFmpeg, type FFmpegParameters } from './FFmpeg';
2
+ export { generateFavicon } from './generateFavicon';
3
+ export { generateSequence } from './generateSequence';
4
+ export { generateSprite } from './generateSprite';
5
+ export { inputFiles, type InputFilesParameters, type InputFilesSettings, type InputsFilesCallbackFaviconParameters, type InputsFilesCallbackDefaultParameters, type InputFilesCallback, type InputFilesCallbackEntry, } from './inputFiles';
6
+ export { optimize, type OptimizeOptions, type OptimizeProgressCallback, type OptimizeProgress, } from './optimize';
7
+ export { optimizeImage } from './optimizeImage';
8
+ export { optimizer } from './optimizer';
9
+ export { optimizeVideo } from './optimizeVideo';
10
+ export { type SourceSettings, type Source, type SkipSource, type ImageSource, type VideoSource, type FaviconSource, type SpriteSource, type SequenceSource, type KnownSource, ALLOWED_IMAGE_EXTENSIONS, ALLOWED_VIDEO_EXTENSIONS, } from './types';
@@ -0,0 +1,383 @@
1
+ import { mkdir, readFile, readdir } from "fs/promises";
2
+ import { dirname, join, sep, extname } from "path";
3
+ import Ffmpeg from "fluent-ffmpeg";
4
+ import { getTmpPath, outputFile, getFolderFiles, removeExtension, clear, replaceExtension, outputFiles } from "../utils/index.js";
5
+ import favicons from "favicons";
6
+ import { parse } from "node-html-parser";
7
+ import { statSync } from "fs";
8
+ import sharp from "sharp";
9
+ import "crypto";
10
+ async function FFmpeg({
11
+ inputPath,
12
+ outputPath,
13
+ fileContent,
14
+ instructions
15
+ }) {
16
+ return new Promise(async (resolve, reject) => {
17
+ const tmpInputPath = getTmpPath(inputPath);
18
+ const tmpOutputPath = getTmpPath(outputPath || inputPath);
19
+ await outputFile(tmpInputPath, fileContent);
20
+ await mkdir(dirname(tmpOutputPath), { recursive: true });
21
+ const command = Ffmpeg(tmpInputPath);
22
+ await (instructions == null ? void 0 : instructions(command));
23
+ command.on("end", async () => {
24
+ if (outputPath) {
25
+ const folderPath = dirname(tmpOutputPath);
26
+ const files = await getFolderFiles(folderPath);
27
+ const output = files.map((file) => {
28
+ return {
29
+ data: file.buffer,
30
+ destinationPath: join(
31
+ removeExtension(inputPath),
32
+ `${file.name.split(".").slice(0, -1)}${file.ext}`
33
+ )
34
+ };
35
+ });
36
+ await clear(tmpInputPath, folderPath);
37
+ resolve(output);
38
+ } else {
39
+ const file = await readFile(tmpOutputPath);
40
+ await clear(tmpInputPath, tmpOutputPath);
41
+ const output = [
42
+ {
43
+ data: file,
44
+ destinationPath: inputPath
45
+ }
46
+ ];
47
+ resolve(output);
48
+ }
49
+ }).on("error", async (e) => {
50
+ await clear(tmpInputPath, tmpOutputPath);
51
+ reject(e);
52
+ }).output(tmpOutputPath).run();
53
+ });
54
+ }
55
+ async function generateFavicon(source) {
56
+ const output = [];
57
+ const { settings } = source;
58
+ const response = await favicons(source.content, settings);
59
+ output.push(
60
+ ...[...response.images, ...response.files].map((item) => {
61
+ return {
62
+ destinationPath: join(settings.destinationPath, item.name),
63
+ data: item.contents
64
+ };
65
+ })
66
+ );
67
+ output.push({
68
+ destinationPath: settings.destinationHtmlPath,
69
+ data: response.html.join("\n")
70
+ });
71
+ return output;
72
+ }
73
+ async function generateSequence(source) {
74
+ const { settings } = source;
75
+ return FFmpeg({
76
+ inputPath: settings.destinationPath,
77
+ outputPath: `${removeExtension(settings.destinationPath)}/frame-%04d.${settings.frameExtension || "jpg"}`,
78
+ fileContent: source.content,
79
+ instructions: (command) => {
80
+ if (settings.fps) {
81
+ command.addOutputOption([`-r ${Math.max(1, settings.fps | 0)}`]);
82
+ }
83
+ }
84
+ });
85
+ }
86
+ async function generateSprite(source) {
87
+ const output = [];
88
+ const { settings } = source;
89
+ const spriteName = source.settings.name || "sprite";
90
+ const svgOpenTag = `<svg id="${spriteName}" xmlns="http://www.w3.org/2000/svg">`;
91
+ const svgCloseTag = "</svg>";
92
+ let spriteString = svgOpenTag;
93
+ for await (const item of source.content) {
94
+ const svgString = item.buffer.toString();
95
+ const root = parse(svgString);
96
+ const icon = root.querySelector("svg");
97
+ icon.removeAttribute("width");
98
+ icon.removeAttribute("height");
99
+ if (settings.removeFill) {
100
+ icon.querySelectorAll("*").forEach((child) => {
101
+ child.removeAttribute("fill");
102
+ });
103
+ }
104
+ if (settings.removeStroke) {
105
+ icon.querySelectorAll("*").forEach((child) => {
106
+ child.removeAttribute("stroke");
107
+ });
108
+ }
109
+ const symbolOpenTag = `<symbol id="${`${spriteName}:${item.name}`}" viewBox="${icon.getAttribute(
110
+ "viewBox"
111
+ )}">`;
112
+ const symbolContent = icon.innerHTML;
113
+ const symbolCloseTag = `</symbol>`;
114
+ const symbol = symbolOpenTag + symbolContent + symbolCloseTag;
115
+ spriteString += symbol;
116
+ }
117
+ spriteString += svgCloseTag;
118
+ output.push({
119
+ data: spriteString,
120
+ destinationPath: source.settings.destinationPath
121
+ });
122
+ return output;
123
+ }
124
+ const ALLOWED_IMAGE_EXTENSIONS = ["jpg", "png", "webp", "jpeg"];
125
+ const ALLOWED_VIDEO_EXTENSIONS = ["mp4", "mov"];
126
+ function specialPath(path, specialString) {
127
+ const splitted = path.split("/");
128
+ const left = splitted.slice(0, -1).join("/");
129
+ const leaf = splitted.slice(-1).join("");
130
+ const ext = extname(leaf);
131
+ const sourceName = leaf.replace(ext, "");
132
+ const name = sourceName.replace(specialString, "");
133
+ if (name) {
134
+ if (name.startsWith("-")) {
135
+ return `${left}/${name.slice(1)}${ext}`;
136
+ } else {
137
+ return `${left}/${name}${ext}`;
138
+ }
139
+ } else {
140
+ return `${left}/${sourceName.replace("@", "")}${ext}`;
141
+ }
142
+ }
143
+ async function inputFiles({
144
+ sourceFolder,
145
+ destinationFolder,
146
+ settings
147
+ }) {
148
+ var _a, _b, _c, _d, _e;
149
+ let sources = [];
150
+ const currentPaths = await readdir(sourceFolder);
151
+ for await (const currentPath of currentPaths) {
152
+ if (!currentPath.includes(".DS_Store")) {
153
+ const sourcePath = join(sourceFolder, currentPath.toString());
154
+ const destinationPath = join(
155
+ destinationFolder,
156
+ sourcePath.replaceAll(sep, "/").replace(sourceFolder, "")
157
+ );
158
+ if (statSync(sourcePath).isDirectory()) {
159
+ if (sourcePath.includes("@sprite")) {
160
+ const files = await getFolderFiles(sourcePath);
161
+ const content = [];
162
+ files.forEach((file) => {
163
+ if (file.ext === ".svg") {
164
+ content.push({
165
+ name: file.name,
166
+ buffer: file.buffer
167
+ });
168
+ }
169
+ });
170
+ const destinationSvgPath = specialPath(
171
+ `${destinationPath}.svg`,
172
+ "@sprite"
173
+ );
174
+ sources.push({
175
+ type: "sprite",
176
+ content,
177
+ settings: {
178
+ destinationPath: destinationSvgPath,
179
+ ...(_a = settings == null ? void 0 : settings.sprite) == null ? void 0 : _a.call(settings, {
180
+ destinationPath: destinationSvgPath
181
+ })
182
+ }
183
+ });
184
+ } else {
185
+ const result = await inputFiles({
186
+ sourceFolder: sourcePath,
187
+ destinationFolder: destinationPath,
188
+ settings
189
+ });
190
+ sources = [...sources, ...result];
191
+ }
192
+ } else {
193
+ const ext = extname(destinationPath).toLowerCase().slice(1);
194
+ const content = await readFile(sourcePath);
195
+ if (destinationPath.includes("@favicon")) {
196
+ const destinationFolderPath = specialPath(
197
+ removeExtension(destinationPath),
198
+ "@favicon"
199
+ );
200
+ const destinationHtmlPath = `${destinationFolderPath}/head.html`;
201
+ sources.push({
202
+ content,
203
+ type: "favicon",
204
+ settings: {
205
+ destinationPath: destinationFolderPath,
206
+ destinationHtmlPath,
207
+ ...(_b = settings == null ? void 0 : settings.favicon) == null ? void 0 : _b.call(settings, {
208
+ destinationPath: destinationFolderPath,
209
+ destinationHtmlPath
210
+ })
211
+ }
212
+ });
213
+ }
214
+ if (destinationPath.includes("@sequence")) {
215
+ const path = specialPath(destinationPath, "@sequence");
216
+ sources.push({
217
+ content,
218
+ type: "sequence",
219
+ settings: {
220
+ destinationPath: path,
221
+ ...(_c = settings == null ? void 0 : settings.sequence) == null ? void 0 : _c.call(settings, { destinationPath: path })
222
+ }
223
+ });
224
+ } else if (ALLOWED_IMAGE_EXTENSIONS.includes(
225
+ ext
226
+ )) {
227
+ sources.push({
228
+ content,
229
+ type: "image",
230
+ settings: {
231
+ placeholder: false,
232
+ quality: 80,
233
+ scale: 1,
234
+ webp: false,
235
+ destinationPath,
236
+ ...(_d = settings == null ? void 0 : settings.image) == null ? void 0 : _d.call(settings, { destinationPath })
237
+ }
238
+ });
239
+ } else if (ALLOWED_VIDEO_EXTENSIONS.includes(
240
+ ext
241
+ )) {
242
+ sources.push({
243
+ content,
244
+ type: "video",
245
+ settings: {
246
+ quality: 80,
247
+ scale: 1,
248
+ destinationPath,
249
+ ...(_e = settings == null ? void 0 : settings.video) == null ? void 0 : _e.call(settings, { destinationPath })
250
+ }
251
+ });
252
+ } else {
253
+ sources.push({
254
+ content,
255
+ type: "skip",
256
+ settings: { destinationPath }
257
+ });
258
+ }
259
+ }
260
+ }
261
+ }
262
+ return sources;
263
+ }
264
+ async function optimizeImage(source) {
265
+ const { settings } = source;
266
+ const ext = extname(settings.destinationPath).toLowerCase();
267
+ const image = sharp(source.content);
268
+ const meta = await image.metadata();
269
+ const width = meta.width;
270
+ const height = meta.height;
271
+ const output = [];
272
+ if (width && height) {
273
+ if (settings == null ? void 0 : settings.scale) {
274
+ image.resize(
275
+ Math.floor(width * settings.scale),
276
+ Math.floor(height * settings.scale)
277
+ );
278
+ }
279
+ }
280
+ if (ext === ".jpg" || ext === ".jpeg") {
281
+ image.jpeg({
282
+ mozjpeg: true,
283
+ quality: settings == null ? void 0 : settings.quality
284
+ });
285
+ } else if (ext === ".png") {
286
+ image.png({
287
+ compressionLevel: 9,
288
+ adaptiveFiltering: true,
289
+ quality: settings == null ? void 0 : settings.quality,
290
+ effort: 8
291
+ });
292
+ }
293
+ const buffer = await image.toBuffer();
294
+ output.push({
295
+ data: buffer,
296
+ destinationPath: settings.destinationPath
297
+ });
298
+ if (settings == null ? void 0 : settings.webp) {
299
+ const buffer2 = await image.webp({
300
+ quality: settings.quality,
301
+ effort: 5
302
+ }).toBuffer();
303
+ output.push({
304
+ data: buffer2,
305
+ destinationPath: replaceExtension(settings.destinationPath, "webp")
306
+ });
307
+ }
308
+ if (settings == null ? void 0 : settings.placeholder) {
309
+ const buffer2 = await image.resize(20, 20).blur(10).toBuffer();
310
+ output.push({
311
+ data: buffer2,
312
+ destinationPath: replaceExtension(
313
+ settings.destinationPath,
314
+ `placeholder${ext}`
315
+ )
316
+ });
317
+ }
318
+ return output;
319
+ }
320
+ async function optimizeVideo(source) {
321
+ const { settings } = source;
322
+ return FFmpeg({
323
+ inputPath: settings.destinationPath,
324
+ fileContent: source.content,
325
+ instructions: (command) => {
326
+ command.addOutputOption(
327
+ `-crf ${Math.round((100 - ((settings == null ? void 0 : settings.quality) || 80)) * 51 / 100)}`
328
+ );
329
+ if (settings == null ? void 0 : settings.fps) {
330
+ command.fps(settings.fps);
331
+ }
332
+ command.size(`${((settings == null ? void 0 : settings.scale) || 1) * 100}%`);
333
+ }
334
+ });
335
+ }
336
+ async function optimize(sources, options) {
337
+ var _a;
338
+ const output = [];
339
+ let ready = 0;
340
+ for await (const source of sources) {
341
+ if (source.type === "image") {
342
+ output.push(...await optimizeImage(source));
343
+ } else if (source.type === "video") {
344
+ output.push(...await optimizeVideo(source));
345
+ } else if (source.type === "favicon") {
346
+ output.push(...await generateFavicon(source));
347
+ } else if (source.type === "sprite") {
348
+ output.push(...await generateSprite(source));
349
+ } else if (source.type === "sequence") {
350
+ output.push(...await generateSequence(source));
351
+ } else {
352
+ output.push({
353
+ data: source.content,
354
+ destinationPath: source.settings.destinationPath
355
+ });
356
+ }
357
+ (_a = options == null ? void 0 : options.onProgress) == null ? void 0 : _a.call(options, {
358
+ ready: ++ready,
359
+ total: sources.length,
360
+ path: source.settings.destinationPath
361
+ });
362
+ }
363
+ return output;
364
+ }
365
+ async function optimizer(parameters) {
366
+ await clear(parameters.destinationFolder);
367
+ const input = await inputFiles(parameters);
368
+ const optimized = await optimize(input, parameters);
369
+ await outputFiles(optimized);
370
+ }
371
+ export {
372
+ ALLOWED_IMAGE_EXTENSIONS,
373
+ ALLOWED_VIDEO_EXTENSIONS,
374
+ FFmpeg,
375
+ generateFavicon,
376
+ generateSequence,
377
+ generateSprite,
378
+ inputFiles,
379
+ optimize,
380
+ optimizeImage,
381
+ optimizeVideo,
382
+ optimizer
383
+ };
@@ -0,0 +1,26 @@
1
+ import { FaviconSource, ImageSource, KnownSource, SequenceSource, Source, SpriteSource, VideoSource } from './types';
2
+
3
+ export interface InputFilesCallbackEntry {
4
+ type: KnownSource['type'];
5
+ path: string;
6
+ }
7
+ export type InputFilesCallback<T extends Source> = (entry: InputFilesCallbackEntry) => T;
8
+ export interface InputsFilesCallbackDefaultParameters {
9
+ destinationPath: string;
10
+ }
11
+ export interface InputsFilesCallbackFaviconParameters extends InputsFilesCallbackDefaultParameters {
12
+ destinationHtmlPath: string;
13
+ }
14
+ export interface InputFilesSettings {
15
+ image?(parameters: InputsFilesCallbackDefaultParameters): Partial<ImageSource['settings']>;
16
+ video?(parameters: InputsFilesCallbackDefaultParameters): Partial<VideoSource['settings']>;
17
+ favicon?(parameters: InputsFilesCallbackFaviconParameters): Partial<FaviconSource['settings']>;
18
+ sprite?(parameters: InputsFilesCallbackDefaultParameters): Partial<SpriteSource['settings']>;
19
+ sequence?(parameters: InputsFilesCallbackDefaultParameters): Partial<SequenceSource['settings']>;
20
+ }
21
+ export interface InputFilesParameters {
22
+ sourceFolder: string;
23
+ destinationFolder: string;
24
+ settings?: InputFilesSettings;
25
+ }
26
+ export declare function inputFiles({ sourceFolder, destinationFolder, settings, }: InputFilesParameters): Promise<KnownSource[]>;
@@ -0,0 +1,13 @@
1
+ import { Output } from '../utils';
2
+ import { KnownSource } from './types';
3
+
4
+ export interface OptimizeProgress {
5
+ ready: number;
6
+ total: number;
7
+ path: string;
8
+ }
9
+ export type OptimizeProgressCallback = (progress: OptimizeProgress) => void;
10
+ export interface OptimizeOptions {
11
+ onProgress?: OptimizeProgressCallback;
12
+ }
13
+ export declare function optimize(sources: Array<KnownSource>, options?: OptimizeOptions): Promise<Output>;
@@ -0,0 +1,4 @@
1
+ import { ImageSource } from './types';
2
+ import { Output } from '../utils';
3
+
4
+ export declare function optimizeImage(source: ImageSource): Promise<Output>;
@@ -0,0 +1,3 @@
1
+ import { VideoSource } from './types';
2
+
3
+ export declare function optimizeVideo(source: VideoSource): Promise<import('../utils').Output>;
@@ -0,0 +1,5 @@
1
+ import { InputFilesParameters } from './inputFiles';
2
+ import { OptimizeOptions } from './optimize';
3
+
4
+ export type OptimizerParameters = InputFilesParameters & OptimizeOptions;
5
+ export declare function optimizer(parameters: OptimizerParameters): Promise<void>;
@@ -0,0 +1,47 @@
1
+ import { FaviconOptions } from 'favicons';
2
+
3
+ export type SourceSettings = {
4
+ [key: string]: any;
5
+ };
6
+ export interface Source<B = Buffer, T extends string = string, S extends SourceSettings = {}> {
7
+ content: B;
8
+ type: T;
9
+ settings: S;
10
+ }
11
+ export type SkipSource = Source<Buffer, 'skip', {
12
+ destinationPath: string;
13
+ }>;
14
+ export type ImageSource = Source<Buffer, 'image', {
15
+ destinationPath: string;
16
+ quality?: number;
17
+ scale?: number;
18
+ placeholder?: boolean;
19
+ webp?: boolean;
20
+ }>;
21
+ export type VideoSource = Source<Buffer, 'video', {
22
+ destinationPath: string;
23
+ quality?: number;
24
+ scale?: number;
25
+ fps?: number;
26
+ }>;
27
+ export type FaviconSource = Source<Buffer, 'favicon', {
28
+ destinationPath: string;
29
+ destinationHtmlPath: string;
30
+ } & FaviconOptions>;
31
+ export type SpriteSource = Source<Array<{
32
+ name: string;
33
+ buffer: Buffer;
34
+ }>, 'sprite', {
35
+ destinationPath: string;
36
+ name?: string;
37
+ removeStroke?: boolean;
38
+ removeFill?: boolean;
39
+ }>;
40
+ export type SequenceSource = Source<Buffer, 'sequence', {
41
+ destinationPath: string;
42
+ fps?: number;
43
+ frameExtension?: 'png' | 'jpg';
44
+ }>;
45
+ export type KnownSource = VideoSource | ImageSource | SkipSource | FaviconSource | SpriteSource | SequenceSource;
46
+ export declare const ALLOWED_IMAGE_EXTENSIONS: readonly ["jpg", "png", "webp", "jpeg"];
47
+ export declare const ALLOWED_VIDEO_EXTENSIONS: readonly ["mp4", "mov"];
@@ -0,0 +1,11 @@
1
+ import { Output, WriteFileData } from './types';
2
+
3
+ export declare function outputFile(path: string, data: WriteFileData): Promise<void>;
4
+ export declare function outputFiles(output: Output): Promise<void>;
5
+ export declare function clear(...paths: Array<string>): Promise<void[]>;
6
+ export declare function getFolderFiles(folderPath: string): Promise<{
7
+ name: string;
8
+ path: string;
9
+ ext: string;
10
+ buffer: Buffer;
11
+ }[]>;
@@ -0,0 +1,3 @@
1
+ export { removeExtension, replaceExtension, getTmpPath } from './path';
2
+ export { outputFile, outputFiles, clear, getFolderFiles } from './fs';
3
+ export type { WriteFileData, OutputItem, Output } from './types';
@@ -0,0 +1,54 @@
1
+ import { randomUUID } from "crypto";
2
+ import { extname, dirname, join } from "path";
3
+ import { mkdir, writeFile, rm, readdir, readFile } from "fs/promises";
4
+ function removeExtension(path) {
5
+ return path.replace(/\.[^/.]+$/, "");
6
+ }
7
+ function replaceExtension(path, newExtension) {
8
+ return `${removeExtension(path)}.${newExtension}`;
9
+ }
10
+ function getTmpPath(path) {
11
+ const random = randomUUID();
12
+ return `${removeExtension(path)}.${random}${extname(path)}`;
13
+ }
14
+ async function outputFile(path, data) {
15
+ await mkdir(dirname(path), { recursive: true });
16
+ await writeFile(path, data);
17
+ }
18
+ async function outputFiles(output) {
19
+ for await (const item of output) {
20
+ await mkdir(dirname(item.destinationPath), { recursive: true });
21
+ await writeFile(item.destinationPath, item.data);
22
+ outputFile(item.destinationPath, item.data);
23
+ }
24
+ }
25
+ async function clear(...paths) {
26
+ return Promise.all(
27
+ paths.map((p) => {
28
+ return rm(p, { force: true, recursive: true });
29
+ })
30
+ );
31
+ }
32
+ async function getFolderFiles(folderPath) {
33
+ const leafs = await readdir(folderPath);
34
+ const files = [];
35
+ for await (const leaf of leafs) {
36
+ const buffer = await readFile(join(folderPath, leaf));
37
+ files.push({
38
+ name: removeExtension(leaf),
39
+ path: join(folderPath, leaf),
40
+ ext: extname(leaf),
41
+ buffer
42
+ });
43
+ }
44
+ return files;
45
+ }
46
+ export {
47
+ clear,
48
+ getFolderFiles,
49
+ getTmpPath,
50
+ outputFile,
51
+ outputFiles,
52
+ removeExtension,
53
+ replaceExtension
54
+ };
@@ -0,0 +1,3 @@
1
+ export declare function removeExtension(path: string): string;
2
+ export declare function replaceExtension(path: string, newExtension: string): string;
3
+ export declare function getTmpPath(path: string): string;
@@ -0,0 +1,8 @@
1
+ import { writeFile } from 'fs/promises';
2
+
3
+ export type WriteFileData = Parameters<typeof writeFile>['1'];
4
+ export interface OutputItem {
5
+ data: WriteFileData;
6
+ destinationPath: string;
7
+ }
8
+ export type Output = Array<OutputItem>;
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes