sprof 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/README.md +29 -0
  2. package/package.json +101 -0
  3. package/src/Hooks/Hooks.ts +75 -0
  4. package/src/assets/img/avatar.webp +0 -0
  5. package/src/assets/styles/borders.scss +11 -0
  6. package/src/assets/styles/brandbook.css +227 -0
  7. package/src/assets/styles/colors.scss +42 -0
  8. package/src/assets/styles/fonts.scss +15 -0
  9. package/src/assets/styles/index.css +15 -0
  10. package/src/assets/styles/index.scss +45 -0
  11. package/src/assets/styles/platform/android.css +53 -0
  12. package/src/assets/styles/platform/ios.css +53 -0
  13. package/src/assets/styles/platform/webdesktop.css +72 -0
  14. package/src/assets/styles/platform/webdesktop_old.css +65 -0
  15. package/src/assets/styles/platform/webmobile.css +53 -0
  16. package/src/assets/styles/platform/webtablet.css +53 -0
  17. package/src/assets/styles/reset.scss +28 -0
  18. package/src/assets/styles/shadow.scss +6 -0
  19. package/src/assets/styles/theme/aquaBlueLight.css +162 -0
  20. package/src/assets/styles/theme/blueLight.css +187 -0
  21. package/src/assets/styles/theme/blueLight_test.css +162 -0
  22. package/src/assets/styles/theme/dark.css +286 -0
  23. package/src/assets/styles/theme/light.css +151 -0
  24. package/src/assets/svg/ArrowLeft.svg +5 -0
  25. package/src/assets/svg/ArrowRight.svg +5 -0
  26. package/src/assets/svg/Close.svg +7 -0
  27. package/src/assets/svg/DoubleArrowLeft.svg +5 -0
  28. package/src/assets/svg/DoubleArrowRight.svg +5 -0
  29. package/src/assets/svg/Ellipsis.svg +7 -0
  30. package/src/assets/svg/Filter.svg +10 -0
  31. package/src/assets/svg/Menu.svg +5 -0
  32. package/src/assets/svg/Move.svg +5 -0
  33. package/src/assets/svg/Password.svg +5 -0
  34. package/src/assets/svg/RightMenu.svg +5 -0
  35. package/src/assets/svg/Settings.svg +6 -0
  36. package/src/assets/svg/User.svg +6 -0
  37. package/src/buildLibrary.ts +59 -0
  38. package/src/classes/Auth.ts +63 -0
  39. package/src/classes/AuthButton.ts +64 -0
  40. package/src/classes/AuthForm.ts +114 -0
  41. package/src/classes/AuthModal.ts +32 -0
  42. package/src/classes/AuthStatusesObjects.ts +37 -0
  43. package/src/classes/AuthTokens.ts +43 -0
  44. package/src/classes/AuthUser.ts +53 -0
  45. package/src/classes/CallbackRequest.ts +12 -0
  46. package/src/classes/Chat.ts +18 -0
  47. package/src/classes/ChatMessage.ts +48 -0
  48. package/src/classes/Contact.ts +96 -0
  49. package/src/classes/Cropper.ts +22 -0
  50. package/src/classes/DateHelper.ts +29 -0
  51. package/src/classes/Email.ts +18 -0
  52. package/src/classes/EmailField.ts +42 -0
  53. package/src/classes/EmailRules.ts +4 -0
  54. package/src/classes/FTSPPreset.ts +16 -0
  55. package/src/classes/FileInfo.ts +86 -0
  56. package/src/classes/HttpResponse.ts +22 -0
  57. package/src/classes/Human.ts +106 -0
  58. package/src/classes/LabelValue.ts +11 -0
  59. package/src/classes/LocalStore.ts +22 -0
  60. package/src/classes/M2M.ts +25 -0
  61. package/src/classes/Menu.ts +102 -0
  62. package/src/classes/PageSectionImage.ts +19 -0
  63. package/src/classes/PasswordField.ts +39 -0
  64. package/src/classes/PasswordRepeatField.ts +37 -0
  65. package/src/classes/Phone.ts +17 -0
  66. package/src/classes/PostAddress.ts +11 -0
  67. package/src/classes/PostAddressRules.ts +1 -0
  68. package/src/classes/Role.ts +13 -0
  69. package/src/classes/Schema.ts +13 -0
  70. package/src/classes/SchemaField.ts +10 -0
  71. package/src/classes/SearchElement.ts +18 -0
  72. package/src/classes/SearchElementMeta.ts +10 -0
  73. package/src/classes/SearchGroup.ts +25 -0
  74. package/src/classes/SearchGroupMetaColumn.ts +11 -0
  75. package/src/classes/SearchModel.ts +61 -0
  76. package/src/classes/SortModel.ts +57 -0
  77. package/src/classes/SubMenu.ts +56 -0
  78. package/src/classes/TelephoneNumberRules.ts +9 -0
  79. package/src/classes/User.ts +17 -0
  80. package/src/classes/UserAccount.ts +17 -0
  81. package/src/classes/UserService.ts +20 -0
  82. package/src/classes/ValidationRules.ts +15 -0
  83. package/src/classes/ValueType.ts +69 -0
  84. package/src/classes/Website.ts +11 -0
  85. package/src/classes/WebsiteRules.ts +4 -0
  86. package/src/classes/admin/AdminButtonParams.ts +27 -0
  87. package/src/classes/admin/AdminHeaderParams.ts +34 -0
  88. package/src/classes/calendar/Calendar.ts +168 -0
  89. package/src/classes/calendar/Day.ts +15 -0
  90. package/src/classes/calendar/Month.ts +144 -0
  91. package/src/classes/calendar/Week.ts +44 -0
  92. package/src/classes/calendar/Year.ts +130 -0
  93. package/src/classes/filters/Cursor.ts +43 -0
  94. package/src/classes/filters/FTSP.ts +99 -0
  95. package/src/classes/filters/FilterModel.ts +263 -0
  96. package/src/classes/filters/FilterQuery.ts +187 -0
  97. package/src/classes/filters/OperatorsOptions.ts +8 -0
  98. package/src/classes/filters/OperatorsTextOptions.ts +3 -0
  99. package/src/classes/filters/Pagination.ts +78 -0
  100. package/src/classes/filters/SelectFilter.ts +15 -0
  101. package/src/classes/filters/TreeModel.ts +14 -0
  102. package/src/classes/page/CustomSection.ts +24 -0
  103. package/src/classes/page/Page.ts +160 -0
  104. package/src/classes/page/PageDocument.ts +27 -0
  105. package/src/classes/page/PageImage.ts +15 -0
  106. package/src/classes/page/PageSection.ts +82 -0
  107. package/src/classes/page/PageSectionDocument.ts +56 -0
  108. package/src/classes/page/PageSideMenu.ts +74 -0
  109. package/src/components/AdaptiveContainer.vue +154 -0
  110. package/src/components/AdaptiveContainerHorizontal.vue +173 -0
  111. package/src/components/AdminGallery.vue +238 -0
  112. package/src/components/AuthModal.vue +16 -0
  113. package/src/components/CarouselImages.vue +434 -0
  114. package/src/components/ContactForm.vue +219 -0
  115. package/src/components/ContextWindow.vue +48 -0
  116. package/src/components/DateInputRange.vue +66 -0
  117. package/src/components/DateInputRange_v2.vue +25 -0
  118. package/src/components/DropList.vue +55 -0
  119. package/src/components/Edit.svg +10 -0
  120. package/src/components/EmailForm.vue +180 -0
  121. package/src/components/FTSPPanel.vue +379 -0
  122. package/src/components/FilterCheckbox.vue +73 -0
  123. package/src/components/FilterSelect.vue +104 -0
  124. package/src/components/FiltersButtonsSelect.vue +126 -0
  125. package/src/components/GeneralItem.vue +172 -0
  126. package/src/components/GridContainer.vue +66 -0
  127. package/src/components/Icons/Filter/IconDownload.vue +55 -0
  128. package/src/components/Icons/Filter/IconFilter.vue +55 -0
  129. package/src/components/Icons/IconArrowLeft.vue +36 -0
  130. package/src/components/Icons/IconCheckDefault.vue +41 -0
  131. package/src/components/Icons/IconClose.vue +37 -0
  132. package/src/components/Icons/IconEdit.vue +40 -0
  133. package/src/components/Icons/IconEmail.vue +36 -0
  134. package/src/components/Icons/IconMove.vue +53 -0
  135. package/src/components/Icons/IconPhone.vue +36 -0
  136. package/src/components/Icons/IconSearch.vue +47 -0
  137. package/src/components/Icons/IconSelectArrow.vue +41 -0
  138. package/src/components/Icons/Pagination/ArrowLeft.vue +52 -0
  139. package/src/components/Icons/Pagination/ArrowRight.vue +52 -0
  140. package/src/components/Icons/Pagination/DoubleArrowLeft.vue +52 -0
  141. package/src/components/Icons/Pagination/DoubleArrowRight.vue +52 -0
  142. package/src/components/Icons/Pagination/EllipsisSvg.vue +58 -0
  143. package/src/components/ImageCropper.vue +203 -0
  144. package/src/components/InfoItem.vue +294 -0
  145. package/src/components/InfoItemSelectButtons.vue +43 -0
  146. package/src/components/LeftRightContainer.vue +93 -0
  147. package/src/components/MessageBody.vue +45 -0
  148. package/src/components/PAutocomplete.vue +93 -0
  149. package/src/components/PDialog.vue +77 -0
  150. package/src/components/PLoader.vue +68 -0
  151. package/src/components/PNotification.vue +79 -0
  152. package/src/components/PPagination.vue +174 -0
  153. package/src/components/PhoneForm.vue +180 -0
  154. package/src/components/RSContainer.vue +262 -0
  155. package/src/components/RemoteSearch.vue +156 -0
  156. package/src/components/ResearcheContainer.vue +71 -0
  157. package/src/components/RightSliderContainer.vue +181 -0
  158. package/src/components/RightTabsContainer.vue +210 -0
  159. package/src/components/SelectValueType.vue +39 -0
  160. package/src/components/SingleNameToggleForm.vue +399 -0
  161. package/src/components/SortList.vue +101 -0
  162. package/src/components/SortSelect.vue +93 -0
  163. package/src/components/SvgIcon.vue +25 -0
  164. package/src/components/Switch3Pos.vue +173 -0
  165. package/src/components/ThemeWrapper.vue +19 -0
  166. package/src/components/ToggleInfoItem.vue +296 -0
  167. package/src/components/TopSliderContainer.vue +166 -0
  168. package/src/components/UploaderImage.vue +268 -0
  169. package/src/components/atoms/PButton/PButton.stories.ts +44 -0
  170. package/src/components/atoms/PButton/PButton.test.ts +66 -0
  171. package/src/components/atoms/PButton/PButton.vue +54 -0
  172. package/src/components/atoms/PButton/skins/p-button_base.css +131 -0
  173. package/src/components/atoms/PButton/skins/p-button_filter.scss +83 -0
  174. package/src/components/atoms/PButton/skins/p-button_icon.scss +78 -0
  175. package/src/components/atoms/PButton/skins/p-button_pag.css +44 -0
  176. package/src/components/atoms/PButton/skins/p-button_text.css +88 -0
  177. package/src/components/atoms/PButton/skins/p-button_text_ano.css +88 -0
  178. package/src/components/atoms/PCheckbox/PCheckBox.test.ts +107 -0
  179. package/src/components/atoms/PCheckbox/PCheckBox.vue +92 -0
  180. package/src/components/atoms/PDatePicker/PDatePicker.test.ts +63 -0
  181. package/src/components/atoms/PDatePicker/PDatePicker.vue +141 -0
  182. package/src/components/atoms/PFlex/PFlex.test.ts +41 -0
  183. package/src/components/atoms/PFlex/PFlex.vue +46 -0
  184. package/src/components/atoms/PInput/PInput.stories.ts +40 -0
  185. package/src/components/atoms/PInput/PInput.test.ts +92 -0
  186. package/src/components/atoms/PInput/PInput.vue +133 -0
  187. package/src/components/atoms/PInputDate/PInputDate.test.ts +55 -0
  188. package/src/components/atoms/PInputDate/PInputDate.vue +79 -0
  189. package/src/components/atoms/PInputNumber/PInputNumber.vue +175 -0
  190. package/src/components/atoms/PLeftSlider/PLeftSlider.test.ts +121 -0
  191. package/src/components/atoms/PLeftSlider/PLeftSlider.vue +139 -0
  192. package/src/components/atoms/PList/PList.test.ts +32 -0
  193. package/src/components/atoms/PList/PList.vue +27 -0
  194. package/src/components/atoms/PListItem/PListItem.test.ts +61 -0
  195. package/src/components/atoms/PListItem/PListItem.vue +51 -0
  196. package/src/components/atoms/PRadio/PRadio.test.ts +110 -0
  197. package/src/components/atoms/PRadio/PRadio.vue +97 -0
  198. package/src/components/atoms/PRightSlider/PRightSlider.test.ts +123 -0
  199. package/src/components/atoms/PRightSlider/PRightSlider.vue +149 -0
  200. package/src/components/atoms/PSelect/PSelect.test.ts +74 -0
  201. package/src/components/atoms/PSelect/PSelect.vue +192 -0
  202. package/src/components/atoms/PSelect/select-arrow-down.svg +4 -0
  203. package/src/components/atoms/PSticky/PSticky.test.ts +70 -0
  204. package/src/components/atoms/PSticky/PSticky.vue +37 -0
  205. package/src/components/atoms/PString/PString.test.ts +58 -0
  206. package/src/components/atoms/PString/PString.vue +58 -0
  207. package/src/components/atoms/PTextarea/PTextarea.stories.ts +40 -0
  208. package/src/components/atoms/PTextarea/PTextarea.test.ts +22 -0
  209. package/src/components/atoms/PTextarea/PTextarea.vue +123 -0
  210. package/src/components/atoms/PTopSlider/PTopSlider.test.ts +95 -0
  211. package/src/components/atoms/PTopSlider/PTopSlider.vue +164 -0
  212. package/src/components/molecules/Collapse/CollapseContainer.vue +36 -0
  213. package/src/components/molecules/Collapse/CollapseItem.vue +295 -0
  214. package/src/components/molecules/Collapse/VerticalCollapseContainer.vue +102 -0
  215. package/src/components/molecules/PAdd/PAdd.vue +65 -0
  216. package/src/components/molecules/PAdd/PContainer.vue +65 -0
  217. package/src/components/molecules/PAdd/PContainerStickyHead.vue +51 -0
  218. package/src/components/molecules/PDel/PDel.vue +74 -0
  219. package/src/components/organisms/AuthForm.vue +219 -0
  220. package/src/components/organisms/PModal.vue +113 -0
  221. package/src/components/organisms/PTabs/ITab.ts +5 -0
  222. package/src/components/organisms/PTabs/PTabs.vue +190 -0
  223. package/src/components/organisms/UploaderFile/UploaderFile.test.ts +23 -0
  224. package/src/components/organisms/UploaderFile/UploaderFile.vue +202 -0
  225. package/src/components/pages/AuthPage.vue +22 -0
  226. package/src/components/pages/PageNotFound.vue +7 -0
  227. package/src/index.ts +206 -0
  228. package/src/interfaces/AdminLayout.ts +4 -0
  229. package/src/interfaces/Animations.ts +5 -0
  230. package/src/interfaces/AuthStatuses.ts +8 -0
  231. package/src/interfaces/CalendarScale.ts +6 -0
  232. package/src/interfaces/Callback.ts +2 -0
  233. package/src/interfaces/Class.ts +3 -0
  234. package/src/interfaces/DataTypes.ts +8 -0
  235. package/src/interfaces/Filter.ts +3 -0
  236. package/src/interfaces/IAdminMenu.ts +9 -0
  237. package/src/interfaces/IAuthInfo.ts +0 -0
  238. package/src/interfaces/ICursor.ts +14 -0
  239. package/src/interfaces/IEmailPassword.ts +4 -0
  240. package/src/interfaces/IFIlesList.ts +4 -0
  241. package/src/interfaces/IFile.ts +7 -0
  242. package/src/interfaces/IFileAnchor.ts +4 -0
  243. package/src/interfaces/IFileInfo.ts +22 -0
  244. package/src/interfaces/IFileInfosGetter.ts +5 -0
  245. package/src/interfaces/IFiler.ts +7 -0
  246. package/src/interfaces/IFilter.ts +4 -0
  247. package/src/interfaces/IFilterQuery.ts +24 -0
  248. package/src/interfaces/IForm.ts +5 -0
  249. package/src/interfaces/IHTTPTypes.ts +19 -0
  250. package/src/interfaces/IMessage.ts +5 -0
  251. package/src/interfaces/IOption.ts +4 -0
  252. package/src/interfaces/IOrdered.ts +4 -0
  253. package/src/interfaces/IPagination.ts +15 -0
  254. package/src/interfaces/ISearchElement.ts +6 -0
  255. package/src/interfaces/ISearchObject.ts +6 -0
  256. package/src/interfaces/ISearchQuery.ts +4 -0
  257. package/src/interfaces/ISelectFilter.ts +6 -0
  258. package/src/interfaces/ISortModel.ts +18 -0
  259. package/src/interfaces/IStorePaginator.ts +4 -0
  260. package/src/interfaces/ISupposedTimePeriod.ts +4 -0
  261. package/src/interfaces/ITimePeriod.ts +4 -0
  262. package/src/interfaces/ITokens.ts +4 -0
  263. package/src/interfaces/IWithId.ts +3 -0
  264. package/src/interfaces/IWithImage.ts +9 -0
  265. package/src/interfaces/IWithName.ts +4 -0
  266. package/src/interfaces/IWithSupposedTimePeriod.ts +4 -0
  267. package/src/interfaces/ItemsWithCount.ts +4 -0
  268. package/src/interfaces/LocalStoreKeys.ts +7 -0
  269. package/src/interfaces/Operators.ts +11 -0
  270. package/src/interfaces/Orders.ts +4 -0
  271. package/src/interfaces/RoleName.ts +4 -0
  272. package/src/interfaces/SocialTypes.ts +6 -0
  273. package/src/interfaces/Sort.ts +9 -0
  274. package/src/interfaces/ValueRelation.ts +7 -0
  275. package/src/interfaces/canvas/ICanvas.ts +3 -0
  276. package/src/interfaces/canvas/ICanvasResult.ts +7 -0
  277. package/src/interfaces/canvas/ICoordinates.ts +6 -0
  278. package/src/interfaces/types.ts +3 -0
  279. package/src/services/AdminHead.ts +32 -0
  280. package/src/services/AdminSideMenu.ts +52 -0
  281. package/src/services/AdminUI.ts +9 -0
  282. package/src/services/Arrays.ts +65 -0
  283. package/src/services/Axios.ts +64 -0
  284. package/src/services/BaseRoutes.ts +21 -0
  285. package/src/services/BaseStore.ts +220 -0
  286. package/src/services/Button.ts +42 -0
  287. package/src/services/Cache.ts +44 -0
  288. package/src/services/CacheS.ts +44 -0
  289. package/src/services/CarouselSwipe.ts +14 -0
  290. package/src/services/ClassHelper.ts +101 -0
  291. package/src/services/Color.ts +8 -0
  292. package/src/services/CreateSortModels.ts +26 -0
  293. package/src/services/Cursor.ts +51 -0
  294. package/src/services/DateFormat.ts +102 -0
  295. package/src/services/DateMask.ts +69 -0
  296. package/src/services/Dates.ts +41 -0
  297. package/src/services/DatesFormatter.ts +45 -0
  298. package/src/services/Dialog.ts +70 -0
  299. package/src/services/Dragger.ts +22 -0
  300. package/src/services/Extension.ts +6 -0
  301. package/src/services/Favourite.ts +62 -0
  302. package/src/services/HttpClient.ts +199 -0
  303. package/src/services/HttpClientS.ts +188 -0
  304. package/src/services/HttpError.ts +58 -0
  305. package/src/services/Loading.ts +14 -0
  306. package/src/services/MakeCarousel.ts +10 -0
  307. package/src/services/Menu.ts +102 -0
  308. package/src/services/Message.ts +66 -0
  309. package/src/services/Notification.ts +37 -0
  310. package/src/services/PHelp.ts +20 -0
  311. package/src/services/Paginator.ts +22 -0
  312. package/src/services/Period.ts +29 -0
  313. package/src/services/PhoneService.ts +46 -0
  314. package/src/services/Router.ts +85 -0
  315. package/src/services/RouterGuard.ts +15 -0
  316. package/src/services/Scheduler.ts +66 -0
  317. package/src/services/Scroll.ts +19 -0
  318. package/src/services/SortList.ts +44 -0
  319. package/src/services/Sorter.ts +6 -0
  320. package/src/services/Strings.test.ts +30 -0
  321. package/src/services/Strings.ts +138 -0
  322. package/src/services/Time.ts +124 -0
  323. package/src/services/Timer.ts +13 -0
  324. package/src/services/Token.ts +71 -0
  325. package/src/services/Visible.ts +16 -0
  326. package/src/services/WaitElement.ts +19 -0
  327. package/src/services/WebSocketClient.ts +62 -0
  328. package/src/services/brandColors.ts +5 -0
  329. package/src/services/buildNameNumbers.ts +8 -0
  330. package/src/services/countRating.ts +12 -0
  331. package/src/services/index.ts +105 -0
  332. package/src/services/indexNames.ts +55 -0
  333. package/src/services/moves.ts +17 -0
  334. package/src/services/useConfirmLeavePage.ts +52 -0
  335. package/src/services/validate.ts +22 -0
  336. package/src/store/AuthStore.ts +58 -0
  337. package/src/store/ContactsStore.ts +11 -0
  338. package/src/store/CropperStore.ts +20 -0
  339. package/src/store/EmailsStore.ts +11 -0
  340. package/src/store/FTSPPresetsStore.ts +11 -0
  341. package/src/store/FileInfosStore.ts +11 -0
  342. package/src/store/HumansStore.ts +11 -0
  343. package/src/store/MenusStore.ts +11 -0
  344. package/src/store/PhonesStore.ts +11 -0
  345. package/src/store/SchemasStore.ts +11 -0
  346. package/src/store/SearchStore.ts +65 -0
  347. package/src/store/ServicesStores.ts +29 -0
  348. package/src/store/ServicesStoresNames.ts +17 -0
  349. package/src/store/UserAccountsStore.ts +11 -0
  350. package/src/store/ValueTypesStore.ts +11 -0
  351. package/src/tsconfig.build-lib.json +30 -0
  352. package/src/types/AuthInfo.ts +6 -0
  353. package/src/types/HttpHeaders.ts +12 -0
  354. package/src/types/HttpMethods.ts +6 -0
  355. package/src/types/Sizes.ts +7 -0
  356. package/src/types/Statuses.ts +9 -0
  357. package/src/types/ValueTypes.ts +16 -0
@@ -0,0 +1,3 @@
1
+ export interface ClassNameGetter {
2
+ GetClassName(): string;
3
+ }
@@ -0,0 +1,8 @@
1
+ export enum DataTypes {
2
+ Date = 'date',
3
+ String = 'string',
4
+ Boolean = 'boolean',
5
+ Number = 'number',
6
+ Set = 'set',
7
+ Join = 'join',
8
+ }
@@ -0,0 +1,3 @@
1
+ import FilterModel from '@/services/classes/filters/FilterModel';
2
+
3
+ export type FilterModelBuilder = () => FilterModel;
@@ -0,0 +1,9 @@
1
+ export default interface IAdminMenu {
2
+ name: string;
3
+ to: string;
4
+ icon?: string;
5
+ showTo?: string[];
6
+ children?: IAdminMenu[];
7
+ tableName?: string;
8
+ count?: number;
9
+ }
File without changes
@@ -0,0 +1,14 @@
1
+ import { LocationQuery } from 'vue-router';
2
+
3
+ import { Operators } from '@/services/interfaces/Operators';
4
+
5
+ export default interface ICursor {
6
+ initial: boolean;
7
+ column: string;
8
+ operation: Operators;
9
+ value?: unknown;
10
+ tableName: string;
11
+
12
+ toUrlQuery: () => string;
13
+ fromUrlQuery: (obj: LocationQuery) => void;
14
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IEmailPassword {
2
+ email: string;
3
+ password: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IFilesList {
2
+ name: string;
3
+ url?: string;
4
+ }
@@ -0,0 +1,7 @@
1
+ export default interface IFile {
2
+ name: string;
3
+ url: string;
4
+ src: string;
5
+ raw?: File;
6
+ blob: Blob;
7
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IFileAnchor {
2
+ href: string;
3
+ download?: string;
4
+ }
@@ -0,0 +1,22 @@
1
+ import IFile from '@/services/interfaces/IFile';
2
+ import IFilesList from '@/services/interfaces/IFIlesList';
3
+
4
+ export default interface IFileInfo {
5
+ id?: string;
6
+ category?: string;
7
+ originalName: string;
8
+ fileSystemPath?: string;
9
+ file?: Blob;
10
+ isDraft?: boolean;
11
+ url: string;
12
+
13
+ getImageUrl: () => string;
14
+ getFileListObject: () => IFilesList;
15
+ getFileUrl: () => string;
16
+
17
+ uploadNewFile: (file: IFile) => void;
18
+ setFile: (file: IFile) => void;
19
+ uploadAndSetFile: (file: IFile) => void;
20
+ clearFile: () => void;
21
+ errorImg: (event: Event, errorImgName?: string) => void;
22
+ }
@@ -0,0 +1,5 @@
1
+ import FileInfo from '@/services/classes/FileInfo';
2
+
3
+ export default interface IFileInfosGetter {
4
+ getFileInfos?: () => FileInfo[];
5
+ }
@@ -0,0 +1,7 @@
1
+ import FileInfo from '@/services/classes/FileInfo';
2
+
3
+ export default interface IFiler {
4
+ id?: string;
5
+ fileInfo: FileInfo;
6
+ order: number;
7
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IFilter {
2
+ text: string;
3
+ value: string;
4
+ }
@@ -0,0 +1,24 @@
1
+ import { LocationQuery } from 'vue-router';
2
+
3
+ import FilterModel from '@/services/classes/filters/FilterModel';
4
+ import SortModel from '@/services/classes/SortModel';
5
+ import IPagination from '@/services/interfaces/IPagination';
6
+
7
+ export default interface IFilterQuery {
8
+ id?: string;
9
+ col: string;
10
+ value: string;
11
+ filterModels: FilterModel[];
12
+ pagination: IPagination;
13
+ sortModels: SortModel[];
14
+ withDeleted: boolean;
15
+ allLoaded: boolean;
16
+
17
+ toUrl: () => string;
18
+ toUrlQuery: () => string;
19
+ fromUrlQuery: (obj: LocationQuery) => void;
20
+ setAllLoaded: (loadedItemsLength: number) => void;
21
+ resetAllLoaded: () => void;
22
+ setParams: (col: string, value: string) => void;
23
+ setCursorPagination: (schema: unknown, object: Record<string, unknown>) => void;
24
+ }
@@ -0,0 +1,5 @@
1
+ declare type ValidateCallback = (valid: boolean, errorFields: Record<string, unknown>) => void;
2
+
3
+ export default interface IForm {
4
+ validate: (callback: ValidateCallback) => void;
5
+ }
@@ -0,0 +1,19 @@
1
+ import FileInfo from '@/services/classes/FileInfo';
2
+
3
+ import HttpHeaders from '../types/HttpHeaders';
4
+
5
+ export interface IBodilessParams {
6
+ query: string;
7
+ headers?: HttpHeaders;
8
+ isBlob?: boolean;
9
+ downloadFileName?: string;
10
+ }
11
+
12
+ export interface IBodyfulParams<PayloadType> {
13
+ payload?: PayloadType;
14
+ query: string;
15
+ isBlob?: boolean;
16
+ downloadFileName?: string;
17
+ headers?: HttpHeaders;
18
+ fileInfos?: FileInfo[];
19
+ }
@@ -0,0 +1,5 @@
1
+ export default interface IMessage {
2
+ dangerouslyUseHTMLString: boolean;
3
+ message: string;
4
+ type: 'info' | 'error' | 'success' | 'warning' | undefined;
5
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IOption {
2
+ value: string;
3
+ label: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IOrdered {
2
+ id?: string;
3
+ order: number;
4
+ }
@@ -0,0 +1,15 @@
1
+ import { LocationQuery } from 'vue-router';
2
+
3
+ import ICursor from '@/services/interfaces/ICursor';
4
+
5
+ export default interface IPagination {
6
+ cursorMode: boolean;
7
+ cursor: ICursor;
8
+ limit: number;
9
+ offset: number;
10
+ append: boolean;
11
+ setLoadMore: (lastCursor: string, column: string, table: string) => void;
12
+
13
+ toUrlQuery: () => string;
14
+ fromUrlQuery: (obj: LocationQuery) => void;
15
+ }
@@ -0,0 +1,6 @@
1
+ export default interface ISearchElement {
2
+ label: string;
3
+ value: string;
4
+ description: string;
5
+ route: string;
6
+ }
@@ -0,0 +1,6 @@
1
+ export default interface ISearchObject {
2
+ description: string;
3
+ value: string;
4
+ id: string;
5
+ label: string;
6
+ }
@@ -0,0 +1,4 @@
1
+ export default interface ISearchQuery {
2
+ value: string;
3
+ link: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ import IOption from '@/services/interfaces/IOption';
2
+
3
+ export default interface ISelectFilter {
4
+ title: string;
5
+ options: IOption[];
6
+ }
@@ -0,0 +1,18 @@
1
+ import { LocationQuery } from 'vue-router';
2
+
3
+ import { Orders } from '@/services/interfaces/Orders';
4
+
5
+ export default interface ISortModel {
6
+ id?: string;
7
+ table: string;
8
+ col: string;
9
+ order: Orders | undefined;
10
+ label: string;
11
+ default: boolean;
12
+ isAsc: () => boolean;
13
+ isDesc: () => boolean;
14
+ toUrlQuery: () => string;
15
+ fromUrlQuery: (query: LocationQuery) => void;
16
+ model: string;
17
+ version: string;
18
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IStorePaginator {
2
+ Count: () => Ref<number>;
3
+ FTSP: () => Promise<void>;
4
+ }
@@ -0,0 +1,4 @@
1
+ export default interface ISupposedTimePeriod {
2
+ startSupposed: string;
3
+ supposedEnd: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ export default interface ITimePeriod {
2
+ startTime: string;
3
+ endTime: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ export default interface ITokens {
2
+ accessToken?: string;
3
+ refreshToken?: string;
4
+ }
@@ -0,0 +1,3 @@
1
+ export default interface IWithId {
2
+ id?: string;
3
+ }
@@ -0,0 +1,9 @@
1
+ import FileInfo from '@/services/classes/FileInfo';
2
+
3
+ export default interface IWithImage {
4
+ id?: string;
5
+ fileInfoId?: string;
6
+ fileInfo: FileInfo;
7
+ description?: string;
8
+ order: number;
9
+ }
@@ -0,0 +1,4 @@
1
+ export default interface IWithName {
2
+ name: string;
3
+ setName?: (name: string) => void;
4
+ }
@@ -0,0 +1,4 @@
1
+ export interface ISupposedTimePeriod {
2
+ supposedStart: string;
3
+ supposedEnd: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ export default interface ItemsWithCount<ItemsType> {
2
+ items: ItemsType[];
3
+ count: number;
4
+ }
@@ -0,0 +1,7 @@
1
+ enum LocalStoreKeys {
2
+ User = 'user',
3
+ AccessToken = 'accessToken',
4
+ RefreshToken = 'refreshToken',
5
+ }
6
+
7
+ export default LocalStoreKeys;
@@ -0,0 +1,11 @@
1
+ export enum Operators {
2
+ Eq = '=',
3
+ Ne = '!=',
4
+ Gt = '>',
5
+ Lt = '<',
6
+ Btw = 'between',
7
+ In = 'in',
8
+ Like = 'like',
9
+ Null = 'is null',
10
+ NotNull = 'is not null',
11
+ }
@@ -0,0 +1,4 @@
1
+ export enum Orders {
2
+ Asc = 'asc',
3
+ Desc = 'desc',
4
+ }
@@ -0,0 +1,4 @@
1
+ export enum RoleName {
2
+ User = 'USER',
3
+ Admin = 'ADMIN',
4
+ }
@@ -0,0 +1,6 @@
1
+ export enum SocialTypes {
2
+ YouTube = 'YouTube',
3
+ VK = 'VK',
4
+ Instagram = 'Instagram',
5
+ Facebook = 'Facebook',
6
+ }
@@ -0,0 +1,9 @@
1
+ import SortModel from '@/services/classes/SortModel';
2
+
3
+ import { Orders } from './Orders';
4
+
5
+ export type SortModelBuilder = (order?: Orders) => SortModel;
6
+
7
+ export interface SortModelBuildersLib {
8
+ [key: string]: SortModelBuilder;
9
+ }
@@ -0,0 +1,7 @@
1
+ enum ValueRelation {
2
+ simple = 'simple',
3
+ oneToMany = 'oneToMany',
4
+ manyToMany = 'manyToMany',
5
+ }
6
+
7
+ export default ValueRelation;
@@ -0,0 +1,3 @@
1
+ export default interface ICanvas {
2
+ toDataURL: () => string;
3
+ }
@@ -0,0 +1,7 @@
1
+ import ICanvas from '@/services/interfaces/canvas/ICanvas';
2
+ import ICoordinates from '@/services/interfaces/canvas/ICoordinates';
3
+
4
+ export default interface ICanvasResult {
5
+ coordinates: ICoordinates;
6
+ canvas: ICanvas;
7
+ }
@@ -0,0 +1,6 @@
1
+ export default interface ICoordinates {
2
+ width: number;
3
+ height: number;
4
+ left: number;
5
+ top: number;
6
+ }
@@ -0,0 +1,3 @@
1
+ export default interface RootState {
2
+ layout: string;
3
+ }
@@ -0,0 +1,32 @@
1
+ import { ComputedRef } from 'vue';
2
+
3
+ import Button from './Button';
4
+
5
+ type f = () => string;
6
+ type Title = string | f | ComputedRef;
7
+ class AdminHeadC {
8
+ title: Title = '';
9
+ // showBackButton? = false;
10
+ buttons: Button[] = [];
11
+ // count? = 0;
12
+
13
+ Set(title: Title = '', buttons: Button[]): void {
14
+ if (typeof title === 'function') {
15
+ this.title = title();
16
+ } else if (typeof title === 'string') {
17
+ this.title = title;
18
+ } else {
19
+ this.title = title.value;
20
+ }
21
+
22
+ // if (adminHeaderParams.applicationsCount) {
23
+ // this.applicationsCount = adminHeaderParams.applicationsCount;
24
+ // }
25
+ // if (adminHeaderParams.showBackButton !== undefined) {
26
+ // this.showBackButton = adminHeaderParams.showBackButton;
27
+ // }
28
+ this.buttons = buttons;
29
+ }
30
+ }
31
+
32
+ export default new AdminHeadC();
@@ -0,0 +1,52 @@
1
+ import IAdminMenu from '@/services/interfaces/IAdminMenu';
2
+
3
+ class AdminSideMenuC {
4
+ private menu: IAdminMenu[] = [];
5
+ private path = '';
6
+ private isOpen = true;
7
+ filterString = '';
8
+
9
+ Set(menu: IAdminMenu[]): void {
10
+ this.menu = menu;
11
+ }
12
+
13
+ Get(): IAdminMenu[] {
14
+ if (!this.filterString) {
15
+ return this.menu;
16
+ }
17
+ return this.filterMenu();
18
+ }
19
+
20
+ private filterMenu(): IAdminMenu[] {
21
+ return this.menu.filter((m: IAdminMenu) => {
22
+ return Strings.SearchIn(m.name, this.filterString) || m.children.some((c: IAdminMenu) => Strings.SearchIn(c.name, this.filterString));
23
+ });
24
+ }
25
+
26
+ IsOpen(): boolean {
27
+ return this.isOpen;
28
+ }
29
+
30
+ Toggle(): void {
31
+ this.isOpen = !this.isOpen;
32
+ }
33
+ SetPath(path: string): void {
34
+ this.path = path;
35
+ }
36
+
37
+ GetPath(): string {
38
+ return this.path;
39
+ }
40
+ SetFilter(str: string): void {
41
+ this.filterString = str;
42
+ }
43
+
44
+ GetChildren(menu: IAdminMenu): IAdminMenu {
45
+ if (!this.filterString) {
46
+ return menu.children;
47
+ }
48
+ return menu.children.filter((c: IAdminMenu) => Strings.SearchIn(c.name, this.filterString));
49
+ }
50
+ }
51
+
52
+ export default new AdminSideMenuC();
@@ -0,0 +1,9 @@
1
+ import AdminHead from './AdminHead';
2
+ import AdminSideMenu from './AdminSideMenu';
3
+
4
+ class AdminUI {
5
+ Menu = AdminSideMenu;
6
+ Head = AdminHead;
7
+ }
8
+
9
+ export default new AdminUI();
@@ -0,0 +1,65 @@
1
+ import IOrdered from "@/services/interfaces/IOrdered";
2
+
3
+ import IWithId from "../interfaces/IWithId";
4
+
5
+ export default abstract class Arrays {
6
+ static Shuffle<ArrayType>(array: ArrayType[]) {
7
+ for (let i = array.length - 1; i > 0; i--) {
8
+ const j = Math.floor(Math.random() * (i + 1));
9
+ [array[i], array[j]] = [array[j], array[i]];
10
+ }
11
+ }
12
+
13
+ static GenerateNumsRange(start: number, stop: number, step = 1) {
14
+ return Array.from(
15
+ { length: (stop - start) / step + 1 },
16
+ (_, index) => start + index * step
17
+ );
18
+ }
19
+
20
+ static GetLast<ArrayType>(arr: ArrayType[]): ArrayType {
21
+ return arr[arr.length - 1];
22
+ }
23
+
24
+ static GetFirst<ArrayType>(arr: ArrayType[]): ArrayType {
25
+ return arr[0];
26
+ }
27
+
28
+ static GetRandEL<ArrayType>(arr: ArrayType[]): ArrayType {
29
+ return arr[Math.floor(Math.random() * arr.length)];
30
+ }
31
+
32
+ static Sort(ordered: IOrdered[]): void {
33
+ ordered.forEach((o: IOrdered, i: number) => (o.order = i));
34
+ }
35
+
36
+ static Refill<T>(arr: T[], refilled: T[]): void {
37
+ arr.splice(0, arr.length);
38
+ arr.push(...refilled);
39
+ }
40
+
41
+ static Eq<ArrayType>(arr1: ArrayType[], arr2: ArrayType[]): boolean {
42
+ return (
43
+ arr1.length === arr2.length &&
44
+ arr1?.every((_: ArrayType, i: number) => arr1[i] == arr2[i])
45
+ );
46
+ }
47
+
48
+ static SwipeById(arr: IWithId[], el1: IWithId, el2: IWithId): void {
49
+ const el1Index = arr.findIndex((el: IWithId) => el1.id === el.id);
50
+ const el2Index = arr.findIndex((el: IWithId) => el2.id === el.id);
51
+ if (el1Index || el2Index) {
52
+ return;
53
+ }
54
+ [arr[el1Index], arr[el2Index]] = [arr[el2Index], arr[el1Index]];
55
+ }
56
+
57
+ static Swap(arr: IWithId[], a: number, b: number) {
58
+ if (a < 0 || a >= arr.length || b < 0 || b >= arr.length) {
59
+ return;
60
+ }
61
+ const temp = arr[a];
62
+ arr[a] = arr[b];
63
+ arr[b] = temp;
64
+ }
65
+ }
@@ -0,0 +1,64 @@
1
+ import axios, { AxiosPromise, ResponseType } from "axios";
2
+
3
+ import HttpError from "./HttpError";
4
+ import HttpHeaders from "../types/HttpHeaders";
5
+ import { HttpMethods } from "../types/HttpMethods";
6
+
7
+ const engine = axios.create();
8
+ engine.interceptors.response.use(
9
+ (response) => response,
10
+ async (error) => await HttpError.Handle(error, engine)
11
+ );
12
+
13
+ export default abstract class HttpEngine {
14
+ static async Get(
15
+ url: string,
16
+ headers: HttpHeaders,
17
+ responseType: ResponseType
18
+ ): Promise<AxiosPromise> {
19
+ return await engine({
20
+ method: HttpMethods.GET,
21
+ url: url,
22
+ headers: headers,
23
+ responseType: responseType,
24
+ });
25
+ }
26
+ static async Post(
27
+ url: string,
28
+ headers: HttpHeaders,
29
+ responseType: ResponseType,
30
+ data: unknown
31
+ ): Promise<AxiosPromise> {
32
+ headers["Content-Type"] = "multipart/form-data";
33
+ return await engine({
34
+ method: HttpMethods.POST,
35
+ url: url,
36
+ headers: headers,
37
+ responseType: responseType,
38
+ data: data,
39
+ });
40
+ }
41
+ static async Put(
42
+ url: string,
43
+ headers: HttpHeaders,
44
+ data: unknown
45
+ ): Promise<AxiosPromise> {
46
+ headers["Content-Type"] = "multipart/form-data";
47
+ return await engine({
48
+ method: HttpMethods.PUT,
49
+ url: url,
50
+ headers: headers,
51
+ data: data,
52
+ });
53
+ }
54
+ static async Delete(
55
+ url: string,
56
+ headers: HttpHeaders
57
+ ): Promise<AxiosPromise> {
58
+ return await engine({
59
+ method: HttpMethods.DELETE,
60
+ url: url,
61
+ headers: headers,
62
+ });
63
+ }
64
+ }
@@ -0,0 +1,21 @@
1
+ const AuthPage = () => import('@/services/components/pages/AuthPage.vue');
2
+ const PageNotFound = () => import('@/services/components/pages/PageNotFound.vue');
3
+
4
+ export default [
5
+ {
6
+ path: '/',
7
+ redirect: '/login',
8
+ },
9
+ {
10
+ path: '/login',
11
+ component: AuthPage,
12
+ meta: {
13
+ layout: 'LoginLayout',
14
+ },
15
+ },
16
+ {
17
+ path: '/:pathMatch(.*)*',
18
+ name: 'NotFound',
19
+ component: PageNotFound,
20
+ },
21
+ ];