@dataloop-ai/components 0.18.0 → 0.18.2

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 (277) hide show
  1. package/package.json +6 -3
  2. package/src/App.vue +5 -227
  3. package/src/assets/constants.scss +2 -1
  4. package/src/assets/globals.scss +21 -0
  5. package/src/components/basic/DlAccordion/DlAccordion.vue +26 -4
  6. package/src/components/basic/DlAccordion/components/AccordionHeader.vue +2 -1
  7. package/src/components/basic/DlAvatar/DlAvatar.vue +1 -1
  8. package/src/components/basic/DlButton/DlButton.vue +115 -25
  9. package/src/components/basic/DlButton/utils.ts +45 -2
  10. package/src/components/basic/DlChip/DlChip.vue +3 -7
  11. package/src/components/basic/DlChip/utils.ts +4 -4
  12. package/src/components/basic/DlContainer/DlContainer.vue +70 -0
  13. package/src/components/basic/DlContainer/index.ts +3 -0
  14. package/src/components/basic/DlEmptyState/DlEmptyState.vue +282 -0
  15. package/src/components/basic/DlEmptyState/index.ts +2 -0
  16. package/src/components/basic/DlEmptyState/types.ts +20 -0
  17. package/src/components/basic/DlGrid/DlGrid.vue +163 -0
  18. package/src/components/basic/DlGrid/index.ts +4 -0
  19. package/src/components/basic/DlGrid/types.ts +5 -0
  20. package/src/components/basic/DlKpi/components/KpiInfo.vue +2 -1
  21. package/src/components/basic/DlListItem/DlListItem.vue +96 -66
  22. package/src/components/basic/DlListItem/utils.ts +0 -3
  23. package/src/components/basic/DlPanelContainer/DlPanelContainer.vue +37 -13
  24. package/src/components/basic/DlPopup/DlPopup.vue +58 -11
  25. package/src/components/basic/DlPopup/components/PopupHeader.vue +11 -6
  26. package/src/components/basic/DlProgressChart/DlProgressChart.vue +2 -1
  27. package/src/components/basic/DlWidget/DlWidget.vue +273 -141
  28. package/src/components/basic/DlWidget/index.ts +1 -3
  29. package/src/components/basic/DlWidget/utils.ts +90 -8
  30. package/src/components/basic/index.ts +4 -2
  31. package/src/components/basic/types.ts +2 -0
  32. package/src/components/compound/DlCard/DlCard.vue +796 -0
  33. package/src/components/compound/DlCard/components/DescriptionModal.vue +137 -0
  34. package/src/components/compound/DlCard/types.ts +38 -0
  35. package/src/components/compound/DlCharts/charts/DlBarChart/DlBarChart.vue +39 -4
  36. package/src/components/compound/DlCharts/charts/DlColumnChart/DlColumnChart.vue +128 -36
  37. package/src/components/compound/DlCharts/charts/DlConfusionMatrix/DlConfusionMatrix.vue +167 -87
  38. package/src/components/compound/DlCharts/charts/DlConfusionMatrix/utils.ts +2 -1
  39. package/src/components/compound/DlCharts/charts/DlDoughnutChart/DlDoughnutChart.vue +44 -3
  40. package/src/components/compound/DlCharts/charts/DlDoughnutChart/DlDoughnutChartWidget.vue +1 -2
  41. package/src/components/compound/DlCharts/charts/DlDoughnutChart/components/DlDoughnutChartLegend.vue +9 -18
  42. package/src/components/compound/DlCharts/charts/DlLineChart/DlLineChart.vue +48 -9
  43. package/src/components/compound/DlCharts/charts/DlScatterChart/DlScatterChart.vue +667 -0
  44. package/src/components/compound/DlCharts/charts/DlScatterChart/index.ts +2 -0
  45. package/src/components/compound/DlCharts/charts/index.ts +1 -0
  46. package/src/components/compound/DlCharts/components/DlBrush.vue +3 -2
  47. package/src/components/compound/DlCharts/components/DlChartLabels.vue +2 -1
  48. package/src/components/compound/DlCharts/components/DlChartScrollBar.vue +1 -0
  49. package/src/components/compound/DlCharts/types/props.ts +5 -1
  50. package/src/components/compound/DlCharts/utils.ts +1 -1
  51. package/src/components/compound/DlCodeEditor/DlCodeEditor.vue +173 -0
  52. package/src/components/compound/DlCodeEditor/README.md +11 -0
  53. package/src/components/compound/DlCodeEditor/components/CodeEditor.vue +705 -0
  54. package/src/components/compound/DlCodeEditor/index.ts +3 -0
  55. package/src/components/compound/DlCodeEditor/styles/themes-base16.css +12809 -0
  56. package/src/components/compound/DlCodeEditor/styles/themes.css +3999 -0
  57. package/src/components/compound/DlCodeEditor/types.ts +21 -0
  58. package/src/components/compound/DlDateTime/DlDatePicker/DlDatePicker.vue +9 -1
  59. package/src/components/compound/DlDateTime/DlDatePicker/components/DlCalendar.vue +4 -2
  60. package/src/components/compound/DlDateTime/DlDatePicker/components/DlMonthCalendar.vue +2 -1
  61. package/src/components/compound/DlDateTime/DlDateTimeRange/{DlCardSidebar.vue → CardSidebar.vue} +10 -11
  62. package/src/components/compound/DlDateTime/DlDateTimeRange/DlDateTimeRange.vue +18 -9
  63. package/src/components/compound/DlDateTime/DlTimePicker/DlTimePicker.vue +2 -2
  64. package/src/components/compound/DlDialogBox/DlDialogBox.vue +74 -15
  65. package/src/components/compound/DlDialogBox/components/DlDialogBoxFooter.vue +1 -1
  66. package/src/components/compound/DlDialogBox/components/DlDialogBoxHeader.vue +9 -7
  67. package/src/components/compound/DlDropdownButton/DlDropdownButton.vue +13 -4
  68. package/src/components/compound/DlInput/DlInput.vue +80 -17
  69. package/src/components/compound/DlJsonEditor/DlJsonEditor.vue +42 -219
  70. package/src/components/compound/DlOptionGroup/DlOptionGroup.vue +16 -17
  71. package/src/components/compound/DlOptionGroup/components/MenuItemWrapper.vue +2 -2
  72. package/src/components/compound/DlPagination/DlPagination.vue +1 -1
  73. package/src/components/compound/DlPagination/components/PaginationLegend.vue +0 -2
  74. package/src/components/compound/DlPagination/components/RowsSelector.vue +0 -2
  75. package/src/components/compound/DlRange/DlRange.vue +3 -2
  76. package/src/components/compound/DlSearches/DlSearch/DlSearch.vue +12 -5
  77. package/src/components/compound/DlSearches/DlSmartSearch/DlSmartSearch.vue +413 -97
  78. package/src/components/compound/DlSearches/DlSmartSearch/components/DlSmartSearchFilters.vue +4 -1
  79. package/src/components/compound/DlSearches/DlSmartSearch/components/DlSmartSearchInput.vue +100 -39
  80. package/src/components/compound/DlSearches/DlSmartSearch/components/DlSuggestionsDropdown.vue +12 -7
  81. package/src/components/compound/DlSearches/DlSmartSearch/components/FiltersQuery.vue +5 -6
  82. package/src/components/compound/DlSearches/DlSmartSearch/types.ts +14 -0
  83. package/src/components/compound/DlSearches/DlSmartSearch/utils/highlightSyntax.ts +10 -6
  84. package/src/components/compound/DlSearches/DlSmartSearch/utils/index.ts +172 -48
  85. package/src/components/compound/DlSelect/DlSelect.vue +264 -130
  86. package/src/components/compound/DlSelect/utils.ts +4 -1
  87. package/src/components/compound/DlSlider/DlSlider.vue +10 -2
  88. package/src/components/compound/DlSlider/components/DlSliderBase.vue +3 -3
  89. package/src/components/compound/DlSlider/components/DlSliderInput.vue +17 -26
  90. package/src/components/compound/DlSlider/sliderStyles.scss +5 -1
  91. package/src/components/compound/DlSlider/useSlider.ts +2 -2
  92. package/src/components/compound/DlSlider/utils.ts +2 -2
  93. package/src/components/compound/DlStepper/DlStepper.vue +46 -4
  94. package/src/components/compound/DlStepper/components/DlStepperContent.vue +6 -2
  95. package/src/components/compound/DlStepper/components/DlStepperFooter.vue +12 -0
  96. package/src/components/compound/DlStepper/components/DlStepperSidebar.vue +24 -11
  97. package/src/components/compound/DlStepper/models/Step.ts +37 -8
  98. package/src/components/compound/DlStepper/models/Stepper.ts +108 -15
  99. package/src/components/compound/DlStepper/models/interfaces.ts +2 -1
  100. package/src/components/compound/DlTable/DlTable.vue +49 -14
  101. package/src/components/compound/DlTable/components/DlTd.vue +9 -9
  102. package/src/components/compound/DlTable/components/DlTh.vue +3 -2
  103. package/src/components/compound/DlTable/hooks/tableColumnSelection.ts +35 -40
  104. package/src/components/compound/DlTable/hooks/tableFilter.ts +33 -21
  105. package/src/components/compound/DlTable/hooks/tablePagination.ts +18 -18
  106. package/src/components/compound/DlTable/hooks/tableRowExpand.ts +2 -1
  107. package/src/components/compound/DlTable/hooks/tableRowSelection.ts +0 -1
  108. package/src/components/compound/DlTable/hooks/tableSort.ts +52 -47
  109. package/src/components/compound/DlTable/styles/dl-table-styles.scss +8 -0
  110. package/src/components/compound/DlTabs/DlTabs.vue +83 -31
  111. package/src/components/compound/DlTabs/components/DlTab.vue +14 -4
  112. package/src/components/compound/DlTabs/components/TabsWrapper.vue +32 -27
  113. package/src/components/compound/DlThumbnailGallery/DlThumbnailGallery.vue +268 -0
  114. package/src/components/compound/DlThumbnailGallery/index.ts +2 -0
  115. package/src/components/compound/DlThumbnailGallery/types.ts +11 -0
  116. package/src/components/compound/DlToast/api/useToast.ts +42 -1
  117. package/src/components/compound/DlToast/components/ToastComponent.vue +24 -32
  118. package/src/components/compound/DlToast/types.ts +52 -0
  119. package/src/components/compound/DlTreeTable/DlTreeTable.vue +1293 -0
  120. package/src/components/compound/DlTreeTable/components/DlTdTree.vue +119 -0
  121. package/src/components/compound/DlTreeTable/components/DlTrTree.vue +52 -0
  122. package/src/components/compound/DlTreeTable/index.ts +3 -0
  123. package/src/components/compound/DlTreeTable/types.ts +1 -0
  124. package/src/components/compound/DlTreeTable/utils/convertToNestedObject.ts +51 -0
  125. package/src/components/compound/DlTreeTable/utils/flatTreeData.ts +19 -0
  126. package/src/components/compound/DlTreeTable/utils/getFromChildren.ts +39 -0
  127. package/src/components/compound/DlTreeTable/utils/trSpacing.ts +13 -0
  128. package/src/components/compound/DlTreeTable/utils/treeTableRowSelection.ts +184 -0
  129. package/src/components/compound/index.ts +14 -1
  130. package/src/components/compound/types.ts +2 -0
  131. package/src/components/essential/DlBadge/DlBadge.vue +3 -3
  132. package/src/components/essential/DlCheckbox/DlCheckbox.vue +10 -7
  133. package/src/components/essential/DlEllipsis/DlEllipsis.vue +141 -0
  134. package/src/components/essential/DlIcon/DlIcon.vue +5 -5
  135. package/src/components/essential/DlLabel/DlLabel.vue +190 -0
  136. package/src/components/essential/DlLabel/index.ts +2 -0
  137. package/src/components/essential/DlList/DlList.vue +3 -3
  138. package/src/components/essential/DlMenu/DlMenu.vue +41 -22
  139. package/src/components/essential/DlMenu/utils.ts +8 -7
  140. package/src/components/essential/DlPageLayout/DlPageLayout.vue +90 -0
  141. package/src/components/essential/DlPageLayout/index.ts +2 -0
  142. package/src/components/essential/DlProgressBar/DlProgressBar.vue +1 -1
  143. package/src/components/essential/DlRadio/DlRadio.vue +10 -5
  144. package/src/components/essential/DlSeparator/DlSeparator.vue +2 -2
  145. package/src/components/essential/DlSpinner/index.ts +1 -13
  146. package/src/components/essential/DlSpinner/styles/spinnerStyles.scss +7 -0
  147. package/src/components/essential/DlSwitch/DlSwitch.vue +6 -3
  148. package/src/components/essential/DlTextArea/DlTextArea.vue +212 -7
  149. package/src/components/essential/DlThemeProvider/DlThemeProvider.vue +6 -0
  150. package/src/components/essential/DlTypography/DlTypography.vue +7 -1
  151. package/src/components/essential/index.ts +3 -2
  152. package/src/components/shared/DlInfoErrorMessage/DlInfoErrorMessage.vue +1 -1
  153. package/src/components/{essential → shared}/DlTooltip/DlTooltip.vue +26 -19
  154. package/src/components/shared/DlVirtualScroll/DlVirtualScroll.vue +106 -43
  155. package/src/components/shared/DlVirtualScroll/useVirtualScroll.ts +28 -4
  156. package/src/components/shared/index.ts +1 -0
  157. package/src/components/types.ts +2 -0
  158. package/src/demos/BarChartDemo.vue +59 -2
  159. package/src/demos/ColumnChartDemo.vue +67 -2
  160. package/src/demos/DlAccordionDemo.vue +92 -43
  161. package/src/demos/DlAlertDemo.vue +14 -0
  162. package/src/demos/DlButtonDemo.vue +41 -4
  163. package/src/demos/DlCardDemo.vue +156 -19
  164. package/src/demos/DlChartDoughnutDemo.vue +49 -2
  165. package/src/demos/DlCheckboxDemo.vue +28 -3
  166. package/src/demos/DlCodeEditor/DlCodeEditorDemo.vue +247 -0
  167. package/src/demos/DlCodeEditor/index.ts +2 -0
  168. package/src/demos/DlConfusionMatrixDemo.vue +93 -37
  169. package/src/demos/DlDemoPage.vue +235 -0
  170. package/src/demos/DlDialogBoxDemo.vue +56 -51
  171. package/src/demos/DlDropdownButtonDemo.vue +35 -27
  172. package/src/demos/DlEmptyStateDemo.vue +81 -0
  173. package/src/demos/DlGridDemo.vue +40 -0
  174. package/src/demos/DlInputDemo.vue +21 -1
  175. package/src/demos/DlJsonEditorDemo.vue +59 -0
  176. package/src/demos/DlLabelDemo.vue +208 -0
  177. package/src/demos/DlLineChartDemo.vue +50 -2
  178. package/src/demos/DlListDemo.vue +12 -9
  179. package/src/demos/DlMenuDemo.vue +147 -20
  180. package/src/demos/DlPageLayoutDemo.vue +146 -0
  181. package/src/demos/DlPanelContainerDemo.vue +113 -2
  182. package/src/demos/DlPopupDemo.vue +82 -1
  183. package/src/demos/DlRadioDemo.vue +16 -1
  184. package/src/demos/DlScatterChartDemo.vue +161 -0
  185. package/src/demos/DlSearchDemo.vue +9 -0
  186. package/src/demos/DlSelectDemo.vue +124 -27
  187. package/src/demos/DlSpinnerDemo.vue +0 -2
  188. package/src/demos/DlStepperDemo/DlStepperDemo.vue +5 -1
  189. package/src/demos/DlStepperDemo/EmptyStateStepper.vue +149 -0
  190. package/src/demos/DlStepperDemo/SimpleStepper.vue +4 -0
  191. package/src/demos/DlStepperDemo/steps/GeneralStep.vue +1 -0
  192. package/src/demos/DlSwitchDemo.vue +12 -0
  193. package/src/demos/DlTableDemo.vue +84 -5
  194. package/src/demos/DlTabsDemo.vue +92 -3
  195. package/src/demos/DlTextAreaDemo.vue +14 -17
  196. package/src/demos/DlThumbnailGalleryDemo.vue +99 -0
  197. package/src/demos/DlToastDemo.vue +3 -9
  198. package/src/demos/DlTooltipDemo.vue +66 -2
  199. package/src/demos/DlTreeTableDemo.vue +694 -0
  200. package/src/demos/DlVirtualScrollDemo.vue +3 -12
  201. package/src/demos/DlWidgetDemo.vue +252 -61
  202. package/src/demos/SmartSearchDemo/DlSmartSearchDemo.vue +151 -32
  203. package/src/demos/index.ts +23 -4
  204. package/src/hooks/use-anchor.ts +15 -17
  205. package/src/hooks/use-arrow-navigation.ts +64 -21
  206. package/src/hooks/use-model-toggle.ts +14 -16
  207. package/src/hooks/use-portal.ts +9 -3
  208. package/src/hooks/use-scroll-target.ts +2 -4
  209. package/src/hooks/use-size-observer.ts +3 -2
  210. package/src/hooks/use-suggestions.ts +239 -49
  211. package/src/hooks/use-transition.ts +10 -4
  212. package/src/index.ts +22 -1
  213. package/src/layouts/DlDatasetBrowser/DemoComponents/DatasetFooter.vue +78 -0
  214. package/src/layouts/DlDatasetBrowser/DemoComponents/DatasetHeader.vue +22 -0
  215. package/src/layouts/DlDatasetBrowser/DemoComponents/DatasetLeftDrawer.vue +96 -0
  216. package/src/layouts/DlDatasetBrowser/DemoComponents/DatasetMainContent.vue +51 -0
  217. package/src/layouts/DlDatasetBrowser/DemoComponents/DatasetRightDrawer.vue +88 -0
  218. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/ActionsMenu.vue +70 -0
  219. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/AutomationMenu.vue +106 -0
  220. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/CardView.vue +101 -0
  221. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/CardViewGallery.vue +141 -0
  222. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/CardViewTable.vue +193 -0
  223. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/EmptyState/LayoutEmptyState.vue +227 -0
  224. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/EmptyState/UploadData.vue +106 -0
  225. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/MainContentImages.vue +540 -0
  226. package/src/layouts/DlDatasetBrowser/DemoComponents/MainContent/MainContentNav.vue +329 -0
  227. package/src/layouts/DlDatasetBrowser/DemoComponents/NavbarKpi.vue +84 -0
  228. package/src/layouts/DlDatasetBrowser/DemoComponents/NavbarSearch.vue +132 -0
  229. package/src/layouts/DlDatasetBrowser/DemoComponents/SearchFilterMenu.vue +19 -0
  230. package/src/layouts/DlDatasetBrowser/DemoComponents/filters/AddFilter.vue +212 -0
  231. package/src/layouts/DlDatasetBrowser/DemoComponents/types/imageMetadata.ts +28 -0
  232. package/src/layouts/DlDatasetBrowser/DlDatasetBrowser.vue +42 -0
  233. package/src/layouts/DlStudioLayout/DlStudioLayout.vue +42 -0
  234. package/src/layouts/DlStudioLayout/components/Demo/LeftMenuContent.vue +23 -0
  235. package/src/layouts/DlStudioLayout/components/Demo/StudioFooter.vue +25 -0
  236. package/src/layouts/DlStudioLayout/components/Demo/StudioHeader.vue +121 -0
  237. package/src/layouts/DlStudioLayout/components/Demo/StudioLeftDrawer.vue +245 -0
  238. package/src/layouts/DlStudioLayout/components/Demo/StudioMainContent.vue +31 -0
  239. package/src/layouts/DlStudioLayout/components/Demo/StudioTabsMenu.vue +117 -0
  240. package/src/layouts/DlStudioLayout/components/Demo/TabMenu/FilterMenu.vue +62 -0
  241. package/src/layouts/DlStudioLayout/components/Demo/TabMenu/TabMenuAnnotations.vue +98 -0
  242. package/src/layouts/DlStudioLayout/components/Demo/TabMenu/TabMenuItem.vue +66 -0
  243. package/src/layouts/DlStudioLayout/components/LayoutNavbar.vue +24 -0
  244. package/src/layouts/DlStudioLayout/components/ListAutocomplete.vue +149 -0
  245. package/src/layouts/DlStudioLayout/components/NavigationDrawer.vue +147 -0
  246. package/src/layouts/DlStudioLayout/index.ts +2 -0
  247. package/src/layouts/DlStudioLayout/types/HorizontalItems.ts +9 -0
  248. package/src/layouts/DlStudioLayout/types/VerticalItems.ts +10 -0
  249. package/src/simple-code-editor.d.ts +1 -0
  250. package/src/utils/click-outside.ts +1 -1
  251. package/src/utils/dom.ts +5 -5
  252. package/src/utils/events.ts +3 -3
  253. package/src/utils/global-nodes.ts +2 -2
  254. package/src/utils/input-sizes.ts +5 -2
  255. package/src/utils/is-ellipsis-active.ts +4 -1
  256. package/src/utils/parse-smart-query.ts +209 -111
  257. package/src/utils/portal.ts +5 -5
  258. package/src/utils/position-engine.ts +7 -7
  259. package/src/utils/render.ts +1 -1
  260. package/src/utils/scroll.ts +2 -2
  261. package/src/utils/selection.ts +3 -3
  262. package/vite.config.ts +9 -1
  263. package/src/components/basic/DlCard/DlCard.vue +0 -241
  264. package/src/components/basic/DlCard/types.ts +0 -20
  265. package/src/components/basic/DlEllipsis/DlEllipsis.vue +0 -114
  266. package/src/components/basic/DlWidget/DlGrid.vue +0 -33
  267. package/src/components/basic/DlWidget/DlGridRow.vue +0 -32
  268. package/src/components/compound/DlSearches/DlSmartSearch/utils/utils.ts +0 -124
  269. package/src/components/compound/DlToast/utils/config.ts +0 -17
  270. package/src/components/essential/DlTextHolder/DlTextHolder.vue +0 -65
  271. package/src/components/essential/DlTextHolder/index.ts +0 -2
  272. package/src/demos/DlTextHolderDemo.vue +0 -42
  273. package/src/utils/swapNodes.ts +0 -30
  274. /package/src/components/{basic → compound}/DlCard/index.ts +0 -0
  275. /package/src/components/compound/DlDateTime/DlDateTimeRange/{DlDateInput.vue → DateInput.vue} +0 -0
  276. /package/src/components/{basic → essential}/DlEllipsis/index.ts +0 -0
  277. /package/src/components/{essential → shared}/DlTooltip/index.ts +0 -0
@@ -0,0 +1,540 @@
1
+ <template>
2
+ <div class="main-content-images">
3
+ <layout-empty-state v-if="!emptyImages.length" />
4
+ <component
5
+ :is="cardView"
6
+ v-else
7
+ :items="emptyImages"
8
+ />
9
+ </div>
10
+ </template>
11
+
12
+ <script lang="ts">
13
+ import { defineComponent, ref, computed, onMounted } from 'vue-demi'
14
+ import { ImageMetadata, MediaTypeEnum } from '../types/imageMetadata'
15
+ import CardViewGallery from './CardViewGallery.vue'
16
+ import CardViewTable from './CardViewTable.vue'
17
+ import CardView from './CardView.vue'
18
+ import LayoutEmptyState from './EmptyState/LayoutEmptyState.vue'
19
+
20
+ export default defineComponent({
21
+ name: 'MainContentImages',
22
+ components: {
23
+ CardViewGallery,
24
+ CardViewTable,
25
+ CardView,
26
+ LayoutEmptyState
27
+ },
28
+ props: {
29
+ viewMode: {
30
+ type: String,
31
+ default: 'gallery',
32
+ validator: (val: string) =>
33
+ ['gallery', 'table', 'card'].includes(val)
34
+ }
35
+ },
36
+ setup(props) {
37
+ const currentDate = computed(() => new Date())
38
+ const cardView = computed(() => {
39
+ switch (props.viewMode) {
40
+ case 'gallery':
41
+ return 'CardViewGallery'
42
+ case 'table':
43
+ return 'CardViewTable'
44
+ case 'card':
45
+ return 'CardView'
46
+ default:
47
+ return 'CardViewGallery'
48
+ }
49
+ })
50
+ const emptyImages = ref<ImageMetadata[]>([])
51
+ const images = ref<ImageMetadata[]>([
52
+ {
53
+ url: 'https://blog.feedingwestchester.org/hubfs/blog-14-the-most-affordable-fruits-and-vegetables.jpg',
54
+ createdAt: currentDate.value,
55
+ updatedAt: currentDate.value,
56
+ extension: '.png',
57
+ name: 'file Name screen shot very long text file Name screen shot very long text file Name screen shot very long text file Name screen shot very long text',
58
+ mediaType: MediaTypeEnum.image,
59
+ state: 'Anno'
60
+ },
61
+ {
62
+ url: 'https://i2.wp.com/ghfruit.com/wp-content/uploads/2022/05/apple-green.png?fit=574%2C516&ssl=1',
63
+ createdAt: currentDate.value,
64
+ updatedAt: currentDate.value,
65
+ extension: '.png',
66
+ name: 'name',
67
+ mediaType: MediaTypeEnum.video,
68
+ state: 'Anno'
69
+ },
70
+ {
71
+ url: 'https://hips.hearstapps.com/hmg-prod/images/cherries-royalty-free-image-1656341880.jpg?crop=0.668xw:1.00xh;0.111xw,0&resize=1200:*',
72
+ createdAt: currentDate.value,
73
+ updatedAt: currentDate.value,
74
+ extension: '.png',
75
+ name: 'name',
76
+ mediaType: MediaTypeEnum.lidar
77
+ },
78
+ {
79
+ url: 'https://hosstools.com/wp-content/uploads/2020/10/athena-cantaloupe.jpg',
80
+ createdAt: currentDate.value,
81
+ updatedAt: currentDate.value,
82
+ extension: '.png',
83
+ name: 'name',
84
+ mediaType: MediaTypeEnum.image,
85
+ state: 'Sta'
86
+ },
87
+ {
88
+ url: 'https://static.sscontent.com/thumb/500/500/products/124/v1164303_prozis_crunchy-red-apple-slices-20-g_2.jpg',
89
+ createdAt: currentDate.value,
90
+ updatedAt: currentDate.value,
91
+ extension: '.png',
92
+ name: 'name',
93
+ mediaType: MediaTypeEnum.image,
94
+ state: 'Sta'
95
+ },
96
+ {
97
+ url: 'https://static9.depositphotos.com/1325564/1170/i/950/depositphotos_11700802-stock-photo-still-life-multifruit.jpg',
98
+ createdAt: currentDate.value,
99
+ updatedAt: currentDate.value,
100
+ extension: '.png',
101
+ name: 'name',
102
+ mediaType: MediaTypeEnum.image,
103
+ state: 'Sta'
104
+ },
105
+ {
106
+ url: 'https://thumbs.dreamstime.com/b/sliced-orange-fruit-leaves-isolated-white-23331258.jpg',
107
+ createdAt: currentDate.value,
108
+ updatedAt: currentDate.value,
109
+ extension: '.png',
110
+ name: 'name',
111
+ mediaType: MediaTypeEnum.image,
112
+ state: 'Sta'
113
+ },
114
+ {
115
+ url: 'https://www.tasteofhome.com/wp-content/uploads/2023/01/GettyImages-542323318.jpg',
116
+ createdAt: currentDate.value,
117
+ updatedAt: currentDate.value,
118
+ extension: '.png',
119
+ name: 'name',
120
+ mediaType: MediaTypeEnum.image,
121
+ state: 'Sta'
122
+ },
123
+ {
124
+ url: 'https://upload.wikimedia.org/wikipedia/commons/4/43/Pitaya_cross_section_ed2.jpg',
125
+ createdAt: currentDate.value,
126
+ updatedAt: currentDate.value,
127
+ extension: '.png',
128
+ name: 'name',
129
+ mediaType: MediaTypeEnum.image,
130
+ state: 'Sta'
131
+ },
132
+ {
133
+ url: 'https://cdn.britannica.com/72/170772-050-D52BF8C2/Avocado-fruits.jpg',
134
+ createdAt: currentDate.value,
135
+ updatedAt: currentDate.value,
136
+ extension: '.png',
137
+ name: 'name',
138
+ mediaType: MediaTypeEnum.image,
139
+ state: 'Sta'
140
+ },
141
+ {
142
+ url: 'https://i.simpalsmedia.com/point.md/news/809x456/76cd818643211d78586933f152f98e60.jpg',
143
+ createdAt: currentDate.value,
144
+ updatedAt: currentDate.value,
145
+ extension: '.png',
146
+ name: 'name',
147
+ mediaType: MediaTypeEnum.image,
148
+ state: 'Sta'
149
+ },
150
+ {
151
+ url: 'https://www.romaldo.ro/wp-content/uploads/2018/03/Page-2-Image-20.png',
152
+ createdAt: currentDate.value,
153
+ updatedAt: currentDate.value,
154
+ extension: '.png',
155
+ name: 'name',
156
+ mediaType: MediaTypeEnum.image,
157
+ state: 'Sta'
158
+ },
159
+ {
160
+ url: 'https://m.media-amazon.com/images/I/51ebZJ+DR4L._SX522_.jpg',
161
+ createdAt: currentDate.value,
162
+ updatedAt: currentDate.value,
163
+ extension: '.png',
164
+ name: 'name',
165
+ mediaType: MediaTypeEnum.image,
166
+ state: 'Sta'
167
+ },
168
+ {
169
+ url: 'https://blog.feedingwestchester.org/hubfs/blog-14-the-most-affordable-fruits-and-vegetables.jpg',
170
+ createdAt: currentDate.value,
171
+ updatedAt: currentDate.value,
172
+ extension: '.png',
173
+ name: 'name',
174
+ mediaType: MediaTypeEnum.image,
175
+ state: 'Sta'
176
+ },
177
+ {
178
+ url: 'https://i2.wp.com/ghfruit.com/wp-content/uploads/2022/05/apple-green.png?fit=574%2C516&ssl=1',
179
+ createdAt: currentDate.value,
180
+ updatedAt: currentDate.value,
181
+ extension: '.png',
182
+ name: 'name',
183
+ mediaType: MediaTypeEnum.image,
184
+ state: 'Sta'
185
+ },
186
+ {
187
+ url: 'https://hips.hearstapps.com/hmg-prod/images/cherries-royalty-free-image-1656341880.jpg?crop=0.668xw:1.00xh;0.111xw,0&resize=1200:*',
188
+ createdAt: currentDate.value,
189
+ updatedAt: currentDate.value,
190
+ extension: '.png',
191
+ name: 'name',
192
+ mediaType: MediaTypeEnum.image,
193
+ state: 'Sta'
194
+ },
195
+ {
196
+ url: 'https://hosstools.com/wp-content/uploads/2020/10/athena-cantaloupe.jpg',
197
+ createdAt: currentDate.value,
198
+ updatedAt: currentDate.value,
199
+ extension: '.png',
200
+ name: 'name',
201
+ mediaType: MediaTypeEnum.image,
202
+ state: 'Sta'
203
+ },
204
+ {
205
+ url: 'https://static.sscontent.com/thumb/500/500/products/124/v1164303_prozis_crunchy-red-apple-slices-20-g_2.jpg',
206
+ createdAt: currentDate.value,
207
+ updatedAt: currentDate.value,
208
+ extension: '.png',
209
+ name: 'name',
210
+ mediaType: MediaTypeEnum.image,
211
+ state: 'Sta'
212
+ },
213
+ {
214
+ url: 'https://static9.depositphotos.com/1325564/1170/i/950/depositphotos_11700802-stock-photo-still-life-multifruit.jpg',
215
+ createdAt: currentDate.value,
216
+ updatedAt: currentDate.value,
217
+ extension: '.png',
218
+ name: 'name',
219
+ mediaType: MediaTypeEnum.image,
220
+ state: 'Sta'
221
+ },
222
+ {
223
+ url: 'https://thumbs.dreamstime.com/b/sliced-orange-fruit-leaves-isolated-white-23331258.jpg',
224
+ createdAt: currentDate.value,
225
+ updatedAt: currentDate.value,
226
+ extension: '.png',
227
+ name: 'name',
228
+ mediaType: MediaTypeEnum.image,
229
+ state: 'Sta'
230
+ },
231
+ {
232
+ url: 'https://www.tasteofhome.com/wp-content/uploads/2023/01/GettyImages-542323318.jpg',
233
+ createdAt: currentDate.value,
234
+ updatedAt: currentDate.value,
235
+ extension: '.png',
236
+ name: 'name',
237
+ mediaType: MediaTypeEnum.image,
238
+ state: 'Sta'
239
+ },
240
+ {
241
+ url: 'https://upload.wikimedia.org/wikipedia/commons/4/43/Pitaya_cross_section_ed2.jpg',
242
+ createdAt: currentDate.value,
243
+ updatedAt: currentDate.value,
244
+ extension: '.png',
245
+ name: 'name',
246
+ mediaType: MediaTypeEnum.image,
247
+ state: 'Sta'
248
+ },
249
+ {
250
+ url: 'https://cdn.britannica.com/72/170772-050-D52BF8C2/Avocado-fruits.jpg',
251
+ createdAt: currentDate.value,
252
+ updatedAt: currentDate.value,
253
+ extension: '.png',
254
+ name: 'name',
255
+ mediaType: MediaTypeEnum.image,
256
+ state: 'Sta'
257
+ },
258
+ {
259
+ url: 'https://i.simpalsmedia.com/point.md/news/809x456/76cd818643211d78586933f152f98e60.jpg',
260
+ createdAt: currentDate.value,
261
+ updatedAt: currentDate.value,
262
+ extension: '.png',
263
+ name: 'name',
264
+ mediaType: MediaTypeEnum.image,
265
+ state: 'Sta'
266
+ },
267
+ {
268
+ url: 'https://www.romaldo.ro/wp-content/uploads/2018/03/Page-2-Image-20.png',
269
+ createdAt: currentDate.value,
270
+ updatedAt: currentDate.value,
271
+ extension: '.png',
272
+ name: 'name',
273
+ mediaType: MediaTypeEnum.image,
274
+ state: 'Sta'
275
+ },
276
+ {
277
+ url: 'https://m.media-amazon.com/images/I/51ebZJ+DR4L._SX522_.jpg',
278
+ createdAt: currentDate.value,
279
+ updatedAt: currentDate.value,
280
+ extension: '.png',
281
+ name: 'name',
282
+ mediaType: MediaTypeEnum.image,
283
+ state: 'Sta'
284
+ },
285
+ {
286
+ url: 'https://blog.feedingwestchester.org/hubfs/blog-14-the-most-affordable-fruits-and-vegetables.jpg',
287
+ createdAt: currentDate.value,
288
+ updatedAt: currentDate.value,
289
+ extension: '.png',
290
+ name: 'name',
291
+ mediaType: MediaTypeEnum.image,
292
+ state: 'Sta'
293
+ },
294
+ {
295
+ url: 'https://i2.wp.com/ghfruit.com/wp-content/uploads/2022/05/apple-green.png?fit=574%2C516&ssl=1',
296
+ createdAt: currentDate.value,
297
+ updatedAt: currentDate.value,
298
+ extension: '.png',
299
+ name: 'name',
300
+ mediaType: MediaTypeEnum.image,
301
+ state: 'Sta'
302
+ },
303
+ {
304
+ url: 'https://hips.hearstapps.com/hmg-prod/images/cherries-royalty-free-image-1656341880.jpg?crop=0.668xw:1.00xh;0.111xw,0&resize=1200:*',
305
+ createdAt: currentDate.value,
306
+ updatedAt: currentDate.value,
307
+ extension: '.png',
308
+ name: 'name',
309
+ mediaType: MediaTypeEnum.image,
310
+ state: 'Sta'
311
+ },
312
+ {
313
+ url: 'https://hosstools.com/wp-content/uploads/2020/10/athena-cantaloupe.jpg',
314
+ createdAt: currentDate.value,
315
+ updatedAt: currentDate.value,
316
+ extension: '.png',
317
+ name: 'name',
318
+ mediaType: MediaTypeEnum.image,
319
+ state: 'Sta'
320
+ },
321
+ {
322
+ url: 'https://static.sscontent.com/thumb/500/500/products/124/v1164303_prozis_crunchy-red-apple-slices-20-g_2.jpg',
323
+ createdAt: currentDate.value,
324
+ updatedAt: currentDate.value,
325
+ extension: '.png',
326
+ name: 'name',
327
+ mediaType: MediaTypeEnum.image,
328
+ state: 'Sta'
329
+ },
330
+ {
331
+ url: 'https://static9.depositphotos.com/1325564/1170/i/950/depositphotos_11700802-stock-photo-still-life-multifruit.jpg',
332
+ createdAt: currentDate.value,
333
+ updatedAt: currentDate.value,
334
+ extension: '.png',
335
+ name: 'name',
336
+ mediaType: MediaTypeEnum.image,
337
+ state: 'Sta'
338
+ },
339
+ {
340
+ url: 'https://thumbs.dreamstime.com/b/sliced-orange-fruit-leaves-isolated-white-23331258.jpg',
341
+ createdAt: currentDate.value,
342
+ updatedAt: currentDate.value,
343
+ extension: '.png',
344
+ name: 'name',
345
+ mediaType: MediaTypeEnum.image,
346
+ state: 'Sta'
347
+ },
348
+ {
349
+ url: 'https://www.tasteofhome.com/wp-content/uploads/2023/01/GettyImages-542323318.jpg',
350
+ createdAt: currentDate.value,
351
+ updatedAt: currentDate.value,
352
+ extension: '.png',
353
+ name: 'name',
354
+ mediaType: MediaTypeEnum.image,
355
+ state: 'Sta'
356
+ },
357
+ {
358
+ url: 'https://upload.wikimedia.org/wikipedia/commons/4/43/Pitaya_cross_section_ed2.jpg',
359
+ createdAt: currentDate.value,
360
+ updatedAt: currentDate.value,
361
+ extension: '.png',
362
+ name: 'name',
363
+ mediaType: MediaTypeEnum.image,
364
+ state: 'Sta'
365
+ },
366
+ {
367
+ url: 'https://cdn.britannica.com/72/170772-050-D52BF8C2/Avocado-fruits.jpg',
368
+ createdAt: currentDate.value,
369
+ updatedAt: currentDate.value,
370
+ extension: '.png',
371
+ name: 'name',
372
+ mediaType: MediaTypeEnum.image,
373
+ state: 'Sta'
374
+ },
375
+ {
376
+ url: 'https://i.simpalsmedia.com/point.md/news/809x456/76cd818643211d78586933f152f98e60.jpg',
377
+ createdAt: currentDate.value,
378
+ updatedAt: currentDate.value,
379
+ extension: '.png',
380
+ name: 'name',
381
+ mediaType: MediaTypeEnum.image,
382
+ state: 'Sta'
383
+ },
384
+ {
385
+ url: 'https://www.romaldo.ro/wp-content/uploads/2018/03/Page-2-Image-20.png',
386
+ createdAt: currentDate.value,
387
+ updatedAt: currentDate.value,
388
+ extension: '.png',
389
+ name: 'name',
390
+ mediaType: MediaTypeEnum.image,
391
+ state: 'Sta'
392
+ },
393
+ {
394
+ url: 'https://m.media-amazon.com/images/I/51ebZJ+DR4L._SX522_.jpg',
395
+ createdAt: currentDate.value,
396
+ updatedAt: currentDate.value,
397
+ extension: '.png',
398
+ name: 'name',
399
+ mediaType: MediaTypeEnum.image,
400
+ state: 'Sta'
401
+ },
402
+ {
403
+ url: 'https://blog.feedingwestchester.org/hubfs/blog-14-the-most-affordable-fruits-and-vegetables.jpg',
404
+ createdAt: currentDate.value,
405
+ updatedAt: currentDate.value,
406
+ extension: '.png',
407
+ name: 'name',
408
+ mediaType: MediaTypeEnum.image,
409
+ state: 'Sta'
410
+ },
411
+ {
412
+ url: 'https://i2.wp.com/ghfruit.com/wp-content/uploads/2022/05/apple-green.png?fit=574%2C516&ssl=1',
413
+ createdAt: currentDate.value,
414
+ updatedAt: currentDate.value,
415
+ extension: '.png',
416
+ name: 'name',
417
+ mediaType: MediaTypeEnum.image,
418
+ state: 'Sta'
419
+ },
420
+ {
421
+ url: 'https://hips.hearstapps.com/hmg-prod/images/cherries-royalty-free-image-1656341880.jpg?crop=0.668xw:1.00xh;0.111xw,0&resize=1200:*',
422
+ createdAt: currentDate.value,
423
+ updatedAt: currentDate.value,
424
+ extension: '.png',
425
+ name: 'name',
426
+ mediaType: MediaTypeEnum.image,
427
+ state: 'Sta'
428
+ },
429
+ {
430
+ url: 'https://hosstools.com/wp-content/uploads/2020/10/athena-cantaloupe.jpg',
431
+ createdAt: currentDate.value,
432
+ updatedAt: currentDate.value,
433
+ extension: '.png',
434
+ name: 'name',
435
+ mediaType: MediaTypeEnum.image,
436
+ state: 'Sta'
437
+ },
438
+ {
439
+ url: 'https://static.sscontent.com/thumb/500/500/products/124/v1164303_prozis_crunchy-red-apple-slices-20-g_2.jpg',
440
+ createdAt: currentDate.value,
441
+ updatedAt: currentDate.value,
442
+ extension: '.png',
443
+ name: 'name',
444
+ mediaType: MediaTypeEnum.image,
445
+ state: 'Sta'
446
+ },
447
+ {
448
+ url: 'https://static9.depositphotos.com/1325564/1170/i/950/depositphotos_11700802-stock-photo-still-life-multifruit.jpg',
449
+ createdAt: currentDate.value,
450
+ updatedAt: currentDate.value,
451
+ extension: '.png',
452
+ name: 'name',
453
+ mediaType: MediaTypeEnum.image,
454
+ state: 'Sta'
455
+ },
456
+ {
457
+ url: 'https://thumbs.dreamstime.com/b/sliced-orange-fruit-leaves-isolated-white-23331258.jpg',
458
+ createdAt: currentDate.value,
459
+ updatedAt: currentDate.value,
460
+ extension: '.png',
461
+ name: 'name',
462
+ mediaType: MediaTypeEnum.image,
463
+ state: 'Sta'
464
+ },
465
+ {
466
+ url: 'https://www.tasteofhome.com/wp-content/uploads/2023/01/GettyImages-542323318.jpg',
467
+ createdAt: currentDate.value,
468
+ updatedAt: currentDate.value,
469
+ extension: '.png',
470
+ name: 'name',
471
+ mediaType: MediaTypeEnum.image,
472
+ state: 'Sta'
473
+ },
474
+ {
475
+ url: 'https://upload.wikimedia.org/wikipedia/commons/4/43/Pitaya_cross_section_ed2.jpg',
476
+ createdAt: currentDate.value,
477
+ updatedAt: currentDate.value,
478
+ extension: '.png',
479
+ name: 'name',
480
+ mediaType: MediaTypeEnum.image,
481
+ state: 'Sta'
482
+ },
483
+ {
484
+ url: 'https://cdn.britannica.com/72/170772-050-D52BF8C2/Avocado-fruits.jpg',
485
+ createdAt: currentDate.value,
486
+ updatedAt: currentDate.value,
487
+ extension: '.png',
488
+ name: 'name',
489
+ mediaType: MediaTypeEnum.image,
490
+ state: 'Sta'
491
+ },
492
+ {
493
+ url: 'https://i.simpalsmedia.com/point.md/news/809x456/76cd818643211d78586933f152f98e60.jpg',
494
+ createdAt: currentDate.value,
495
+ updatedAt: currentDate.value,
496
+ extension: '.png',
497
+ name: 'name',
498
+ mediaType: MediaTypeEnum.image,
499
+ state: 'Sta'
500
+ },
501
+ {
502
+ url: 'https://www.romaldo.ro/wp-content/uploads/2018/03/Page-2-Image-20.png',
503
+ createdAt: currentDate.value,
504
+ updatedAt: currentDate.value,
505
+ extension: '.png',
506
+ name: 'name',
507
+ mediaType: MediaTypeEnum.image,
508
+ state: 'Sta'
509
+ },
510
+ {
511
+ url: 'https://m.media-amazon.com/images/I/51ebZJ+DR4L._SX522_.jpg',
512
+ createdAt: currentDate.value,
513
+ updatedAt: currentDate.value,
514
+ extension: '.png',
515
+ name: 'name',
516
+ mediaType: MediaTypeEnum.image,
517
+ state: 'Sta'
518
+ }
519
+ ])
520
+
521
+ onMounted(() => {
522
+ setTimeout(() => {
523
+ emptyImages.value = images.value
524
+ }, 2000)
525
+ })
526
+
527
+ return {
528
+ emptyImages,
529
+ images,
530
+ cardView
531
+ }
532
+ }
533
+ })
534
+ </script>
535
+
536
+ <style scoped lang="scss">
537
+ .main-content-images {
538
+ width: 100%;
539
+ }
540
+ </style>