@dxtmisha/scripts 0.11.8 → 1.0.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 (335) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/ai-resources/componentMaterials.md +19 -0
  3. package/ai-resources/componentPrompt.md +381 -0
  4. package/ai-resources/componentWiki.md +13 -0
  5. package/bin/arguments.ts +168 -0
  6. package/bin/build-packages.ts +12 -2
  7. package/bin/build-publish-packages.ts +12 -2
  8. package/bin/design-component.ts +7 -1
  9. package/bin/design-constructor.ts +22 -3
  10. package/bin/design-figma.ts +26 -4
  11. package/bin/design-flags.ts +14 -2
  12. package/bin/design-library.ts +7 -1
  13. package/bin/design-package.ts +29 -5
  14. package/bin/design-prompt.ts +22 -3
  15. package/bin/design-screenshot.ts +12 -2
  16. package/bin/design-types-save.ts +32 -5
  17. package/bin/design-types.ts +32 -6
  18. package/bin/design-ui.ts +21 -3
  19. package/bin/design-wiki-storm.ts +11 -3
  20. package/dist/AiZAi-x3CInynJ.js +232 -0
  21. package/dist/PropertiesConfig-ChizwW5y.js +250 -0
  22. package/{src/config.ts → dist/config.d.ts} +179 -158
  23. package/dist/config.js +20 -0
  24. package/dist/figmaApiTypes-CArSsNW8.js +6 -0
  25. package/dist/library-ai.d.ts +482 -0
  26. package/dist/library-ai.js +2 -0
  27. package/dist/library-figma.d.ts +462 -0
  28. package/dist/library-figma.js +75 -0
  29. package/dist/library-ui.d.ts +586 -0
  30. package/dist/library-ui.js +3760 -0
  31. package/dist/library.d.ts +4677 -0
  32. package/dist/library.js +1436 -0
  33. package/dist/propertyTypes-DflziKuR.js +236 -0
  34. package/package.json +69 -20
  35. package/bin/ai-doc.ts +0 -7
  36. package/bin/build-functional.ts +0 -5
  37. package/bin/design-component-wiki.ts +0 -11
  38. package/src/classes/Ai/AiAbstract.ts +0 -242
  39. package/src/classes/Ai/AiClaude.ts +0 -26
  40. package/src/classes/Ai/AiClaudeAgent.ts +0 -16
  41. package/src/classes/Ai/AiClaudeAgentLite.ts +0 -86
  42. package/src/classes/Ai/AiClaudeCli.ts +0 -24
  43. package/src/classes/Ai/AiClaudeCliLite.ts +0 -108
  44. package/src/classes/Ai/AiClaudeLite.ts +0 -112
  45. package/src/classes/Ai/AiDoc.ts +0 -81
  46. package/src/classes/Ai/AiDocItem.ts +0 -27
  47. package/src/classes/Ai/AiDocItemAbstract.ts +0 -209
  48. package/src/classes/Ai/AiDocItemClasses.ts +0 -27
  49. package/src/classes/Ai/AiDocItemComposables.ts +0 -20
  50. package/src/classes/Ai/AiDocType.ts +0 -45
  51. package/src/classes/Ai/AiGoogle.ts +0 -26
  52. package/src/classes/Ai/AiGoogleCli.ts +0 -24
  53. package/src/classes/Ai/AiGoogleCliLite.ts +0 -108
  54. package/src/classes/Ai/AiGoogleLite.ts +0 -78
  55. package/src/classes/Ai/AiOpenAi.ts +0 -26
  56. package/src/classes/Ai/AiOpenAiLite.ts +0 -107
  57. package/src/classes/Ai/AiZAi.ts +0 -17
  58. package/src/classes/Ai/AiZAiLite.ts +0 -77
  59. package/src/classes/Ai/ApiTmp.ts +0 -43
  60. package/src/classes/BrowserItem.ts +0 -408
  61. package/src/classes/Build/BuildFunctional.ts +0 -54
  62. package/src/classes/Build/BuildPackages.ts +0 -137
  63. package/src/classes/Build/BuildPublishPackages.ts +0 -105
  64. package/src/classes/BuildItem.ts +0 -187
  65. package/src/classes/Component/ComponentCreator.ts +0 -45
  66. package/src/classes/Component/ComponentItem.ts +0 -161
  67. package/src/classes/Component/ComponentWiki.ts +0 -258
  68. package/src/classes/Component/ComponentWikiFile.ts +0 -138
  69. package/src/classes/Design/DesignCommand.ts +0 -243
  70. package/src/classes/Design/DesignComponent.ts +0 -824
  71. package/src/classes/Design/DesignConstructor.ts +0 -222
  72. package/src/classes/Design/DesignConstructors.ts +0 -101
  73. package/src/classes/Design/DesignFigma.ts +0 -61
  74. package/src/classes/Design/DesignFlags.ts +0 -215
  75. package/src/classes/Design/DesignReplace.ts +0 -672
  76. package/src/classes/Design/DesignScreenshot.ts +0 -140
  77. package/src/classes/Design/DesignStructure.ts +0 -201
  78. package/src/classes/Design/DesignStructureClasses.ts +0 -105
  79. package/src/classes/Design/DesignStructureItemAbstract.ts +0 -52
  80. package/src/classes/Design/DesignStructureRead.ts +0 -349
  81. package/src/classes/Design/DesignStructureStyles.ts +0 -45
  82. package/src/classes/Design/DesignTypes.ts +0 -94
  83. package/src/classes/Design/DesignTypesAi.ts +0 -135
  84. package/src/classes/Design/DesignTypesDescription.ts +0 -121
  85. package/src/classes/Design/DesignTypesMake.ts +0 -460
  86. package/src/classes/Design/DesignTypesMcp.ts +0 -90
  87. package/src/classes/Design/DesignTypesPrompts.ts +0 -332
  88. package/src/classes/Design/DesignTypescript.ts +0 -244
  89. package/src/classes/Design/DesignUi.ts +0 -143
  90. package/src/classes/Design/DesignWiki.ts +0 -52
  91. package/src/classes/Design/DesignWikiStorm.ts +0 -95
  92. package/src/classes/Design/DesignWikiStormItem.ts +0 -316
  93. package/src/classes/FigmaApi.ts +0 -190
  94. package/src/classes/Git/GitRead.ts +0 -261
  95. package/src/classes/Library/LibraryAiMcpItem.ts +0 -67
  96. package/src/classes/Library/LibraryAiPrompt.ts +0 -268
  97. package/src/classes/Library/LibraryAiPromptItem.ts +0 -331
  98. package/src/classes/Library/LibraryAiWiki.ts +0 -127
  99. package/src/classes/Library/LibraryAiWikiItem.ts +0 -79
  100. package/src/classes/Library/LibraryExport.ts +0 -167
  101. package/src/classes/Library/LibraryFlags.ts +0 -62
  102. package/src/classes/Library/LibraryItems.ts +0 -138
  103. package/src/classes/Library/LibraryList.ts +0 -189
  104. package/src/classes/Library/LibraryMedia.ts +0 -139
  105. package/src/classes/Library/LibraryPlugin.ts +0 -73
  106. package/src/classes/Library/LibraryTypes.ts +0 -130
  107. package/src/classes/Package/PackageFile.ts +0 -154
  108. package/src/classes/Package/PackageInit.ts +0 -54
  109. package/src/classes/Package/PackageItem.ts +0 -329
  110. package/src/classes/Properties/Properties.ts +0 -175
  111. package/src/classes/Properties/PropertiesCache.ts +0 -248
  112. package/src/classes/Properties/PropertiesConfig.ts +0 -213
  113. package/src/classes/Properties/PropertiesConvector.ts +0 -52
  114. package/src/classes/Properties/PropertiesFile.ts +0 -522
  115. package/src/classes/Properties/PropertiesImport.ts +0 -182
  116. package/src/classes/Properties/PropertiesItems.ts +0 -605
  117. package/src/classes/Properties/PropertiesKeys.ts +0 -121
  118. package/src/classes/Properties/PropertiesMain.ts +0 -138
  119. package/src/classes/Properties/PropertiesPalette.ts +0 -149
  120. package/src/classes/Properties/PropertiesPath.ts +0 -193
  121. package/src/classes/Properties/PropertiesScss.ts +0 -261
  122. package/src/classes/Properties/PropertiesSeparator.ts +0 -118
  123. package/src/classes/Properties/PropertiesSettings.ts +0 -104
  124. package/src/classes/Properties/PropertiesStandard.ts +0 -180
  125. package/src/classes/Properties/PropertiesTool.ts +0 -80
  126. package/src/classes/Properties/PropertiesTypes.ts +0 -147
  127. package/src/classes/Properties/PropertiesValues.ts +0 -75
  128. package/src/classes/Properties/PropertiesWrap.ts +0 -187
  129. package/src/classes/Properties/convector/convectorColor.ts +0 -27
  130. package/src/classes/Properties/convector/convectorFontFamilies.ts +0 -18
  131. package/src/classes/Properties/convector/convectorShadow.ts +0 -61
  132. package/src/classes/Properties/convector/convectorTypography.ts +0 -19
  133. package/src/classes/Properties/to/PropertiesToAbstract.ts +0 -51
  134. package/src/classes/Properties/to/PropertiesToAnimate.ts +0 -59
  135. package/src/classes/Properties/to/PropertiesToClass.ts +0 -49
  136. package/src/classes/Properties/to/PropertiesToClone.ts +0 -114
  137. package/src/classes/Properties/to/PropertiesToComponent.ts +0 -52
  138. package/src/classes/Properties/to/PropertiesToDrag.ts +0 -231
  139. package/src/classes/Properties/to/PropertiesToDuplicate.ts +0 -165
  140. package/src/classes/Properties/to/PropertiesToFull.ts +0 -36
  141. package/src/classes/Properties/to/PropertiesToLink.ts +0 -259
  142. package/src/classes/Properties/to/PropertiesToMedia.ts +0 -187
  143. package/src/classes/Properties/to/PropertiesToMulti.ts +0 -101
  144. package/src/classes/Properties/to/PropertiesToNone.ts +0 -46
  145. package/src/classes/Properties/to/PropertiesToPalette.ts +0 -241
  146. package/src/classes/Properties/to/PropertiesToProperty.ts +0 -31
  147. package/src/classes/Properties/to/PropertiesToRemove.ts +0 -33
  148. package/src/classes/Properties/to/PropertiesToReplace.ts +0 -77
  149. package/src/classes/Properties/to/PropertiesToRoot.ts +0 -40
  150. package/src/classes/Properties/to/PropertiesToSimilar.ts +0 -128
  151. package/src/classes/Properties/to/PropertiesToSort.ts +0 -146
  152. package/src/classes/Properties/to/PropertiesToState.ts +0 -65
  153. package/src/classes/Properties/to/PropertiesToStyle.ts +0 -52
  154. package/src/classes/Properties/to/PropertiesToSub.ts +0 -95
  155. package/src/classes/Properties/to/PropertiesToSubclass.ts +0 -76
  156. package/src/classes/Properties/to/PropertiesToVar.ts +0 -194
  157. package/src/classes/Properties/to/PropertiesToVariable.ts +0 -176
  158. package/src/classes/Styles/Styles.ts +0 -247
  159. package/src/classes/Styles/StylesClasses.ts +0 -86
  160. package/src/classes/Styles/StylesProperties.ts +0 -197
  161. package/src/classes/Styles/StylesRoot.ts +0 -103
  162. package/src/classes/Styles/StylesTool.ts +0 -112
  163. package/src/classes/Styles/to/StylesToAbstract.ts +0 -93
  164. package/src/classes/Styles/to/StylesToAnimate.ts +0 -19
  165. package/src/classes/Styles/to/StylesToClass.ts +0 -25
  166. package/src/classes/Styles/to/StylesToClassFull.ts +0 -19
  167. package/src/classes/Styles/to/StylesToContainer.ts +0 -24
  168. package/src/classes/Styles/to/StylesToMedia.ts +0 -19
  169. package/src/classes/Styles/to/StylesToProperty.ts +0 -123
  170. package/src/classes/Styles/to/StylesToRoot.ts +0 -14
  171. package/src/classes/Styles/to/StylesToSelector.ts +0 -71
  172. package/src/classes/Styles/to/StylesToVar.ts +0 -105
  173. package/src/classes/Styles/to/StylesToVirtual.ts +0 -33
  174. package/src/composables/useAi.ts +0 -38
  175. package/src/demo/ai.ts +0 -10
  176. package/src/functions/getComponentPaths.ts +0 -13
  177. package/src/functions/getConfigAi.ts +0 -14
  178. package/src/functions/getConstructorProperties.ts +0 -54
  179. package/src/functions/getDirname.ts +0 -17
  180. package/src/functions/getNameDirByPaths.ts +0 -16
  181. package/src/functions/getPackageJson.ts +0 -19
  182. package/src/functions/hasNativeDirname.ts +0 -8
  183. package/src/functions/run.ts +0 -47
  184. package/src/functions/toPathStandardSep.ts +0 -14
  185. package/src/library-ai.ts +0 -10
  186. package/src/library.ts +0 -73
  187. package/src/media/ai/ai-doc-types.ts +0 -21
  188. package/src/media/properties/css.ts +0 -634
  189. package/src/media/properties/cssSelector.ts +0 -74
  190. package/src/media/properties/cssVirtual.ts +0 -12
  191. package/src/media/properties/listSort.ts +0 -113
  192. package/src/media/properties/style.ts +0 -81
  193. package/src/media/templates/component/DesignComponent.mdx +0 -30
  194. package/src/media/templates/component/DesignComponent.stories.ts +0 -34
  195. package/src/media/templates/component/DesignComponent.vue +0 -54
  196. package/src/media/templates/component/DesignComponentAiWiki.vue +0 -25
  197. package/src/media/templates/component/index.ts +0 -13
  198. package/src/media/templates/component/props.ts +0 -27
  199. package/src/media/templates/component/styleToken.scss +0 -17
  200. package/src/media/templates/component/wiki.ts +0 -13
  201. package/src/media/templates/component/wikiData.ts +0 -28
  202. package/src/media/templates/componentDoc/ComponentDoc.vue +0 -26
  203. package/src/media/templates/componentDoc/index.ts +0 -12
  204. package/src/media/templates/componentDoc/materials/README.md +0 -8
  205. package/src/media/templates/componentDoc/materials/prompt.md +0 -38
  206. package/src/media/templates/componentDoc/subcomponents/_.gitignore.txt +0 -0
  207. package/src/media/templates/componentDoc/types.ts +0 -15
  208. package/src/media/templates/componentDoc/wiki/ComponentDoc.mdx +0 -13
  209. package/src/media/templates/componentDoc/wiki/ComponentDoc.stories.ts +0 -24
  210. package/src/media/templates/componentDoc/wiki/prompt.md +0 -41
  211. package/src/media/templates/constructors/Constructors.ts +0 -33
  212. package/src/media/templates/constructors/ConstructorsDesign.tsx +0 -129
  213. package/src/media/templates/constructors/basicTypes.ts +0 -0
  214. package/src/media/templates/constructors/index.ts +0 -5
  215. package/src/media/templates/constructors/props.ts +0 -28
  216. package/src/media/templates/constructors/style.scss +0 -5
  217. package/src/media/templates/constructors/types.ts +0 -47
  218. package/src/media/templates/packages/figma/README.md +0 -1
  219. package/src/media/templates/packages/figma/_.gitignore.txt +0 -29
  220. package/src/media/templates/packages/figma/ai.sample.config.ts +0 -2
  221. package/src/media/templates/packages/figma/design.config.json +0 -3
  222. package/src/media/templates/packages/figma/index.html +0 -12
  223. package/src/media/templates/packages/figma/manifest.json +0 -25
  224. package/src/media/templates/packages/figma/package.json +0 -37
  225. package/src/media/templates/packages/figma/src/App.vue +0 -9
  226. package/src/media/templates/packages/figma/src/classes/_.gitignore.txt +0 -1
  227. package/src/media/templates/packages/figma/src/code.ts +0 -16
  228. package/src/media/templates/packages/figma/src/components/_.gitignore.txt +0 -1
  229. package/src/media/templates/packages/figma/src/composables/_.gitignore.txt +0 -1
  230. package/src/media/templates/packages/figma/src/config.ts +0 -0
  231. package/src/media/templates/packages/figma/src/functions/_.gitignore.txt +0 -1
  232. package/src/media/templates/packages/figma/src/library.ts +0 -0
  233. package/src/media/templates/packages/figma/src/main.ts +0 -4
  234. package/src/media/templates/packages/figma/src/media/_.gitignore.txt +0 -1
  235. package/src/media/templates/packages/figma/src/storybook/_.gitignore.txt +0 -1
  236. package/src/media/templates/packages/figma/src/types/_.gitignore.txt +0 -1
  237. package/src/media/templates/packages/figma/src/vite-env.d.ts +0 -1
  238. package/src/media/templates/packages/figma/tsconfig.app.json +0 -12
  239. package/src/media/templates/packages/figma/tsconfig.json +0 -7
  240. package/src/media/templates/packages/figma/tsconfig.node.json +0 -8
  241. package/src/media/templates/packages/figma/vite.config.ts +0 -7
  242. package/src/media/templates/packages/library/README.md +0 -1
  243. package/src/media/templates/packages/library/_.gitignore.txt +0 -27
  244. package/src/media/templates/packages/library/ai-description.md +0 -15
  245. package/src/media/templates/packages/library/design.config.json +0 -3
  246. package/src/media/templates/packages/library/index.html +0 -12
  247. package/src/media/templates/packages/library/materials/README.md +0 -8
  248. package/src/media/templates/packages/library/materials/prompt.md +0 -45
  249. package/src/media/templates/packages/library/package.json +0 -46
  250. package/src/media/templates/packages/library/src/App.vue +0 -8
  251. package/src/media/templates/packages/library/src/classes/_.gitignore.txt +0 -1
  252. package/src/media/templates/packages/library/src/components/_.gitignore.txt +0 -1
  253. package/src/media/templates/packages/library/src/composables/_.gitignore.txt +0 -1
  254. package/src/media/templates/packages/library/src/functions/_.gitignore.txt +0 -1
  255. package/src/media/templates/packages/library/src/library.ts +0 -0
  256. package/src/media/templates/packages/library/src/main.ts +0 -6
  257. package/src/media/templates/packages/library/src/style.scss +0 -0
  258. package/src/media/templates/packages/library/src/types/_.gitignore.txt +0 -1
  259. package/src/media/templates/packages/library/src/vite-env.d.ts +0 -1
  260. package/src/media/templates/packages/library/tsconfig.app.json +0 -11
  261. package/src/media/templates/packages/library/tsconfig.json +0 -7
  262. package/src/media/templates/packages/library/tsconfig.node.json +0 -7
  263. package/src/media/templates/packages/library/vite.config.ts +0 -14
  264. package/src/media/templates/packages/nitro/README.md +0 -1
  265. package/src/media/templates/packages/nitro/_.gitignore.txt +0 -28
  266. package/src/media/templates/packages/nitro/index.html +0 -2
  267. package/src/media/templates/packages/nitro/package.json +0 -25
  268. package/src/media/templates/packages/nitro/server/plugins/ui-plugin.ts +0 -7
  269. package/src/media/templates/packages/nitro/server/routes/api/hello.ts +0 -13
  270. package/src/media/templates/packages/nitro/src/App.vue +0 -10
  271. package/src/media/templates/packages/nitro/src/assets/_.gitignore.txt +0 -0
  272. package/src/media/templates/packages/nitro/src/components/_.gitignore.txt +0 -0
  273. package/src/media/templates/packages/nitro/src/composables/_.gitignore.txt +0 -0
  274. package/src/media/templates/packages/nitro/src/entry-client.ts +0 -13
  275. package/src/media/templates/packages/nitro/src/entry-server.ts +0 -29
  276. package/src/media/templates/packages/nitro/src/main.ts +0 -14
  277. package/src/media/templates/packages/nitro/src/pages/HomePage.vue +0 -8
  278. package/src/media/templates/packages/nitro/src/router.ts +0 -11
  279. package/src/media/templates/packages/nitro/src/style.scss +0 -0
  280. package/src/media/templates/packages/nitro/src/templates/main.html +0 -21
  281. package/src/media/templates/packages/nitro/src/vite-env.d.ts +0 -11
  282. package/src/media/templates/packages/nitro/tsconfig.app.json +0 -14
  283. package/src/media/templates/packages/nitro/tsconfig.json +0 -7
  284. package/src/media/templates/packages/nitro/tsconfig.node.json +0 -12
  285. package/src/media/templates/packages/nitro/vite.config.ts +0 -17
  286. package/src/media/templates/packages/project/README.md +0 -1
  287. package/src/media/templates/packages/project/_.gitignore.txt +0 -28
  288. package/src/media/templates/packages/project/design.config.json +0 -3
  289. package/src/media/templates/packages/project/index.html +0 -12
  290. package/src/media/templates/packages/project/materials/README.md +0 -8
  291. package/src/media/templates/packages/project/materials/prompt.md +0 -41
  292. package/src/media/templates/packages/project/package.json +0 -13
  293. package/src/media/templates/packages/project/public/_.gitignore.txt +0 -0
  294. package/src/media/templates/packages/project/src/App.vue +0 -12
  295. package/src/media/templates/packages/project/src/assets/_.gitignore.txt +0 -0
  296. package/src/media/templates/packages/project/src/components/_.gitignore.txt +0 -0
  297. package/src/media/templates/packages/project/src/composables/_.gitignore.txt +0 -0
  298. package/src/media/templates/packages/project/src/main.ts +0 -6
  299. package/src/media/templates/packages/project/src/style.scss +0 -0
  300. package/src/media/templates/packages/project/src/vite-env.d.ts +0 -1
  301. package/src/media/templates/packages/project/tsconfig.app.json +0 -11
  302. package/src/media/templates/packages/project/tsconfig.json +0 -7
  303. package/src/media/templates/packages/project/tsconfig.node.json +0 -7
  304. package/src/media/templates/packages/project/vite.config.ts +0 -7
  305. package/src/media/templates/prompts/aiCodeGlobalPrompt.en.md +0 -22
  306. package/src/media/templates/prompts/aiCodeGlobalPrompt.ru.md +0 -21
  307. package/src/media/templates/prompts/aiCodeVuePrompt.en.md +0 -17
  308. package/src/media/templates/prompts/aiCodeVuePrompt.ru.md +0 -17
  309. package/src/media/templates/prompts/aiDocClassPrompt.en.txt +0 -63
  310. package/src/media/templates/prompts/aiDocClassPrompt.ru.txt +0 -63
  311. package/src/media/templates/prompts/aiDocComposablePrompt.en.txt +0 -67
  312. package/src/media/templates/prompts/aiDocComposablePrompt.ru.txt +0 -67
  313. package/src/media/templates/prompts/aiDocFunctionPrompt.en.txt +0 -57
  314. package/src/media/templates/prompts/aiDocFunctionPrompt.ru.txt +0 -57
  315. package/src/media/templates/prompts/componentPrompt.en.txt +0 -182
  316. package/src/media/templates/prompts/componentPrompt.ru.txt +0 -182
  317. package/src/media/templates/prompts/demoClassEn.mdx +0 -111
  318. package/src/media/templates/prompts/demoClassRu.mdx +0 -111
  319. package/src/media/templates/prompts/demoComponentEn.mdx +0 -282
  320. package/src/media/templates/prompts/demoComponentRu.mdx +0 -282
  321. package/src/media/templates/prompts/demoComposableEn.mdx +0 -103
  322. package/src/media/templates/prompts/demoComposableRu.mdx +0 -103
  323. package/src/media/templates/prompts/demoDocEn.mdx +0 -30
  324. package/src/media/templates/prompts/demoDocRu.mdx +0 -30
  325. package/src/media/templates/viteComponentTemplateConfig.ts +0 -14
  326. package/src/types/aiTypes.ts +0 -19
  327. package/src/types/configTypes.ts +0 -69
  328. package/src/types/designTypes.ts +0 -167
  329. package/src/types/figmaApiTypes.ts +0 -337
  330. package/src/types/gitTypes.ts +0 -59
  331. package/src/types/libraryTypes.ts +0 -49
  332. package/src/types/propertyTypes.ts +0 -586
  333. package/src/types/screenshotTypes.ts +0 -55
  334. package/src/types/webTypes.ts +0 -134
  335. package/src/vite-env.d.ts +0 -1
@@ -1,127 +0,0 @@
1
- import { PropertiesFile } from '../Properties/PropertiesFile'
2
- import { LibraryItems } from './LibraryItems'
3
- import { LibraryAiWikiItem } from './LibraryAiWikiItem'
4
-
5
- import { UI_DIRS_COMPONENTS } from '../../config'
6
-
7
- /**
8
- * Class for creating a list of components for AI Wiki.
9
- *
10
- * Класс для создания списка компонентов для AI Wiki.
11
- */
12
- export class LibraryAiWiki {
13
- /**
14
- * Constructor
15
- * @param items object for working with the list of components / объект для работы со списком компонентов
16
- */
17
- constructor(
18
- protected readonly items: LibraryItems
19
- ) {
20
- }
21
-
22
- /**
23
- * Creates files for AI Wiki.
24
- *
25
- * Создает файлы для AI Wiki.
26
- */
27
- make(): void {
28
- this.makeList()
29
- this.makeComponent()
30
- }
31
-
32
- /**
33
- * Returns the file name for the list.
34
- *
35
- * Возвращает имя файла для списка.
36
- */
37
- protected getFileList(): string {
38
- return 'ai-list'
39
- }
40
-
41
- /**
42
- * Returns a list of components for AI Wiki.
43
- *
44
- * Возвращает список компонентов для AI Wiki.
45
- */
46
- protected getList(): LibraryAiWikiItem[] {
47
- const data: LibraryAiWikiItem[] = []
48
-
49
- this.items.getComponentList()
50
- .forEach((component) => {
51
- const aiWiki = new LibraryAiWikiItem(component)
52
-
53
- if (aiWiki.isAiWiki()) {
54
- data.push(aiWiki)
55
- }
56
- })
57
-
58
- return data
59
- }
60
-
61
- /**
62
- * Creates a file with a list of components.
63
- *
64
- * Создает файл со списком компонентов.
65
- */
66
- protected makeList(): void {
67
- const data = this.getList()
68
- const imports: string[] = []
69
- const list: string[] = []
70
-
71
- console.log('Ai wiki:', data.length, 'components')
72
-
73
- data.forEach((item) => {
74
- imports.push(item.getImport())
75
- list.push(` ${item.getCode()}`)
76
- })
77
-
78
- this.items.write(
79
- this.getFileList(),
80
- [
81
- ...imports,
82
- '',
83
- 'export const aiList: any[] = [',
84
- list.join(',\r\n'),
85
- ']'
86
- ],
87
- 'wiki.ts'
88
- )
89
- }
90
-
91
- /**
92
- * Creates a component for displaying the list.
93
- *
94
- * Создает компонент для отображения списка.
95
- */
96
- protected makeComponent() {
97
- PropertiesFile.writeByPath(
98
- [...UI_DIRS_COMPONENTS, 'AiWiki.vue'],
99
- `<script setup lang="ts">
100
- // This file is generated by a script, do not edit.
101
-
102
- import { DxtTestPage, DxtTestWikiAnchor, DxtTestWikiHide } from '@dxtmisha/test'
103
- import { aiList } from '../library/${this.getFileList()}.wiki'
104
-
105
- defineOptions({
106
- name: 'AiWiki'
107
- })
108
- </script>
109
-
110
- <template>
111
- <DxtTestPage
112
- title="List of available UI components"
113
- description="Below is a list of Vue 3 components available in the UI. These components are available immediately and do not need to be imported."
114
- >
115
- <DxtTestWikiHide/>
116
- <DxtTestWikiAnchor :list="aiList"/>
117
- <component
118
- v-for="(item, key) in aiList"
119
- :key="key"
120
- :is="item"
121
- />
122
- </DxtTestPage>
123
- </template>
124
- `
125
- )
126
- }
127
- }
@@ -1,79 +0,0 @@
1
- import type { LibraryData } from '../../types/libraryTypes'
2
-
3
- import { PropertiesConfig } from '../Properties/PropertiesConfig'
4
- import { PropertiesFile } from '../Properties/PropertiesFile'
5
-
6
- import { UI_DIRS_COMPONENTS } from '../../config'
7
-
8
- /**
9
- * Class for working with the AI Wiki component.
10
- *
11
- * Класс для работы с компонентом AI Wiki.
12
- */
13
- export class LibraryAiWikiItem {
14
- /**
15
- * Constructor
16
- * @param item component data / данные компонента
17
- */
18
- constructor(
19
- protected readonly item: LibraryData
20
- ) {
21
- }
22
-
23
- /**
24
- * Checks if the AI Wiki file exists.
25
- *
26
- * Проверяет, существует ли файл AI Wiki.
27
- */
28
- isAiWiki(): boolean {
29
- return PropertiesFile.is(this.getPath())
30
- }
31
-
32
- /**
33
- * Returns the component code.
34
- *
35
- * Возвращает код компонента.
36
- */
37
- getCode(): string {
38
- return this.item.codeFull
39
- }
40
-
41
- /**
42
- * Returns the file name for the AI Wiki component.
43
- *
44
- * Возвращает имя файла для компонента AI Wiki.
45
- */
46
- getComponentFileNameAiWiki(): string {
47
- return `${this.item.codeFull}AiWiki.vue`
48
- }
49
-
50
- /**
51
- * Returns the import string for the component.
52
- *
53
- * Возвращает строку импорта для компонента.
54
- */
55
- getImport(): string {
56
- const code = this.item.codeFull
57
- const path: string[] = [
58
- '..',
59
- '..',
60
- ...this.getPath()
61
- ]
62
-
63
- return `import ${code} from '${path.join('/')}'`
64
- }
65
-
66
- /**
67
- * Returns the path to the file.
68
- *
69
- * Возвращает путь к файлу.
70
- */
71
- protected getPath(): string[] {
72
- return [
73
- ...UI_DIRS_COMPONENTS,
74
- PropertiesConfig.getProjectName(),
75
- this.item.dir,
76
- this.getComponentFileNameAiWiki()
77
- ]
78
- }
79
- }
@@ -1,167 +0,0 @@
1
- import { PropertiesFile } from '../Properties/PropertiesFile'
2
-
3
- import type { LibraryFiles } from '../../types/libraryTypes'
4
-
5
- import {
6
- UI_DIRS_LIST_EXPORT,
7
- UI_DIRS_FILE_EXPORT,
8
- UI_DIR_IN,
9
- UI_FLAG_NOT_EXPORT
10
- } from '../../config'
11
-
12
- /**
13
- * Class for generating exportable data
14
- *
15
- * Класс для генерации экспортируемых данных
16
- */
17
- export class LibraryExport {
18
- /**
19
- * Start of data generation
20
- *
21
- * Начало генерации данных
22
- */
23
- make() {
24
- console.log('Library export')
25
-
26
- PropertiesFile.writeByPath(
27
- UI_DIRS_FILE_EXPORT,
28
- `${this.initFile().trim()}\r\n`
29
- )
30
-
31
- console.log('\r\nfinish')
32
- }
33
-
34
- /**
35
- * Returns the path to the directory
36
- *
37
- * Возвращает путь к директории
38
- * @param directory selected directory/ выбранная директория
39
- */
40
- protected getPath(directory: string): string[] {
41
- return [UI_DIR_IN, directory]
42
- }
43
-
44
- /**
45
- * Проверяет, нужно ли экспортировать этот файл
46
- *
47
- * Checks whether this file needs to be exported
48
- * @param path filename/ имя файла
49
- */
50
- protected isExport(path: string | string[]): boolean {
51
- return !PropertiesFile.joinPath(path).match('.test.') && !this.getFile(path).match(UI_FLAG_NOT_EXPORT)
52
- }
53
-
54
- /**
55
- * Returns a list of all files for export
56
- *
57
- * Возвращает список всех файлов для экспорта
58
- */
59
- protected getDirectory(): LibraryFiles {
60
- const files: LibraryFiles = []
61
-
62
- UI_DIRS_LIST_EXPORT
63
- .forEach((directory) => {
64
- const path = this.getPath(directory)
65
- const list = PropertiesFile.readDirRecursiveWithIndex(path)
66
-
67
- if (list.length > 0) {
68
- files.push({
69
- name: directory,
70
- path,
71
- files: list
72
- })
73
- }
74
- })
75
-
76
- return files
77
- }
78
-
79
- /**
80
- * Returns the folder name
81
- *
82
- * Возвращает название папки
83
- * @param name folder name/ название папки
84
- */
85
- protected getName(name: string) {
86
- return name.replace(/^[a-z]/, char => char.toUpperCase())
87
- }
88
-
89
- /**
90
- * Возвращает содержимое файла
91
- *
92
- * Returns the content of the file
93
- * @param path filename/ имя файла
94
- */
95
- protected getFile(path: string | string[]): string {
96
- return PropertiesFile.readFile<string>(path) ?? ''
97
- }
98
-
99
- /**
100
- * File generation for saving
101
- *
102
- * Генерация файла для сохранения
103
- */
104
- protected initFile(): string {
105
- const files: LibraryFiles = this.getDirectory()
106
- const imports: string[] = [
107
- this.initStyles()
108
- ]
109
- const html: string[] = []
110
-
111
- files.forEach((file) => {
112
- const name = file.name
113
-
114
- html.push('')
115
- html.push(`// ${this.getName(name)}`)
116
-
117
- console.log(name)
118
-
119
- file.files.forEach(
120
- (item) => {
121
- if (this.isExport([...file.path, item])) {
122
- console.log(` ${item}`)
123
-
124
- if (item.match(/\.ts$/)) {
125
- html.push(`export * from './${name}/${item.replace(/\.ts$/, '')}'`)
126
- } else if (item.match(/\.vue$/)) {
127
- const componentName = item
128
- .replace(/\.vue$/, '')
129
- .replace(/^(.*?)([^/]+)$/, '$2')
130
-
131
- imports.push(`import _${componentName} from './${name}/${item}'`)
132
- html.push(`export const ${componentName} = _${componentName}`)
133
- }
134
- }
135
- }
136
- )
137
- })
138
-
139
- return imports.join('\r\n').trim()
140
- + '\r\n'
141
- + '\r\n'
142
- + html.join('\r\n').trim()
143
- }
144
-
145
- /**
146
- * Generates imports for global styles
147
- *
148
- * Генерация импортов для глобальных стилей
149
- */
150
- protected initStyles(): string {
151
- const imports: string[] = []
152
- const paths: string[] = [
153
- 'style.scss',
154
- 'style.css'
155
- ]
156
-
157
- paths.forEach((path) => {
158
- const fullPath = [UI_DIR_IN, path]
159
-
160
- if (PropertiesFile.is(fullPath)) {
161
- imports.push(`import './${path}'`)
162
- }
163
- })
164
-
165
- return imports.join('\r\n') + '\r\n'
166
- }
167
- }
@@ -1,62 +0,0 @@
1
- // export:none
2
-
3
- import { forEach, toCamelCaseFirst, toKebabCase } from '@dxtmisha/functional-basic'
4
- import flags from '@dxtmisha/media/flags'
5
-
6
- import { LibraryItems } from './LibraryItems'
7
-
8
- import { UI_FILE_NAME_FLAGS } from '../../config'
9
-
10
- /**
11
- * Class for generating connection files for country flags and providing a list of flag identifiers.
12
- *
13
- * Класс для формирования файлов подключения флагов стран и предоставления списка идентификаторов флагов.
14
- */
15
- export class LibraryFlags {
16
- /**
17
- * Constructor for LibraryFlags.
18
- *
19
- * Конструктор для LibraryFlags.
20
- * @param items object for working with the list of components / объект для работы со списком компонентов
21
- */
22
- constructor(
23
- protected readonly items: LibraryItems
24
- ) {
25
- }
26
-
27
- /**
28
- * Generates flag connection files (TypeScript) and a list of flag keys (JSON).
29
- *
30
- * Генерирует файлы подключения флагов (TypeScript) и список ключей флагов (JSON).
31
- */
32
- make(): void {
33
- const data: string[] = []
34
- const json: string[] = []
35
-
36
- forEach(flags, (_, flag) => {
37
- const name = toCamelCaseFirst(flag.replace('.', '-'))
38
- const key = `flag-${toKebabCase(name.replace('Svg', ''))}`
39
-
40
- data.push(` Icons.add('${key}', flags.${flag})`)
41
- json.push(key)
42
- })
43
-
44
- this.items.write(
45
- UI_FILE_NAME_FLAGS,
46
- [
47
- 'import { Icons } from \'@dxtmisha/functional\'',
48
- 'import flags from \'@dxtmisha/media/flags\'',
49
- '',
50
- 'export const makeFlags = (): void => {',
51
- ...data,
52
- '}'
53
- ]
54
- )
55
-
56
- this.items.write(
57
- UI_FILE_NAME_FLAGS,
58
- [JSON.stringify(json)],
59
- 'json'
60
- )
61
- }
62
- }
@@ -1,138 +0,0 @@
1
- // export:none
2
-
3
- import { toCamelCaseFirst, toKebabCase } from '@dxtmisha/functional-basic'
4
-
5
- import { PropertiesConfig } from '../Properties/PropertiesConfig'
6
- import { PropertiesFile } from '../Properties/PropertiesFile'
7
-
8
- import type { LibraryData, LibraryAll } from '../../types/libraryTypes'
9
-
10
- import { UI_DIRS_LIBRARY, UI_DIRS_COMPONENTS } from '../../config'
11
-
12
- /**
13
- * Class for working with the list of components.
14
- *
15
- * Класс для работы со списком компонентов.
16
- */
17
- export class LibraryItems {
18
- protected readonly items: LibraryAll
19
-
20
- /**
21
- * Constructor
22
- */
23
- constructor() {
24
- this.items = this.initItems()
25
- }
26
-
27
- /**
28
- * Returns the list of components divided by design groups.
29
- *
30
- * Возвращает список компонентов, разделенных по группам дизайна.
31
- */
32
- get(): LibraryAll {
33
- return this.items
34
- }
35
-
36
- /**
37
- * Returns the list of components as an array.
38
- *
39
- * Возвращает список компонентов в виде массива.
40
- */
41
- getComponentList(): LibraryData[] {
42
- const list: LibraryData[] = []
43
-
44
- this.items.forEach(item => list.push(...item.components))
45
-
46
- return list
47
- }
48
-
49
- /**
50
- * Returns the number of components.
51
- *
52
- * Возвращает количество компонентов.
53
- */
54
- getCount(): number {
55
- return this.getComponentList().length
56
- }
57
-
58
- /**
59
- * Returns the path to the design system components directory
60
- *
61
- * Возвращает путь к директории компонентов дизайн-системы
62
- */
63
- getComponentsPath(): string[] {
64
- return [...UI_DIRS_COMPONENTS, PropertiesConfig.getProjectName()]
65
- }
66
-
67
- /**
68
- * Writes data in the file.
69
- *
70
- * Записывает данные в файле.
71
- * @param name file name/ название файла
72
- * @param data values for writing/ значения для записи
73
- * @param extension file extension by default is json/ расширение файла по умолчанию - json
74
- */
75
- write(
76
- name: string,
77
- data: string[],
78
- extension: string = 'ts'
79
- ): void {
80
- const file = extension === 'json'
81
- ? data
82
- : [
83
- '// This file is generated by a script, do not edit.',
84
- '// Этот файл генерируется скриптом, не редактировать.',
85
- '',
86
- ...data,
87
- ''
88
- ]
89
-
90
- PropertiesFile.write(
91
- UI_DIRS_LIBRARY,
92
- name,
93
- file.join('\r\n'),
94
- extension
95
- )
96
- }
97
-
98
- /**
99
- * Returns a list of components.
100
- *
101
- * Возвращает список компонентов.
102
- */
103
- protected getComponents(): LibraryData[] {
104
- const list: LibraryData[] = []
105
- const dirs = PropertiesFile.readDir(this.getComponentsPath())
106
- const design = PropertiesConfig.getDesignName()
107
-
108
- dirs.forEach((dir) => {
109
- if (PropertiesFile.isDir(dir)) {
110
- const name = toKebabCase(dir).trim()
111
-
112
- list.push({
113
- name,
114
- design,
115
- alias: `${design}.${name}`,
116
- codeFull: toCamelCaseFirst(`${design}-${name}`),
117
- dir
118
- })
119
- }
120
- })
121
-
122
- return list
123
- }
124
-
125
- /**
126
- * Initializes data about the component.
127
- *
128
- * Инициализирует данные о компоненте.
129
- */
130
- protected initItems(): LibraryAll {
131
- return [
132
- {
133
- name: PropertiesConfig.getDesignName(),
134
- components: this.getComponents()
135
- }
136
- ]
137
- }
138
- }