@mittwald/flow-react-components 0.2.0-alpha.802 → 0.2.0-alpha.804

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 (171) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/assets/doc-properties.json +2320 -1969
  3. package/dist/css/all.css +1 -1
  4. package/dist/js/_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs +4 -0
  5. package/dist/js/_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs.map +1 -1
  6. package/dist/js/_virtual/_.locale.json@aaaa2422dd023a875e13abc0d3d178ce.mjs +26 -0
  7. package/dist/js/_virtual/_.locale.json@aaaa2422dd023a875e13abc0d3d178ce.mjs.map +1 -0
  8. package/dist/js/default.mjs +1 -0
  9. package/dist/js/default.mjs.map +1 -1
  10. package/dist/js/flr-universal.mjs +8 -3
  11. package/dist/js/flr-universal.mjs.map +1 -1
  12. package/dist/js/packages/components/src/components/Calendar/Calendar.module.scss.mjs +5 -1
  13. package/dist/js/packages/components/src/components/Calendar/Calendar.module.scss.mjs.map +1 -1
  14. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/RangeCalendar.mjs +40 -6
  15. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/RangeCalendar.mjs.map +1 -1
  16. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.mjs +186 -0
  17. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.mjs.map +1 -0
  18. package/dist/js/packages/components/src/components/Calendar/components/RangeCalendar/types.mjs.map +1 -1
  19. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs +10 -1
  20. package/dist/js/packages/components/src/components/DatePicker/DatePicker.mjs.map +1 -1
  21. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs +24 -9
  22. package/dist/js/packages/components/src/components/DateRangePicker/DateRangePicker.mjs.map +1 -1
  23. package/dist/js/packages/components/src/components/Label/Label.mjs +4 -4
  24. package/dist/js/packages/components/src/components/Label/Label.mjs.map +1 -1
  25. package/dist/js/packages/components/src/components/Label/Label.module.scss.mjs +2 -2
  26. package/dist/js/packages/components/src/components/List/List.mjs.map +1 -1
  27. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoader.mjs +5 -1
  28. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoader.mjs.map +1 -1
  29. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoaderSuspense.mjs +5 -2
  30. package/dist/js/packages/components/src/components/List/components/DataLoader/DataLoaderSuspense.mjs.map +1 -1
  31. package/dist/js/packages/components/src/components/List/components/EmptySearchResultView/EmptySearchResultView.mjs +27 -0
  32. package/dist/js/packages/components/src/components/List/components/EmptySearchResultView/EmptySearchResultView.mjs.map +1 -0
  33. package/dist/js/packages/components/src/components/List/components/EmptyView/EmptyView.mjs +27 -0
  34. package/dist/js/packages/components/src/components/List/components/EmptyView/EmptyView.mjs.map +1 -0
  35. package/dist/js/packages/components/src/components/List/components/Footer/components/PaginationInfos/PaginationInfos.mjs +2 -2
  36. package/dist/js/packages/components/src/components/List/components/Footer/components/PaginationInfos/PaginationInfos.mjs.map +1 -1
  37. package/dist/js/packages/components/src/components/List/components/Header/Header.mjs +13 -7
  38. package/dist/js/packages/components/src/components/List/components/Header/Header.mjs.map +1 -1
  39. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs +24 -11
  40. package/dist/js/packages/components/src/components/List/components/Header/components/ActiveFilters/ActiveFilters.mjs.map +1 -1
  41. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.mjs +13 -8
  42. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.mjs.map +1 -1
  43. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/SortingAccordion.mjs +12 -8
  44. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/SortingAccordion.mjs.map +1 -1
  45. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion.mjs +13 -9
  46. package/dist/js/packages/components/src/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion.mjs.map +1 -1
  47. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.mjs +2 -1
  48. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.mjs.map +1 -1
  49. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenu.mjs +2 -1
  50. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenu.mjs.map +1 -1
  51. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.mjs +34 -15
  52. package/dist/js/packages/components/src/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.mjs.map +1 -1
  53. package/dist/js/packages/components/src/components/List/components/Header/components/SearchField/SearchField.mjs +2 -1
  54. package/dist/js/packages/components/src/components/List/components/Header/components/SearchField/SearchField.mjs.map +1 -1
  55. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingContextMenu.mjs +3 -1
  56. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingContextMenu.mjs.map +1 -1
  57. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingMenuItem.mjs +16 -12
  58. package/dist/js/packages/components/src/components/List/components/Header/components/SortingContextMenu/SortingMenuItem.mjs.map +1 -1
  59. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu.mjs +16 -10
  60. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu.mjs.map +1 -1
  61. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeMenuItem.mjs +14 -9
  62. package/dist/js/packages/components/src/components/List/components/Header/components/ViewModeContextMenu/ViewModeMenuItem.mjs.map +1 -1
  63. package/dist/js/packages/components/src/components/List/components/Header/lib.mjs +17 -13
  64. package/dist/js/packages/components/src/components/List/components/Header/lib.mjs.map +1 -1
  65. package/dist/js/packages/components/src/components/List/components/Items/Items.mjs +11 -27
  66. package/dist/js/packages/components/src/components/List/components/Items/Items.mjs.map +1 -1
  67. package/dist/js/packages/components/src/components/List/components/Items/components/Item/hooks/useGridItemProps.mjs +16 -12
  68. package/dist/js/packages/components/src/components/List/components/Items/components/Item/hooks/useGridItemProps.mjs.map +1 -1
  69. package/dist/js/packages/components/src/components/List/components/Items/views/GridList/GridList.mjs +2 -3
  70. package/dist/js/packages/components/src/components/List/components/Items/views/GridList/GridList.mjs.map +1 -1
  71. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.mjs +10 -6
  72. package/dist/js/packages/components/src/components/List/components/ListItemView/ListItemView.mjs.map +1 -1
  73. package/dist/js/packages/components/src/components/List/components/Table/Table.mjs +26 -15
  74. package/dist/js/packages/components/src/components/List/components/Table/Table.mjs.map +1 -1
  75. package/dist/js/packages/components/src/components/List/model/List.mjs +9 -2
  76. package/dist/js/packages/components/src/components/List/model/List.mjs.map +1 -1
  77. package/dist/js/packages/components/src/components/List/model/filter/DateRangeFilter.mjs +10 -0
  78. package/dist/js/packages/components/src/components/List/model/filter/DateRangeFilter.mjs.map +1 -1
  79. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoader.mjs +34 -1
  80. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoader.mjs.map +1 -1
  81. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoaderState.mjs +13 -1
  82. package/dist/js/packages/components/src/components/List/model/loading/IncrementalLoaderState.mjs.map +1 -1
  83. package/dist/js/packages/components/src/components/List/model/types.mjs.map +1 -1
  84. package/dist/js/packages/components/src/components/List/views/EmptyView/EmptyView.mjs +1 -1
  85. package/dist/js/packages/components/src/components/List/views/EmptyView/EmptyView.mjs.map +1 -1
  86. package/dist/js/packages/components/src/components/List/views/EmptyViewContainer/EmptyViewContainer.mjs +16 -0
  87. package/dist/js/packages/components/src/components/List/views/EmptyViewContainer/EmptyViewContainer.mjs.map +1 -0
  88. package/dist/js/packages/components/src/components/Switch/Switch.mjs +2 -2
  89. package/dist/js/packages/components/src/components/Switch/Switch.mjs.map +1 -1
  90. package/dist/js/packages/components/src/integrations/react-hook-form/flags.mjs +2 -1
  91. package/dist/js/packages/components/src/integrations/react-hook-form/flags.mjs.map +1 -1
  92. package/dist/js/packages/components/src/views/IllustratedMessageView.mjs +15 -0
  93. package/dist/js/packages/components/src/views/IllustratedMessageView.mjs.map +1 -0
  94. package/dist/js/packages/components/src/views/ListEmptyViewContainerView.mjs +17 -0
  95. package/dist/js/packages/components/src/views/ListEmptyViewContainerView.mjs.map +1 -0
  96. package/dist/types/components/Calendar/components/RangeCalendar/RangeCalendar.d.ts +2 -1
  97. package/dist/types/components/Calendar/components/RangeCalendar/RangeCalendar.d.ts.map +1 -1
  98. package/dist/types/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.d.ts +8 -0
  99. package/dist/types/components/Calendar/components/RangeCalendar/helpers/useCalendarDateRangePresets.d.ts.map +1 -0
  100. package/dist/types/components/Calendar/components/RangeCalendar/types.d.ts +1 -0
  101. package/dist/types/components/Calendar/components/RangeCalendar/types.d.ts.map +1 -1
  102. package/dist/types/components/DatePicker/DatePicker.d.ts.map +1 -1
  103. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +2 -0
  104. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  105. package/dist/types/components/DateRangePicker/stories/Default.stories.d.ts +2 -0
  106. package/dist/types/components/DateRangePicker/stories/Default.stories.d.ts.map +1 -1
  107. package/dist/types/components/List/List.d.ts +3 -1
  108. package/dist/types/components/List/List.d.ts.map +1 -1
  109. package/dist/types/components/List/components/DataLoader/DataLoader.d.ts.map +1 -1
  110. package/dist/types/components/List/components/DataLoader/DataLoaderSuspense.d.ts +1 -0
  111. package/dist/types/components/List/components/DataLoader/DataLoaderSuspense.d.ts.map +1 -1
  112. package/dist/types/components/List/components/EmptySearchResultView/EmptySearchResultView.d.ts +4 -0
  113. package/dist/types/components/List/components/EmptySearchResultView/EmptySearchResultView.d.ts.map +1 -0
  114. package/dist/types/components/List/components/EmptySearchResultView/index.d.ts +2 -0
  115. package/dist/types/components/List/components/EmptySearchResultView/index.d.ts.map +1 -0
  116. package/dist/types/components/List/components/EmptyView/EmptyView.d.ts +4 -0
  117. package/dist/types/components/List/components/EmptyView/EmptyView.d.ts.map +1 -0
  118. package/dist/types/components/List/components/EmptyView/index.d.ts +2 -0
  119. package/dist/types/components/List/components/EmptyView/index.d.ts.map +1 -0
  120. package/dist/types/components/List/components/Header/Header.d.ts.map +1 -1
  121. package/dist/types/components/List/components/Header/components/ActiveFilters/ActiveFilters.d.ts +4 -1
  122. package/dist/types/components/List/components/Header/components/ActiveFilters/ActiveFilters.d.ts.map +1 -1
  123. package/dist/types/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.d.ts +5 -1
  124. package/dist/types/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.d.ts.map +1 -1
  125. package/dist/types/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.d.ts +1 -0
  126. package/dist/types/components/List/components/Header/components/FilterContextMenu/DateRangeFilterPopover.d.ts.map +1 -1
  127. package/dist/types/components/List/components/Header/components/FilterContextMenu/FilterContextMenu.d.ts +1 -0
  128. package/dist/types/components/List/components/Header/components/FilterContextMenu/FilterContextMenu.d.ts.map +1 -1
  129. package/dist/types/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.d.ts +5 -1
  130. package/dist/types/components/List/components/Header/components/FilterContextMenu/FilterContextMenus.d.ts.map +1 -1
  131. package/dist/types/components/List/components/Header/components/SearchField/SearchField.d.ts +1 -0
  132. package/dist/types/components/List/components/Header/components/SearchField/SearchField.d.ts.map +1 -1
  133. package/dist/types/components/List/components/Header/components/SortingContextMenu/SortingContextMenu.d.ts +5 -1
  134. package/dist/types/components/List/components/Header/components/SortingContextMenu/SortingContextMenu.d.ts.map +1 -1
  135. package/dist/types/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu.d.ts +5 -1
  136. package/dist/types/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu.d.ts.map +1 -1
  137. package/dist/types/components/List/components/Items/Items.d.ts.map +1 -1
  138. package/dist/types/components/List/components/Items/views/GridList/GridList.d.ts +2 -1
  139. package/dist/types/components/List/components/Items/views/GridList/GridList.d.ts.map +1 -1
  140. package/dist/types/components/List/components/Table/Table.d.ts.map +1 -1
  141. package/dist/types/components/List/index.d.ts +1 -0
  142. package/dist/types/components/List/index.d.ts.map +1 -1
  143. package/dist/types/components/List/model/List.d.ts +6 -2
  144. package/dist/types/components/List/model/List.d.ts.map +1 -1
  145. package/dist/types/components/List/model/loading/IncrementalLoader.d.ts +1 -0
  146. package/dist/types/components/List/model/loading/IncrementalLoader.d.ts.map +1 -1
  147. package/dist/types/components/List/model/loading/IncrementalLoaderState.d.ts +3 -0
  148. package/dist/types/components/List/model/loading/IncrementalLoaderState.d.ts.map +1 -1
  149. package/dist/types/components/List/model/loading/types.d.ts +6 -3
  150. package/dist/types/components/List/model/loading/types.d.ts.map +1 -1
  151. package/dist/types/components/List/model/search/types.d.ts +1 -0
  152. package/dist/types/components/List/model/search/types.d.ts.map +1 -1
  153. package/dist/types/components/List/model/types.d.ts +3 -0
  154. package/dist/types/components/List/model/types.d.ts.map +1 -1
  155. package/dist/types/components/List/stories/Default.stories.d.ts +3 -0
  156. package/dist/types/components/List/stories/Default.stories.d.ts.map +1 -1
  157. package/dist/types/components/List/views/EmptyView/EmptyView.d.ts +5 -1
  158. package/dist/types/components/List/views/EmptyView/EmptyView.d.ts.map +1 -1
  159. package/dist/types/components/List/views/EmptyViewContainer/EmptyViewContainer.d.ts +10 -0
  160. package/dist/types/components/List/views/EmptyViewContainer/EmptyViewContainer.d.ts.map +1 -0
  161. package/dist/types/components/List/views/EmptyViewContainer/index.d.ts +3 -0
  162. package/dist/types/components/List/views/EmptyViewContainer/index.d.ts.map +1 -0
  163. package/dist/types/components/List/views/EmptyViewContainer/view.d.ts +8 -0
  164. package/dist/types/components/List/views/EmptyViewContainer/view.d.ts.map +1 -0
  165. package/dist/types/integrations/react-hook-form/flags.d.ts +1 -0
  166. package/dist/types/integrations/react-hook-form/flags.d.ts.map +1 -1
  167. package/dist/types/views/ListEmptyViewContainerView.d.ts +5 -0
  168. package/dist/types/views/ListEmptyViewContainerView.d.ts.map +1 -0
  169. package/package.json +6 -6
  170. package/dist/js/packages/components/src/views/ListEmptyViewView.mjs +0 -15
  171. package/dist/js/packages/components/src/views/ListEmptyViewView.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Label.mjs","sources":["../../../../../../../src/components/Label/Label.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport React from \"react\";\nimport styles from \"./Label.module.scss\";\nimport * as Aria from \"react-aria-components\";\nimport clsx from \"clsx\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport locales from \"./locales/*.locale.json\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\n\nexport interface LabelProps\n extends\n PropsWithChildren<Omit<Aria.LabelProps, \"children\">>,\n FlowComponentProps<HTMLLabelElement> {\n /** Whether the label should show an \"optional\" indicator. */\n optional?: boolean;\n /** Whether the label should be displayed as disabled. */\n isDisabled?: boolean;\n /* @internal */\n unstyled?: boolean;\n}\n\n/** @flr-generate all */\nexport const Label = flowComponent(\"Label\", (props) => {\n const {\n children,\n className,\n optional,\n isDisabled,\n ref,\n unstyled = false,\n ...rest\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(locales, \"Label\");\n\n const rootClassName = unstyled\n ? className\n : clsx(styles.label, isDisabled && styles.disabled, className);\n\n const optionalMarker = (\n <span className={styles.optional}>\n {stringFormatter.format(\"optional\")}\n </span>\n );\n\n const propsContext: PropsContext = {\n ContextualHelpTrigger: {\n tunnelId: \"contextualHelp\",\n Button: {\n tunnelId: null,\n },\n },\n Button: {\n tunnelId: \"right\",\n size: \"s\",\n },\n Action: {\n tunnelId: \"right\",\n Button: {\n tunnelId: null,\n },\n },\n };\n\n return (\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <Aria.Label {...rest} className={rootClassName} ref={ref}>\n {children}\n {optional && optionalMarker}\n <TunnelExit id=\"contextualHelp\">\n {(children) => {\n if (React.Children.count(children) >= 1) {\n return children;\n }\n\n return undefined;\n }}\n </TunnelExit>\n <TunnelExit id=\"right\">\n {(children) => {\n if (React.Children.count(children) >= 1) {\n return <div className={styles.right}>{children}</div>;\n }\n\n return undefined;\n }}\n </TunnelExit>\n </Aria.Label>\n </TunnelProvider>\n </PropsContextProvider>\n );\n});\n\nexport default Label;\n"],"names":["styles","children"],"mappings":";;;;;;;;;;;;AAyBO,MAAM,KAAA,GAAQ,aAAA,CAAc,OAAA,EAAS,CAAC,KAAA,KAAU;AACrD,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAA;AAAA,IACA,GAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,OAAO,CAAA;AAEpE,EAAA,MAAM,aAAA,GAAgB,WAClB,SAAA,GACA,IAAA,CAAKA,YAAO,KAAA,EAAO,UAAA,IAAcA,WAAA,CAAO,QAAA,EAAU,SAAS,CAAA;AAE/D,EAAA,MAAM,cAAA,uBACH,MAAA,EAAA,EAAK,SAAA,EAAWA,YAAO,QAAA,EACrB,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,UAAU,CAAA,EACpC,CAAA;AAGF,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,qBAAA,EAAuB;AAAA,MACrB,QAAA,EAAU,gBAAA;AAAA,MACV,MAAA,EAAQ;AAAA,QACN,QAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU,OAAA;AAAA,MACV,IAAA,EAAM;AAAA,KACR;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU,OAAA;AAAA,MACV,MAAA,EAAQ;AAAA,QACN,QAAA,EAAU;AAAA;AACZ;AACF,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,8BAAC,cAAA,EAAA,EACC,QAAA,kBAAA,IAAA,CAAC,IAAA,CAAK,KAAA,EAAL,EAAY,GAAG,IAAA,EAAM,SAAA,EAAW,eAAe,GAAA,EAC7C,QAAA,EAAA;AAAA,IAAA,QAAA;AAAA,IACA,QAAA,IAAY,cAAA;AAAA,oBACb,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,gBAAA,EACZ,WAACC,SAAAA,KAAa;AACb,MAAA,IAAI,KAAA,CAAM,QAAA,CAAS,KAAA,CAAMA,SAAQ,KAAK,CAAA,EAAG;AACvC,QAAA,OAAOA,SAAAA;AAAA,MACT;AAEA,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EACF,CAAA;AAAA,oBACA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,OAAA,EACZ,WAACA,SAAAA,KAAa;AACb,MAAA,IAAI,KAAA,CAAM,QAAA,CAAS,KAAA,CAAMA,SAAQ,KAAK,CAAA,EAAG;AACvC,QAAA,2BAAQ,KAAA,EAAA,EAAI,SAAA,EAAWD,WAAA,CAAO,KAAA,EAAQ,UAAAC,SAAAA,EAAS,CAAA;AAAA,MACjD;AAEA,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EACF;AAAA,GAAA,EACF,GACF,CAAA,EACF,CAAA;AAEJ,CAAC;;;;"}
1
+ {"version":3,"file":"Label.mjs","sources":["../../../../../../../src/components/Label/Label.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport React from \"react\";\nimport styles from \"./Label.module.scss\";\nimport * as Aria from \"react-aria-components\";\nimport clsx from \"clsx\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport locales from \"./locales/*.locale.json\";\nimport type { FlowComponentProps } from \"@/lib/componentFactory/flowComponent\";\nimport { flowComponent } from \"@/lib/componentFactory/flowComponent\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\n\nexport interface LabelProps\n extends\n PropsWithChildren<Omit<Aria.LabelProps, \"children\">>,\n FlowComponentProps<HTMLLabelElement> {\n /** Whether the label should show an \"optional\" indicator. */\n optional?: boolean;\n /** Whether the label should be displayed as disabled. */\n isDisabled?: boolean;\n /* @internal */\n unstyled?: boolean;\n}\n\n/** @flr-generate all */\nexport const Label = flowComponent(\"Label\", (props) => {\n const {\n children,\n className,\n optional,\n isDisabled,\n ref,\n unstyled = false,\n ...rest\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(locales, \"Label\");\n\n const rootClassName = unstyled\n ? className\n : clsx(styles.label, isDisabled && styles.disabled, className);\n\n const optionalMarker = (\n <span className={styles.optional}>\n {stringFormatter.format(\"optional\")}\n </span>\n );\n\n const propsContext: PropsContext = {\n ContextualHelpTrigger: {\n tunnelId: \"contextualHelp\",\n Button: {\n tunnelId: null,\n },\n },\n Button: {\n tunnelId: \"right\",\n size: \"s\",\n },\n Action: {\n tunnelId: \"right\",\n Button: {\n tunnelId: null,\n },\n },\n };\n\n return (\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <Aria.Label {...rest} className={rootClassName} ref={ref}>\n {children}\n {optional && optionalMarker}\n <TunnelExit id=\"contextualHelp\">\n {(children) => {\n if (React.Children.count(children) >= 1) {\n return children;\n }\n\n return undefined;\n }}\n </TunnelExit>\n <TunnelExit id=\"right\">\n {(children) => {\n if (React.Children.count(children) >= 1) {\n return <div className={styles.right}>{children}</div>;\n }\n\n return undefined;\n }}\n </TunnelExit>\n </Aria.Label>\n </TunnelProvider>\n </PropsContextProvider>\n );\n});\n\nexport default Label;\n"],"names":["children"],"mappings":";;;;;;;;;;;;AAyBO,MAAM,KAAA,GAAQ,aAAA,CAAc,OAAA,EAAS,CAAC,KAAA,KAAU;AACrD,EAAA,MAAM;AAAA,IACJ,QAAA;AAAA,IACA,SAAA;AAAA,IACA,QAAA;AAAA,IACA,UAAA;AAAA,IACA,GAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,GAAG;AAAA,GACL,GAAI,KAAA;AAEJ,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,OAAO,CAAA;AAEpE,EAAA,MAAM,aAAA,GAAgB,WAClB,SAAA,GACA,IAAA,CAAK,OAAO,KAAA,EAAO,UAAA,IAAc,MAAA,CAAO,QAAA,EAAU,SAAS,CAAA;AAE/D,EAAA,MAAM,cAAA,uBACH,MAAA,EAAA,EAAK,SAAA,EAAW,OAAO,QAAA,EACrB,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,UAAU,CAAA,EACpC,CAAA;AAGF,EAAA,MAAM,YAAA,GAA6B;AAAA,IACjC,qBAAA,EAAuB;AAAA,MACrB,QAAA,EAAU,gBAAA;AAAA,MACV,MAAA,EAAQ;AAAA,QACN,QAAA,EAAU;AAAA;AACZ,KACF;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU,OAAA;AAAA,MACV,IAAA,EAAM;AAAA,KACR;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,QAAA,EAAU,OAAA;AAAA,MACV,MAAA,EAAQ;AAAA,QACN,QAAA,EAAU;AAAA;AACZ;AACF,GACF;AAEA,EAAA,uBACE,GAAA,CAAC,oBAAA,EAAA,EAAqB,KAAA,EAAO,YAAA,EAC3B,8BAAC,cAAA,EAAA,EACC,QAAA,kBAAA,IAAA,CAAC,IAAA,CAAK,KAAA,EAAL,EAAY,GAAG,IAAA,EAAM,SAAA,EAAW,eAAe,GAAA,EAC7C,QAAA,EAAA;AAAA,IAAA,QAAA;AAAA,IACA,QAAA,IAAY,cAAA;AAAA,oBACb,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,gBAAA,EACZ,WAACA,SAAAA,KAAa;AACb,MAAA,IAAI,KAAA,CAAM,QAAA,CAAS,KAAA,CAAMA,SAAQ,KAAK,CAAA,EAAG;AACvC,QAAA,OAAOA,SAAAA;AAAA,MACT;AAEA,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EACF,CAAA;AAAA,oBACA,GAAA,CAAC,UAAA,EAAA,EAAW,EAAA,EAAG,OAAA,EACZ,WAACA,SAAAA,KAAa;AACb,MAAA,IAAI,KAAA,CAAM,QAAA,CAAS,KAAA,CAAMA,SAAQ,KAAK,CAAA,EAAG;AACvC,QAAA,2BAAQ,KAAA,EAAA,EAAI,SAAA,EAAW,MAAA,CAAO,KAAA,EAAQ,UAAAA,SAAAA,EAAS,CAAA;AAAA,MACjD;AAEA,MAAA,OAAO,MAAA;AAAA,IACT,CAAA,EACF;AAAA,GAAA,EACF,GACF,CAAA,EACF,CAAA;AAEJ,CAAC;;;;"}
@@ -4,12 +4,12 @@ const label = "flow--label";
4
4
  const disabled = "flow--label--disabled";
5
5
  const optional = "flow--label--optional";
6
6
  const right = "flow--label--right";
7
- const labelStyles = {
7
+ const styles = {
8
8
  label: label,
9
9
  disabled: disabled,
10
10
  optional: optional,
11
11
  right: right
12
12
  };
13
13
 
14
- export { labelStyles as default, disabled, label, optional, right };
14
+ export { styles as default, disabled, label, optional, right };
15
15
  //# sourceMappingURL=Label.module.scss.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"List.mjs","sources":["../../../../../../../src/components/List/List.tsx"],"sourcesContent":["import { DataLoader } from \"@/components/List/components/DataLoader\";\nimport { Header } from \"@/components/List/components/Header/Header\";\nimport headerStyles from \"@/components/List/components/Header/Header.module.css\";\nimport { Items } from \"@/components/List/components/Items/Items\";\nimport { Table } from \"@/components/List/components/Table\";\nimport ListModel from \"@/components/List/model/List\";\nimport type { IncrementalLoaderShape } from \"@/components/List/model/loading/types\";\nimport type { ListShape } from \"@/components/List/model/types\";\nimport { ListFilter } from \"@/components/List/setupComponents/ListFilter\";\nimport { ListItem } from \"@/components/List/setupComponents/ListItem\";\nimport { ListLoaderAsync } from \"@/components/List/setupComponents/ListLoaderAsync\";\nimport { ListLoaderAsyncResource } from \"@/components/List/setupComponents/ListLoaderAsyncResource\";\nimport { ListSearch } from \"@/components/List/setupComponents/ListSearch\";\nimport { ListSorting } from \"@/components/List/setupComponents/ListSorting\";\nimport { ListStaticData } from \"@/components/List/setupComponents/ListStaticData\";\nimport { Table as TableSetupComponent } from \"@/components/List/setupComponents/Table\";\nimport { TableBody } from \"@/components/List/setupComponents/TableBody\";\nimport { TableCell } from \"@/components/List/setupComponents/TableCell\";\nimport { TableColumn } from \"@/components/List/setupComponents/TableColumn\";\nimport { TableHeader } from \"@/components/List/setupComponents/TableHeader\";\nimport { TableRow } from \"@/components/List/setupComponents/TableRow\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport { deepFilterByType, deepFindOfType } from \"@/lib/react/deepFindOfType\";\nimport DivView from \"@/views/DivView\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport type { PropsWithChildren } from \"react\";\nimport Footer from \"./components/Footer\";\nimport styles from \"./List.module.css\";\nimport { listContext } from \"./listContext\";\nimport { ListLoaderHooks } from \"@/components/List/setupComponents/ListLoaderHooks\";\n\nexport interface ListProps<T, TMeta = unknown>\n extends\n PropsWithChildren,\n FlowComponentProps,\n Omit<\n ListShape<T, TMeta>,\n | \"search\"\n | \"loader\"\n | \"itemView\"\n | \"table\"\n | \"batchesController\"\n | \"filters\"\n | \"sorting\"\n > {\n /** The number of items to be displayed on one page. */\n batchSize?: number;\n hidePagination?: boolean;\n}\n\nexport const List = flowComponent(\"List\", (props) => {\n const {\n children,\n batchSize,\n loadingItemsCount = batchSize,\n onChange,\n ref,\n hidePagination,\n ...restProps\n } = props;\n\n const listLoaderAsync = deepFindOfType(\n children,\n ListLoaderAsync<never>,\n )?.props;\n const listLoaderHooks = deepFindOfType(\n children,\n ListLoaderHooks<never>,\n )?.props;\n const listLoaderAsyncResource = deepFindOfType(\n children,\n ListLoaderAsyncResource<never>,\n )?.props;\n const listStaticData = deepFindOfType(children, ListStaticData<never>)?.props;\n\n const loaderShape: IncrementalLoaderShape<never> = {\n source: listLoaderAsync\n ? {\n ...listLoaderAsync,\n asyncLoader: listLoaderAsync.children,\n }\n : listLoaderAsyncResource\n ? {\n ...listLoaderAsyncResource,\n asyncResourceFactory: listLoaderAsyncResource.children,\n }\n : listStaticData\n ? {\n staticData: listStaticData.data,\n }\n : listLoaderHooks\n ? {\n ...listLoaderHooks,\n useData: listLoaderHooks.children,\n }\n : undefined,\n };\n\n const searchProps = deepFindOfType(children, ListSearch)?.props;\n const itemViewProps = deepFindOfType(children, ListItem<never>)?.props;\n\n const tableProps = deepFindOfType(children, TableSetupComponent)?.props;\n const tableColumnProps = deepFilterByType(children, TableColumn<never>).map(\n (c) => ({\n ...c.props,\n name: c.props.children,\n }),\n );\n const tableCellProps = deepFilterByType(children, TableCell<never>).map(\n (c) => ({\n ...c.props,\n renderFn: c.props.children,\n }),\n );\n\n const tableRowProps = deepFindOfType(children, TableRow)?.props;\n const tableHeaderProps = deepFindOfType(children, TableHeader)?.props;\n const tableBodyProps = deepFindOfType(children, TableBody)?.props;\n\n const listModel = ListModel.useNew<never>({\n onChange,\n loader: loaderShape,\n filters: deepFilterByType(children, ListFilter<never, never, never>).map(\n (f) => ({\n ...f.props,\n renderItem: f.props.children,\n }),\n ),\n search: searchProps\n ? {\n render: searchProps.children,\n textFieldProps: searchProps,\n defaultValue: searchProps.defaultValue,\n autosave: searchProps.autosave,\n }\n : undefined,\n sorting: deepFilterByType(children, ListSorting<never>).map((s) => s.props),\n\n itemView: itemViewProps\n ? {\n ...itemViewProps,\n renderFn: itemViewProps.children,\n }\n : undefined,\n\n table:\n tableColumnProps.length > 0\n ? {\n header: {\n ...tableHeaderProps,\n columns: tableColumnProps,\n },\n body: {\n ...tableBodyProps,\n row: {\n ...tableRowProps,\n cells: tableCellProps,\n },\n },\n ...tableProps,\n }\n : undefined,\n\n batchesController: {\n batchSize,\n },\n loadingItemsCount,\n ...restProps,\n });\n\n const propsContext: PropsContext = {\n ActionGroup: {\n tunnelId: \"actions\",\n className: headerStyles.actions,\n Button: {\n className: headerStyles.action,\n },\n },\n ListSummary: {\n tunnelId: \"listSummary\",\n },\n };\n\n return (\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <listContext.Provider\n value={{\n list: listModel,\n }}\n >\n <DataLoader />\n <DivView className={styles.list} ref={ref}>\n {children}\n <Header />\n\n <DivView className={styles.listWrapper}>\n {listModel.items.entries.length > 0 && (\n <TunnelExit id=\"listSummary\" />\n )}\n {(listModel.viewMode.isList || listModel.viewMode.isTiles) && (\n <Items />\n )}\n {listModel.viewMode.isTable && <Table />}\n </DivView>\n {!hidePagination && <Footer />}\n </DivView>\n </listContext.Provider>\n </TunnelProvider>\n </PropsContextProvider>\n );\n});\n\nexport default List;\n"],"names":["TableSetupComponent","ListModel"],"mappings":"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"}
1
+ {"version":3,"file":"List.mjs","sources":["../../../../../../../src/components/List/List.tsx"],"sourcesContent":["import { DataLoader } from \"@/components/List/components/DataLoader\";\nimport { Header } from \"@/components/List/components/Header/Header\";\nimport headerStyles from \"@/components/List/components/Header/Header.module.css\";\nimport { Items } from \"@/components/List/components/Items/Items\";\nimport { Table } from \"@/components/List/components/Table\";\nimport ListModel from \"@/components/List/model/List\";\nimport type { IncrementalLoaderShape } from \"@/components/List/model/loading/types\";\nimport type { ListShape } from \"@/components/List/model/types\";\nimport { ListFilter } from \"@/components/List/setupComponents/ListFilter\";\nimport { ListItem } from \"@/components/List/setupComponents/ListItem\";\nimport { ListLoaderAsync } from \"@/components/List/setupComponents/ListLoaderAsync\";\nimport { ListLoaderAsyncResource } from \"@/components/List/setupComponents/ListLoaderAsyncResource\";\nimport { ListSearch } from \"@/components/List/setupComponents/ListSearch\";\nimport { ListSorting } from \"@/components/List/setupComponents/ListSorting\";\nimport { ListStaticData } from \"@/components/List/setupComponents/ListStaticData\";\nimport { Table as TableSetupComponent } from \"@/components/List/setupComponents/Table\";\nimport { TableBody } from \"@/components/List/setupComponents/TableBody\";\nimport { TableCell } from \"@/components/List/setupComponents/TableCell\";\nimport { TableColumn } from \"@/components/List/setupComponents/TableColumn\";\nimport { TableHeader } from \"@/components/List/setupComponents/TableHeader\";\nimport { TableRow } from \"@/components/List/setupComponents/TableRow\";\nimport {\n flowComponent,\n type FlowComponentProps,\n} from \"@/lib/componentFactory/flowComponent\";\nimport { type PropsContext, PropsContextProvider } from \"@/lib/propsContext\";\nimport { deepFilterByType, deepFindOfType } from \"@/lib/react/deepFindOfType\";\nimport DivView from \"@/views/DivView\";\nimport { TunnelExit, TunnelProvider } from \"@mittwald/react-tunnel\";\nimport type { PropsWithChildren, ReactNode } from \"react\";\nimport Footer from \"./components/Footer\";\nimport styles from \"./List.module.css\";\nimport { listContext } from \"./listContext\";\nimport { ListLoaderHooks } from \"@/components/List/setupComponents/ListLoaderHooks\";\n\nexport interface ListProps<T, TMeta = unknown>\n extends\n PropsWithChildren,\n FlowComponentProps,\n Omit<\n ListShape<T, TMeta>,\n | \"search\"\n | \"loader\"\n | \"itemView\"\n | \"table\"\n | \"batchesController\"\n | \"filters\"\n | \"sorting\"\n > {\n /** The number of items to be displayed on one page. */\n batchSize?: number;\n hidePagination?: boolean;\n emptySearchResultView?: ReactNode;\n emptyView?: ReactNode;\n}\n\nexport const List = flowComponent(\"List\", (props) => {\n const {\n children,\n batchSize,\n loadingItemsCount = batchSize,\n onChange,\n ref,\n hidePagination,\n ...restProps\n } = props;\n\n const listLoaderAsync = deepFindOfType(\n children,\n ListLoaderAsync<never>,\n )?.props;\n const listLoaderHooks = deepFindOfType(\n children,\n ListLoaderHooks<never>,\n )?.props;\n const listLoaderAsyncResource = deepFindOfType(\n children,\n ListLoaderAsyncResource<never>,\n )?.props;\n const listStaticData = deepFindOfType(children, ListStaticData<never>)?.props;\n\n const loaderShape: IncrementalLoaderShape<never> = {\n source: listLoaderAsync\n ? {\n ...listLoaderAsync,\n asyncLoader: listLoaderAsync.children,\n }\n : listLoaderAsyncResource\n ? {\n ...listLoaderAsyncResource,\n asyncResourceFactory: listLoaderAsyncResource.children,\n }\n : listStaticData\n ? {\n staticData: listStaticData.data,\n }\n : listLoaderHooks\n ? {\n ...listLoaderHooks,\n useData: listLoaderHooks.children,\n }\n : undefined,\n };\n\n const searchProps = deepFindOfType(children, ListSearch)?.props;\n const itemViewProps = deepFindOfType(children, ListItem<never>)?.props;\n\n const tableProps = deepFindOfType(children, TableSetupComponent)?.props;\n const tableColumnProps = deepFilterByType(children, TableColumn<never>).map(\n (c) => ({\n ...c.props,\n name: c.props.children,\n }),\n );\n const tableCellProps = deepFilterByType(children, TableCell<never>).map(\n (c) => ({\n ...c.props,\n renderFn: c.props.children,\n }),\n );\n\n const tableRowProps = deepFindOfType(children, TableRow)?.props;\n const tableHeaderProps = deepFindOfType(children, TableHeader)?.props;\n const tableBodyProps = deepFindOfType(children, TableBody)?.props;\n\n const listModel = ListModel.useNew<never>({\n onChange,\n loader: loaderShape,\n filters: deepFilterByType(children, ListFilter<never, never, never>).map(\n (f) => ({\n ...f.props,\n renderItem: f.props.children,\n }),\n ),\n search: searchProps\n ? {\n render: searchProps.children,\n textFieldProps: searchProps,\n defaultValue: searchProps.defaultValue,\n autosave: searchProps.autosave,\n }\n : undefined,\n sorting: deepFilterByType(children, ListSorting<never>).map((s) => s.props),\n\n itemView: itemViewProps\n ? {\n ...itemViewProps,\n renderFn: itemViewProps.children,\n }\n : undefined,\n\n table:\n tableColumnProps.length > 0\n ? {\n header: {\n ...tableHeaderProps,\n columns: tableColumnProps,\n },\n body: {\n ...tableBodyProps,\n row: {\n ...tableRowProps,\n cells: tableCellProps,\n },\n },\n ...tableProps,\n }\n : undefined,\n\n batchesController: {\n batchSize,\n },\n loadingItemsCount,\n ...restProps,\n });\n\n const propsContext: PropsContext = {\n ActionGroup: {\n tunnelId: \"actions\",\n className: headerStyles.actions,\n Button: {\n className: headerStyles.action,\n },\n },\n ListSummary: {\n tunnelId: \"listSummary\",\n },\n };\n\n return (\n <PropsContextProvider props={propsContext}>\n <TunnelProvider>\n <listContext.Provider\n value={{\n list: listModel,\n }}\n >\n <DataLoader />\n <DivView className={styles.list} ref={ref}>\n {children}\n <Header />\n\n <DivView className={styles.listWrapper}>\n {listModel.items.entries.length > 0 && (\n <TunnelExit id=\"listSummary\" />\n )}\n {(listModel.viewMode.isList || listModel.viewMode.isTiles) && (\n <Items />\n )}\n {listModel.viewMode.isTable && <Table />}\n </DivView>\n {!hidePagination && <Footer />}\n </DivView>\n </listContext.Provider>\n </TunnelProvider>\n </PropsContextProvider>\n );\n});\n\nexport default List;\n"],"names":["TableSetupComponent","ListModel"],"mappings":"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"}
@@ -6,11 +6,15 @@ import { useList } from '../../hooks/useList.mjs';
6
6
  import { Render } from '../../../../lib/react/components/Render/Render.mjs';
7
7
 
8
8
  const DataLoader = () => {
9
- const loaderHooks = useList().loader.getLoaderInvocationHooks();
9
+ const loader = useList().loader;
10
+ const loaderHooks = loader.getLoaderInvocationHooks();
11
+ const isInitiallyLoading = loader.useIsInitiallyLoading();
12
+ const disableSuspense = loader.disableInitialSuspenseBoundary && isInitiallyLoading;
10
13
  return loaderHooks.map((loaderHook, i) => /* @__PURE__ */ jsx(
11
14
  DataLoaderSuspense,
12
15
  {
13
16
  useRenderSuspense: loaderHook.useRenderSuspense,
17
+ disabled: disableSuspense,
14
18
  children: /* @__PURE__ */ jsx(Render, { children: () => {
15
19
  loaderHook.useLoadBatch();
16
20
  } })
@@ -1 +1 @@
1
- {"version":3,"file":"DataLoader.mjs","sources":["../../../../../../../../../src/components/List/components/DataLoader/DataLoader.tsx"],"sourcesContent":["import { DataLoaderSuspense } from \"@/components/List/components/DataLoader/DataLoaderSuspense\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport { Render } from \"@/lib/react/components/Render\";\n\nexport const DataLoader = () => {\n const loaderHooks = useList().loader.getLoaderInvocationHooks();\n\n return loaderHooks.map((loaderHook, i) => (\n <DataLoaderSuspense\n key={i}\n useRenderSuspense={loaderHook.useRenderSuspense}\n >\n <Render>\n {() => {\n loaderHook.useLoadBatch();\n }}\n </Render>\n </DataLoaderSuspense>\n ));\n};\n\nexport default DataLoader;\n"],"names":[],"mappings":";;;;;AAIO,MAAM,aAAa,MAAM;AAC9B,EAAA,MAAM,WAAA,GAAc,OAAA,EAAQ,CAAE,MAAA,CAAO,wBAAA,EAAyB;AAE9D,EAAA,OAAO,WAAA,CAAY,GAAA,CAAI,CAAC,UAAA,EAAY,CAAA,qBAClC,GAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MAEC,mBAAmB,UAAA,CAAW,iBAAA;AAAA,MAE9B,QAAA,kBAAA,GAAA,CAAC,UACE,QAAA,EAAA,MAAM;AACL,QAAA,UAAA,CAAW,YAAA,EAAa;AAAA,MAC1B,CAAA,EACF;AAAA,KAAA;AAAA,IAPK;AAAA,GASR,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"DataLoader.mjs","sources":["../../../../../../../../../src/components/List/components/DataLoader/DataLoader.tsx"],"sourcesContent":["import { DataLoaderSuspense } from \"@/components/List/components/DataLoader/DataLoaderSuspense\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport { Render } from \"@/lib/react/components/Render\";\n\nexport const DataLoader = () => {\n const loader = useList().loader;\n const loaderHooks = loader.getLoaderInvocationHooks();\n const isInitiallyLoading = loader.useIsInitiallyLoading();\n\n const disableSuspense =\n loader.disableInitialSuspenseBoundary && isInitiallyLoading;\n\n return loaderHooks.map((loaderHook, i) => (\n <DataLoaderSuspense\n key={i}\n useRenderSuspense={loaderHook.useRenderSuspense}\n disabled={disableSuspense}\n >\n <Render>\n {() => {\n loaderHook.useLoadBatch();\n }}\n </Render>\n </DataLoaderSuspense>\n ));\n};\n\nexport default DataLoader;\n"],"names":[],"mappings":";;;;;AAIO,MAAM,aAAa,MAAM;AAC9B,EAAA,MAAM,MAAA,GAAS,SAAQ,CAAE,MAAA;AACzB,EAAA,MAAM,WAAA,GAAc,OAAO,wBAAA,EAAyB;AACpD,EAAA,MAAM,kBAAA,GAAqB,OAAO,qBAAA,EAAsB;AAExD,EAAA,MAAM,eAAA,GACJ,OAAO,8BAAA,IAAkC,kBAAA;AAE3C,EAAA,OAAO,WAAA,CAAY,GAAA,CAAI,CAAC,UAAA,EAAY,CAAA,qBAClC,GAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MAEC,mBAAmB,UAAA,CAAW,iBAAA;AAAA,MAC9B,QAAA,EAAU,eAAA;AAAA,MAEV,QAAA,kBAAA,GAAA,CAAC,UACE,QAAA,EAAA,MAAM;AACL,QAAA,UAAA,CAAW,YAAA,EAAa;AAAA,MAC1B,CAAA,EACF;AAAA,KAAA;AAAA,IARK;AAAA,GAUR,CAAA;AACH;;;;"}
@@ -1,6 +1,6 @@
1
1
  "use client"
2
2
  /* */
3
- import { jsx } from 'react/jsx-runtime';
3
+ import { jsx, Fragment } from 'react/jsx-runtime';
4
4
  import { Suspense } from 'react';
5
5
 
6
6
  const Fallback = (props) => {
@@ -9,7 +9,10 @@ const Fallback = (props) => {
9
9
  return null;
10
10
  };
11
11
  const DataLoaderSuspense = (props) => {
12
- const { useRenderSuspense, children } = props;
12
+ const { useRenderSuspense, children, disabled = false } = props;
13
+ if (disabled) {
14
+ return /* @__PURE__ */ jsx(Fragment, { children });
15
+ }
13
16
  const fallback = /* @__PURE__ */ jsx(Fallback, { useRenderSuspense });
14
17
  return /* @__PURE__ */ jsx(Suspense, { fallback, children });
15
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"DataLoaderSuspense.mjs","sources":["../../../../../../../../../src/components/List/components/DataLoader/DataLoaderSuspense.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport type { FC } from \"react\";\nimport { Suspense } from \"react\";\n\ninterface Props extends PropsWithChildren {\n useRenderSuspense: () => void;\n}\n\ninterface FallbackProps {\n useRenderSuspense: () => void;\n}\n\nconst Fallback: FC<FallbackProps> = (props) => {\n const { useRenderSuspense } = props;\n useRenderSuspense();\n return null;\n};\n\nexport const DataLoaderSuspense: FC<Props> = (props) => {\n const { useRenderSuspense, children } = props;\n const fallback = <Fallback useRenderSuspense={useRenderSuspense} />;\n return <Suspense fallback={fallback}>{children}</Suspense>;\n};\n"],"names":[],"mappings":";;;AAYA,MAAM,QAAA,GAA8B,CAAC,KAAA,KAAU;AAC7C,EAAA,MAAM,EAAE,mBAAkB,GAAI,KAAA;AAC9B,EAAA,iBAAA,EAAkB;AAClB,EAAA,OAAO,IAAA;AACT,CAAA;AAEO,MAAM,kBAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,iBAAA,EAAmB,QAAA,EAAS,GAAI,KAAA;AACxC,EAAA,MAAM,QAAA,mBAAW,GAAA,CAAC,QAAA,EAAA,EAAS,iBAAA,EAAsC,CAAA;AACjE,EAAA,uBAAO,GAAA,CAAC,QAAA,EAAA,EAAS,QAAA,EAAqB,QAAA,EAAS,CAAA;AACjD;;;;"}
1
+ {"version":3,"file":"DataLoaderSuspense.mjs","sources":["../../../../../../../../../src/components/List/components/DataLoader/DataLoaderSuspense.tsx"],"sourcesContent":["import type { PropsWithChildren } from \"react\";\nimport type { FC } from \"react\";\nimport { Suspense } from \"react\";\n\ninterface Props extends PropsWithChildren {\n useRenderSuspense: () => void;\n disabled?: boolean;\n}\n\ninterface FallbackProps {\n useRenderSuspense: () => void;\n}\n\nconst Fallback: FC<FallbackProps> = (props) => {\n const { useRenderSuspense } = props;\n useRenderSuspense();\n return null;\n};\n\nexport const DataLoaderSuspense: FC<Props> = (props) => {\n const { useRenderSuspense, children, disabled = false } = props;\n if (disabled) {\n return <>{children}</>;\n }\n const fallback = <Fallback useRenderSuspense={useRenderSuspense} />;\n return <Suspense fallback={fallback}>{children}</Suspense>;\n};\n"],"names":[],"mappings":";;;AAaA,MAAM,QAAA,GAA8B,CAAC,KAAA,KAAU;AAC7C,EAAA,MAAM,EAAE,mBAAkB,GAAI,KAAA;AAC9B,EAAA,iBAAA,EAAkB;AAClB,EAAA,OAAO,IAAA;AACT,CAAA;AAEO,MAAM,kBAAA,GAAgC,CAAC,KAAA,KAAU;AACtD,EAAA,MAAM,EAAE,iBAAA,EAAmB,QAAA,EAAU,QAAA,GAAW,OAAM,GAAI,KAAA;AAC1D,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,uCAAU,QAAA,EAAS,CAAA;AAAA,EACrB;AACA,EAAA,MAAM,QAAA,mBAAW,GAAA,CAAC,QAAA,EAAA,EAAS,iBAAA,EAAsC,CAAA;AACjE,EAAA,uBAAO,GAAA,CAAC,QAAA,EAAA,EAAS,QAAA,EAAqB,QAAA,EAAS,CAAA;AACjD;;;;"}
@@ -0,0 +1,27 @@
1
+ "use client"
2
+ /* */
3
+ import { jsxs, jsx } from 'react/jsx-runtime';
4
+ import 'react';
5
+ import '@mittwald/flow-icons';
6
+ import '../../../Icon/components/IconSetProvider.mjs';
7
+ import '../../../Icon/Icon.mjs';
8
+ import '../../../../views/IconView.mjs';
9
+ import { IconSearch } from '../../../Icon/components/icons/IconSearch.mjs';
10
+ import locales from '../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
11
+ import IllustratedMessageView from '../../../../views/IllustratedMessageView.mjs';
12
+ import HeadingView from '../../../../views/HeadingView.mjs';
13
+ import TextView from '../../../../views/TextView.mjs';
14
+ import '../../../TranslationProvider/TranslationProvider.mjs';
15
+ import { useLocalizedStringFormatter } from '../../../TranslationProvider/useLocalizedStringFormatter.mjs';
16
+
17
+ const EmptySearchResultView = () => {
18
+ const stringFormatter = useLocalizedStringFormatter(locales, "List");
19
+ return /* @__PURE__ */ jsxs(IllustratedMessageView, { children: [
20
+ /* @__PURE__ */ jsx(IconSearch, {}),
21
+ /* @__PURE__ */ jsx(HeadingView, { children: stringFormatter.format("noResult.heading") }),
22
+ /* @__PURE__ */ jsx(TextView, { children: stringFormatter.format("noResult.text") })
23
+ ] });
24
+ };
25
+
26
+ export { EmptySearchResultView };
27
+ //# sourceMappingURL=EmptySearchResultView.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptySearchResultView.mjs","sources":["../../../../../../../../../src/components/List/components/EmptySearchResultView/EmptySearchResultView.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport { IconSearch } from \"@/components/Icon/components/icons\";\nimport locales from \"../../locales/*.locale.json\";\nimport IllustratedMessageView from \"@/views/IllustratedMessageView\";\nimport HeadingView from \"@/views/HeadingView\";\nimport TextView from \"@/views/TextView\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider\";\n\nexport type EmptySearchResultViewProps = Record<string, never>;\n\nexport const EmptySearchResultView: FC<EmptySearchResultViewProps> = () => {\n const stringFormatter = useLocalizedStringFormatter(locales, \"List\");\n\n return (\n <IllustratedMessageView>\n <IconSearch />\n <HeadingView>{stringFormatter.format(\"noResult.heading\")}</HeadingView>\n <TextView>{stringFormatter.format(\"noResult.text\")}</TextView>\n </IllustratedMessageView>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAUO,MAAM,wBAAwD,MAAM;AACzE,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,MAAM,CAAA;AAEnE,EAAA,4BACG,sBAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,UAAA,EAAA,EAAW,CAAA;AAAA,oBACZ,GAAA,CAAC,WAAA,EAAA,EAAa,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,kBAAkB,CAAA,EAAE,CAAA;AAAA,oBACzD,GAAA,CAAC,QAAA,EAAA,EAAU,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,eAAe,CAAA,EAAE;AAAA,GAAA,EACrD,CAAA;AAEJ;;;;"}
@@ -0,0 +1,27 @@
1
+ "use client"
2
+ /* */
3
+ import { jsxs, jsx } from 'react/jsx-runtime';
4
+ import locales from '../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
5
+ import IllustratedMessageView from '../../../../views/IllustratedMessageView.mjs';
6
+ import HeadingView from '../../../../views/HeadingView.mjs';
7
+ import TextView from '../../../../views/TextView.mjs';
8
+ import 'react';
9
+ import '@mittwald/flow-icons';
10
+ import '../../../Icon/components/IconSetProvider.mjs';
11
+ import '../../../Icon/Icon.mjs';
12
+ import '../../../../views/IconView.mjs';
13
+ import { IconClose } from '../../../Icon/components/icons/IconClose.mjs';
14
+ import '../../../TranslationProvider/TranslationProvider.mjs';
15
+ import { useLocalizedStringFormatter } from '../../../TranslationProvider/useLocalizedStringFormatter.mjs';
16
+
17
+ const EmptyView = () => {
18
+ const stringFormatter = useLocalizedStringFormatter(locales, "List");
19
+ return /* @__PURE__ */ jsxs(IllustratedMessageView, { children: [
20
+ /* @__PURE__ */ jsx(IconClose, {}),
21
+ /* @__PURE__ */ jsx(HeadingView, { children: stringFormatter.format("noItems.heading") }),
22
+ /* @__PURE__ */ jsx(TextView, { children: stringFormatter.format("noItems.text") })
23
+ ] });
24
+ };
25
+
26
+ export { EmptyView };
27
+ //# sourceMappingURL=EmptyView.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmptyView.mjs","sources":["../../../../../../../../../src/components/List/components/EmptyView/EmptyView.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport locales from \"../../locales/*.locale.json\";\nimport IllustratedMessageView from \"@/views/IllustratedMessageView\";\nimport HeadingView from \"@/views/HeadingView\";\nimport TextView from \"@/views/TextView\";\nimport { IconClose } from \"@/components/Icon/components/icons\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider\";\n\nexport type EmptyViewProps = Record<string, never>;\n\nexport const EmptyView: FC<EmptyViewProps> = () => {\n const stringFormatter = useLocalizedStringFormatter(locales, \"List\");\n\n return (\n <IllustratedMessageView>\n <IconClose />\n <HeadingView>{stringFormatter.format(\"noItems.heading\")}</HeadingView>\n <TextView>{stringFormatter.format(\"noItems.text\")}</TextView>\n </IllustratedMessageView>\n );\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAUO,MAAM,YAAgC,MAAM;AACjD,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,MAAM,CAAA;AAEnE,EAAA,4BACG,sBAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,SAAA,EAAA,EAAU,CAAA;AAAA,oBACX,GAAA,CAAC,WAAA,EAAA,EAAa,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,iBAAiB,CAAA,EAAE,CAAA;AAAA,oBACxD,GAAA,CAAC,QAAA,EAAA,EAAU,QAAA,EAAA,eAAA,CAAgB,MAAA,CAAO,cAAc,CAAA,EAAE;AAAA,GAAA,EACpD,CAAA;AAEJ;;;;"}
@@ -11,14 +11,14 @@ const PaginationInfos = (props) => {
11
11
  const stringFormatter = useLocalizedStringFormatter(locales, "List");
12
12
  const list = useList();
13
13
  const pagination = list.batches;
14
- const isInitiallyLoading = list.loader.useIsInitiallyLoading();
14
+ const isLoading = list.loader.useIsLoading();
15
15
  const isEmpty = list.useIsEmpty();
16
16
  const totalItemsCount = pagination.getTotalItemsCount();
17
17
  const visibleItemsCount = pagination.getVisibleItemsCount();
18
18
  if (isEmpty) {
19
19
  return null;
20
20
  }
21
- const text = isInitiallyLoading ? /* @__PURE__ */ jsx(SkeletonView, { width: "200px" }) : stringFormatter.format("paginationInfo", {
21
+ const text = isLoading ? /* @__PURE__ */ jsx(SkeletonView, { width: "200px" }) : stringFormatter.format("paginationInfo", {
22
22
  visibleItemsCount,
23
23
  totalItemsCount
24
24
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationInfos.mjs","sources":["../../../../../../../../../../../src/components/List/components/Footer/components/PaginationInfos/PaginationInfos.tsx"],"sourcesContent":["import { useList } from \"@/components/List/hooks/useList\";\nimport type { TextProps } from \"@/components/Text\";\nimport SkeletonView from \"@/views/SkeletonView\";\nimport TextView from \"@/views/TextView\";\nimport type { FC } from \"react\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport locales from \"../../../../locales/*.locale.json\";\n\nexport const PaginationInfos: FC<TextProps> = (props) => {\n const stringFormatter = useLocalizedStringFormatter(locales, \"List\");\n\n const list = useList();\n const pagination = list.batches;\n const isInitiallyLoading = list.loader.useIsInitiallyLoading();\n const isEmpty = list.useIsEmpty();\n\n const totalItemsCount = pagination.getTotalItemsCount();\n const visibleItemsCount = pagination.getVisibleItemsCount();\n\n if (isEmpty) {\n return null;\n }\n\n const text = isInitiallyLoading ? (\n <SkeletonView width=\"200px\" />\n ) : (\n stringFormatter.format(\"paginationInfo\", {\n visibleItemsCount,\n totalItemsCount,\n })\n );\n\n return <TextView {...props}>{text}</TextView>;\n};\n\nexport default PaginationInfos;\n"],"names":[],"mappings":";;;;;;;AAQO,MAAM,eAAA,GAAiC,CAAC,KAAA,KAAU;AACvD,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,MAAM,CAAA;AAEnE,EAAA,MAAM,OAAO,OAAA,EAAQ;AACrB,EAAA,MAAM,aAAa,IAAA,CAAK,OAAA;AACxB,EAAA,MAAM,kBAAA,GAAqB,IAAA,CAAK,MAAA,CAAO,qBAAA,EAAsB;AAC7D,EAAA,MAAM,OAAA,GAAU,KAAK,UAAA,EAAW;AAEhC,EAAA,MAAM,eAAA,GAAkB,WAAW,kBAAA,EAAmB;AACtD,EAAA,MAAM,iBAAA,GAAoB,WAAW,oBAAA,EAAqB;AAE1D,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,MAAM,IAAA,GAAO,qCACX,GAAA,CAAC,YAAA,EAAA,EAAa,OAAM,OAAA,EAAQ,CAAA,GAE5B,eAAA,CAAgB,MAAA,CAAO,gBAAA,EAAkB;AAAA,IACvC,iBAAA;AAAA,IACA;AAAA,GACD,CAAA;AAGH,EAAA,uBAAO,GAAA,CAAC,QAAA,EAAA,EAAU,GAAG,KAAA,EAAQ,QAAA,EAAA,IAAA,EAAK,CAAA;AACpC;;;;"}
1
+ {"version":3,"file":"PaginationInfos.mjs","sources":["../../../../../../../../../../../src/components/List/components/Footer/components/PaginationInfos/PaginationInfos.tsx"],"sourcesContent":["import { useList } from \"@/components/List/hooks/useList\";\nimport type { TextProps } from \"@/components/Text\";\nimport SkeletonView from \"@/views/SkeletonView\";\nimport TextView from \"@/views/TextView\";\nimport type { FC } from \"react\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport locales from \"../../../../locales/*.locale.json\";\n\nexport const PaginationInfos: FC<TextProps> = (props) => {\n const stringFormatter = useLocalizedStringFormatter(locales, \"List\");\n\n const list = useList();\n const pagination = list.batches;\n const isLoading = list.loader.useIsLoading();\n const isEmpty = list.useIsEmpty();\n\n const totalItemsCount = pagination.getTotalItemsCount();\n const visibleItemsCount = pagination.getVisibleItemsCount();\n\n if (isEmpty) {\n return null;\n }\n\n const text = isLoading ? (\n <SkeletonView width=\"200px\" />\n ) : (\n stringFormatter.format(\"paginationInfo\", {\n visibleItemsCount,\n totalItemsCount,\n })\n );\n\n return <TextView {...props}>{text}</TextView>;\n};\n\nexport default PaginationInfos;\n"],"names":[],"mappings":";;;;;;;AAQO,MAAM,eAAA,GAAiC,CAAC,KAAA,KAAU;AACvD,EAAA,MAAM,eAAA,GAAkB,2BAAA,CAA4B,OAAA,EAAS,MAAM,CAAA;AAEnE,EAAA,MAAM,OAAO,OAAA,EAAQ;AACrB,EAAA,MAAM,aAAa,IAAA,CAAK,OAAA;AACxB,EAAA,MAAM,SAAA,GAAY,IAAA,CAAK,MAAA,CAAO,YAAA,EAAa;AAC3C,EAAA,MAAM,OAAA,GAAU,KAAK,UAAA,EAAW;AAEhC,EAAA,MAAM,eAAA,GAAkB,WAAW,kBAAA,EAAmB;AACtD,EAAA,MAAM,iBAAA,GAAoB,WAAW,oBAAA,EAAqB;AAE1D,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,OAAO,IAAA;AAAA,EACT;AAEA,EAAA,MAAM,IAAA,GAAO,4BACX,GAAA,CAAC,YAAA,EAAA,EAAa,OAAM,OAAA,EAAQ,CAAA,GAE5B,eAAA,CAAgB,MAAA,CAAO,gBAAA,EAAkB;AAAA,IACvC,iBAAA;AAAA,IACA;AAAA,GACD,CAAA;AAGH,EAAA,uBAAO,GAAA,CAAC,QAAA,EAAA,EAAU,GAAG,KAAA,EAAQ,QAAA,EAAA,IAAA,EAAK,CAAA;AACpC;;;;"}
@@ -1,7 +1,6 @@
1
1
  "use client"
2
2
  /* */
3
3
  import { jsxs, jsx } from 'react/jsx-runtime';
4
- import 'react';
5
4
  import headerStyles from './Header.module.css.mjs';
6
5
  import clsx from 'clsx';
7
6
  import { ActiveFilters } from './components/ActiveFilters/ActiveFilters.mjs';
@@ -18,8 +17,15 @@ import { useAvailableViewModes } from './lib.mjs';
18
17
  const Header = (props) => {
19
18
  const { className } = props;
20
19
  const list = useList();
20
+ const isEmpty = list.useIsEmpty();
21
+ const isInitiallyLoading = list.loader.useIsInitiallyLoading();
22
+ const noItemsAvailable = isEmpty && list.getEmptyViewType() === "list";
23
+ const isDisabled = isInitiallyLoading || noItemsAvailable;
21
24
  const availableViewModes = useAvailableViewModes();
22
25
  const hasOptions = list.filters.length > 0 || list.visibleSorting.length > 0 || list.search || availableViewModes.length > 1;
26
+ if (noItemsAvailable) {
27
+ return;
28
+ }
23
29
  return /* @__PURE__ */ jsxs(
24
30
  DivView,
25
31
  {
@@ -32,14 +38,14 @@ const Header = (props) => {
32
38
  /* @__PURE__ */ jsxs(DivView, { className: headerStyles.headerContent, children: [
33
39
  /* @__PURE__ */ jsx(TunnelExit, { id: "actions" }),
34
40
  hasOptions && /* @__PURE__ */ jsxs(DivView, { className: headerStyles.options, children: [
35
- /* @__PURE__ */ jsx(ViewModeContextMenu, {}),
36
- /* @__PURE__ */ jsx(SortingContextMenu, {}),
37
- /* @__PURE__ */ jsx(FilterContextMenus, {}),
38
- /* @__PURE__ */ jsx(AllFiltersModal, {}),
39
- list.search && /* @__PURE__ */ jsx(SearchField, { search: list.search })
41
+ /* @__PURE__ */ jsx(ViewModeContextMenu, { isDisabled }),
42
+ /* @__PURE__ */ jsx(SortingContextMenu, { isDisabled }),
43
+ /* @__PURE__ */ jsx(FilterContextMenus, { isDisabled }),
44
+ /* @__PURE__ */ jsx(AllFiltersModal, { isDisabled }),
45
+ list.search && /* @__PURE__ */ jsx(SearchField, { search: list.search, isDisabled })
40
46
  ] })
41
47
  ] }),
42
- /* @__PURE__ */ jsx(ActiveFilters, {})
48
+ /* @__PURE__ */ jsx(ActiveFilters, { isDisabled })
43
49
  ]
44
50
  }
45
51
  );
@@ -1 +1 @@
1
- {"version":3,"file":"Header.mjs","sources":["../../../../../../../../../src/components/List/components/Header/Header.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport React from \"react\";\nimport styles from \"./Header.module.css\";\nimport clsx from \"clsx\";\nimport { ActiveFilters } from \"@/components/List/components/Header/components/ActiveFilters\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { SearchField } from \"@/components/List/components/Header/components/SearchField/SearchField\";\nimport { ViewModeContextMenu } from \"@/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu\";\nimport { TunnelExit } from \"@mittwald/react-tunnel\";\nimport DivView from \"@/views/DivView\";\nimport { SortingContextMenu } from \"@/components/List/components/Header/components/SortingContextMenu/SortingContextMenu\";\nimport { FilterContextMenus } from \"@/components/List/components/Header/components/FilterContextMenu/FilterContextMenus\";\nimport { AllFiltersModal } from \"@/components/List/components/Header/components/AllFiltersModal/AllFiltersModal\";\nimport { useAvailableViewModes } from \"@/components/List/components/Header/lib\";\n\nexport const Header: FC<PropsWithClassName> = (props) => {\n const { className } = props;\n const list = useList();\n\n const availableViewModes = useAvailableViewModes();\n\n const hasOptions =\n list.filters.length > 0 ||\n list.visibleSorting.length > 0 ||\n list.search ||\n availableViewModes.length > 1;\n\n return (\n <DivView\n className={clsx(\n className,\n styles.header,\n list.search && styles.withSearch,\n )}\n >\n <DivView className={styles.headerContent}>\n <TunnelExit id=\"actions\" />\n {hasOptions && (\n <DivView className={styles.options}>\n <ViewModeContextMenu />\n <SortingContextMenu />\n <FilterContextMenus />\n <AllFiltersModal />\n\n {list.search && <SearchField search={list.search} />}\n </DivView>\n )}\n </DivView>\n <ActiveFilters />\n </DivView>\n );\n};\n\nexport default Header;\n"],"names":["styles"],"mappings":";;;;;;;;;;;;;;;AAgBO,MAAM,MAAA,GAAiC,CAAC,KAAA,KAAU;AACvD,EAAA,MAAM,EAAE,WAAU,GAAI,KAAA;AACtB,EAAA,MAAM,OAAO,OAAA,EAAQ;AAErB,EAAA,MAAM,qBAAqB,qBAAA,EAAsB;AAEjD,EAAA,MAAM,UAAA,GACJ,IAAA,CAAK,OAAA,CAAQ,MAAA,GAAS,CAAA,IACtB,IAAA,CAAK,cAAA,CAAe,MAAA,GAAS,CAAA,IAC7B,IAAA,CAAK,MAAA,IACL,kBAAA,CAAmB,MAAA,GAAS,CAAA;AAE9B,EAAA,uBACE,IAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,IAAA;AAAA,QACT,SAAA;AAAA,QACAA,YAAA,CAAO,MAAA;AAAA,QACP,IAAA,CAAK,UAAUA,YAAA,CAAO;AAAA,OACxB;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAWA,YAAA,CAAO,aAAA,EACzB,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,UAAA,EAAA,EAAW,IAAG,SAAA,EAAU,CAAA;AAAA,UACxB,UAAA,oBACC,IAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAWA,aAAO,OAAA,EACzB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,mBAAA,EAAA,EAAoB,CAAA;AAAA,gCACpB,kBAAA,EAAA,EAAmB,CAAA;AAAA,gCACnB,kBAAA,EAAA,EAAmB,CAAA;AAAA,gCACnB,eAAA,EAAA,EAAgB,CAAA;AAAA,YAEhB,KAAK,MAAA,oBAAU,GAAA,CAAC,WAAA,EAAA,EAAY,MAAA,EAAQ,KAAK,MAAA,EAAQ;AAAA,WAAA,EACpD;AAAA,SAAA,EAEJ,CAAA;AAAA,4BACC,aAAA,EAAA,EAAc;AAAA;AAAA;AAAA,GACjB;AAEJ;;;;"}
1
+ {"version":3,"file":"Header.mjs","sources":["../../../../../../../../../src/components/List/components/Header/Header.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport styles from \"./Header.module.css\";\nimport clsx from \"clsx\";\nimport { ActiveFilters } from \"@/components/List/components/Header/components/ActiveFilters\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport type { PropsWithClassName } from \"@/lib/types/props\";\nimport { SearchField } from \"@/components/List/components/Header/components/SearchField/SearchField\";\nimport { ViewModeContextMenu } from \"@/components/List/components/Header/components/ViewModeContextMenu/ViewModeContextMenu\";\nimport { TunnelExit } from \"@mittwald/react-tunnel\";\nimport DivView from \"@/views/DivView\";\nimport { SortingContextMenu } from \"@/components/List/components/Header/components/SortingContextMenu/SortingContextMenu\";\nimport { FilterContextMenus } from \"@/components/List/components/Header/components/FilterContextMenu/FilterContextMenus\";\nimport { AllFiltersModal } from \"@/components/List/components/Header/components/AllFiltersModal/AllFiltersModal\";\nimport { useAvailableViewModes } from \"@/components/List/components/Header/lib\";\n\nexport const Header: FC<PropsWithClassName> = (props) => {\n const { className } = props;\n const list = useList();\n\n const isEmpty = list.useIsEmpty();\n const isInitiallyLoading = list.loader.useIsInitiallyLoading();\n const noItemsAvailable = isEmpty && list.getEmptyViewType() === \"list\";\n const isDisabled = isInitiallyLoading || noItemsAvailable;\n\n const availableViewModes = useAvailableViewModes();\n\n const hasOptions =\n list.filters.length > 0 ||\n list.visibleSorting.length > 0 ||\n list.search ||\n availableViewModes.length > 1;\n\n if (noItemsAvailable) {\n return;\n }\n\n return (\n <DivView\n className={clsx(\n className,\n styles.header,\n list.search && styles.withSearch,\n )}\n >\n <DivView className={styles.headerContent}>\n <TunnelExit id=\"actions\" />\n {hasOptions && (\n <DivView className={styles.options}>\n <ViewModeContextMenu isDisabled={isDisabled} />\n <SortingContextMenu isDisabled={isDisabled} />\n <FilterContextMenus isDisabled={isDisabled} />\n <AllFiltersModal isDisabled={isDisabled} />\n\n {list.search && (\n <SearchField search={list.search} isDisabled={isDisabled} />\n )}\n </DivView>\n )}\n </DivView>\n <ActiveFilters isDisabled={isDisabled} />\n </DivView>\n );\n};\n\nexport default Header;\n"],"names":["styles"],"mappings":";;;;;;;;;;;;;;AAeO,MAAM,MAAA,GAAiC,CAAC,KAAA,KAAU;AACvD,EAAA,MAAM,EAAE,WAAU,GAAI,KAAA;AACtB,EAAA,MAAM,OAAO,OAAA,EAAQ;AAErB,EAAA,MAAM,OAAA,GAAU,KAAK,UAAA,EAAW;AAChC,EAAA,MAAM,kBAAA,GAAqB,IAAA,CAAK,MAAA,CAAO,qBAAA,EAAsB;AAC7D,EAAA,MAAM,gBAAA,GAAmB,OAAA,IAAW,IAAA,CAAK,gBAAA,EAAiB,KAAM,MAAA;AAChE,EAAA,MAAM,aAAa,kBAAA,IAAsB,gBAAA;AAEzC,EAAA,MAAM,qBAAqB,qBAAA,EAAsB;AAEjD,EAAA,MAAM,UAAA,GACJ,IAAA,CAAK,OAAA,CAAQ,MAAA,GAAS,CAAA,IACtB,IAAA,CAAK,cAAA,CAAe,MAAA,GAAS,CAAA,IAC7B,IAAA,CAAK,MAAA,IACL,kBAAA,CAAmB,MAAA,GAAS,CAAA;AAE9B,EAAA,IAAI,gBAAA,EAAkB;AACpB,IAAA;AAAA,EACF;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,OAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,IAAA;AAAA,QACT,SAAA;AAAA,QACAA,YAAA,CAAO,MAAA;AAAA,QACP,IAAA,CAAK,UAAUA,YAAA,CAAO;AAAA,OACxB;AAAA,MAEA,QAAA,EAAA;AAAA,wBAAA,IAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAWA,YAAA,CAAO,aAAA,EACzB,QAAA,EAAA;AAAA,0BAAA,GAAA,CAAC,UAAA,EAAA,EAAW,IAAG,SAAA,EAAU,CAAA;AAAA,UACxB,UAAA,oBACC,IAAA,CAAC,OAAA,EAAA,EAAQ,SAAA,EAAWA,aAAO,OAAA,EACzB,QAAA,EAAA;AAAA,4BAAA,GAAA,CAAC,uBAAoB,UAAA,EAAwB,CAAA;AAAA,4BAC7C,GAAA,CAAC,sBAAmB,UAAA,EAAwB,CAAA;AAAA,4BAC5C,GAAA,CAAC,sBAAmB,UAAA,EAAwB,CAAA;AAAA,4BAC5C,GAAA,CAAC,mBAAgB,UAAA,EAAwB,CAAA;AAAA,YAExC,KAAK,MAAA,oBACJ,GAAA,CAAC,eAAY,MAAA,EAAQ,IAAA,CAAK,QAAQ,UAAA,EAAwB;AAAA,WAAA,EAE9D;AAAA,SAAA,EAEJ,CAAA;AAAA,wBACA,GAAA,CAAC,iBAAc,UAAA,EAAwB;AAAA;AAAA;AAAA,GACzC;AAEJ;;;;"}
@@ -6,10 +6,6 @@ import styles from './ActiveFilters.module.scss.mjs';
6
6
  import locales from '../../../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
7
7
  import { observer } from 'mobx-react-lite';
8
8
  import { useLocalizedStringFormatter } from '../../../../../TranslationProvider/useLocalizedStringFormatter.mjs';
9
- import { TooltipTrigger } from '../../../../../Tooltip/components/TooltipTrigger/TooltipTrigger.mjs';
10
- import 'react-aria-components';
11
- import 'clsx';
12
- import '../../../../../../lib/propsContext/propsContext.mjs';
13
9
  import 'react';
14
10
  import '@mittwald/flow-icons';
15
11
  import '../../../../../Icon/components/IconSetProvider.mjs';
@@ -28,23 +24,40 @@ import { Filter } from '../../../../model/filter/Filter.mjs';
28
24
  import { transformDateValueToFormattedDate } from '../../../../../../lib/date/transformDateValueToFormattedDate.mjs';
29
25
  import { DateRangeFilter } from '../../../../model/filter/DateRangeFilter.mjs';
30
26
 
31
- const ActiveFilters = observer(() => {
27
+ const ActiveFilters = observer((props) => {
28
+ const { isDisabled } = props;
32
29
  const list = useList();
33
- const formatter = useLocalizedStringFormatter(locales, "List.ActiveFilters");
30
+ const formatter = useLocalizedStringFormatter(locales, "List");
34
31
  const activeFilters = list.filters.flatMap((f) => {
35
32
  if (f instanceof DateRangeFilter) {
36
33
  const value = f.getValue();
37
34
  if (value) {
38
35
  return [
39
- /* @__PURE__ */ jsx(BadgeView, { onClose: () => f.clear(), children: /* @__PURE__ */ jsx(TextView, { children: `${transformDateValueToFormattedDate(value.start)} - ${transformDateValueToFormattedDate(value.end)}` }) }, f.name)
36
+ /* @__PURE__ */ jsx(
37
+ BadgeView,
38
+ {
39
+ onClose: () => f.clear(),
40
+ isDisabled,
41
+ children: /* @__PURE__ */ jsx(TextView, { children: `${transformDateValueToFormattedDate(value.start)} - ${transformDateValueToFormattedDate(value.end)}` })
42
+ },
43
+ f.name
44
+ )
40
45
  ];
41
46
  }
42
47
  }
43
- return f.values.filter((v) => v.isActive).map((v) => /* @__PURE__ */ jsx(BadgeView, { onClose: () => v.deactivate(), children: /* @__PURE__ */ jsx(TextView, { children: v.render() }) }, v.id));
48
+ return f.values.filter((v) => v.isActive).map((v) => /* @__PURE__ */ jsx(
49
+ BadgeView,
50
+ {
51
+ onClose: () => v.deactivate(),
52
+ isDisabled,
53
+ children: /* @__PURE__ */ jsx(TextView, { children: v.render() })
54
+ },
55
+ v.id
56
+ ));
44
57
  });
45
58
  const storingAvailable = list.filters.some((f) => f.isStoringAvailable());
46
59
  const hasChanges = list.filters.some((f) => f.hasChanges());
47
- const storeFiltersButton = storingAvailable && hasChanges && /* @__PURE__ */ jsxs(TooltipTriggerView, { children: [
60
+ const storeFiltersButton = storingAvailable && hasChanges && /* @__PURE__ */ jsxs(TooltipTriggerView, { isDisabled, children: [
48
61
  /* @__PURE__ */ jsx(TooltipView, { children: formatter.format("filters.store") }),
49
62
  /* @__PURE__ */ jsx(
50
63
  ButtonView,
@@ -58,7 +71,7 @@ const ActiveFilters = observer(() => {
58
71
  }
59
72
  )
60
73
  ] });
61
- const resetFiltersButton = hasChanges ? /* @__PURE__ */ jsxs(TooltipTrigger, { children: [
74
+ const resetFiltersButton = hasChanges ? /* @__PURE__ */ jsxs(TooltipTriggerView, { isDisabled, children: [
62
75
  /* @__PURE__ */ jsx(TooltipView, { children: formatter.format("filters.reset") }),
63
76
  /* @__PURE__ */ jsx(
64
77
  ButtonView,
@@ -72,7 +85,7 @@ const ActiveFilters = observer(() => {
72
85
  }
73
86
  )
74
87
  ] }) : void 0;
75
- const removeAllFiltersButton = activeFilters.length > 1 ? /* @__PURE__ */ jsxs(TooltipTrigger, { children: [
88
+ const removeAllFiltersButton = activeFilters.length > 1 ? /* @__PURE__ */ jsxs(TooltipTriggerView, { isDisabled, children: [
76
89
  /* @__PURE__ */ jsx(TooltipView, { children: formatter.format("filters.clear") }),
77
90
  /* @__PURE__ */ jsx(
78
91
  ButtonView,
@@ -1 +1 @@
1
- {"version":3,"file":"ActiveFilters.mjs","sources":["../../../../../../../../../../../src/components/List/components/Header/components/ActiveFilters/ActiveFilters.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport styles from \"./ActiveFilters.module.scss\";\nimport locales from \"../../../../locales/*.locale.json\";\nimport { observer } from \"mobx-react-lite\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport { TooltipTrigger } from \"@/components/Tooltip\";\nimport {\n IconClose,\n IconSave,\n IconUndo,\n} from \"@/components/Icon/components/icons\";\nimport ButtonView from \"@/views/ButtonView\";\nimport TooltipView from \"@/views/TooltipView\";\nimport DivView from \"@/views/DivView\";\nimport BadgeView from \"@/views/BadgeView\";\nimport TooltipTriggerView from \"@/views/TooltipTriggerView\";\nimport TextView from \"@/views/TextView\";\nimport { Filter } from \"@/components/List/model/filter/Filter\";\nimport { transformDateValueToFormattedDate } from \"@/lib/date/transformDateValueToFormattedDate\";\nimport { DateRangeFilter } from \"@/components/List/model/filter/DateRangeFilter\";\n\nexport const ActiveFilters: FC = observer(() => {\n const list = useList();\n const formatter = useLocalizedStringFormatter(locales, \"List.ActiveFilters\");\n\n const activeFilters = list.filters.flatMap((f) => {\n if (f instanceof DateRangeFilter) {\n const value = f.getValue();\n if (value) {\n return [\n <BadgeView key={f.name} onClose={() => f.clear()}>\n <TextView>\n {`${transformDateValueToFormattedDate(value.start)} - ${transformDateValueToFormattedDate(value.end)}`}\n </TextView>\n </BadgeView>,\n ];\n }\n }\n\n return f.values\n .filter((v) => v.isActive)\n .map((v) => (\n <BadgeView key={v.id} onClose={() => v.deactivate()}>\n <TextView>{v.render()}</TextView>\n </BadgeView>\n ));\n });\n\n const storingAvailable = list.filters.some((f) => f.isStoringAvailable());\n const hasChanges = list.filters.some((f) => f.hasChanges());\n\n const storeFiltersButton = storingAvailable && hasChanges && (\n <TooltipTriggerView>\n <TooltipView>{formatter.format(\"filters.store\")}</TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() =>\n Filter.storeFilters(list, { autosave: false, manualSave: true })\n }\n aria-label={formatter.format(\"filters.store\")}\n >\n <IconSave />\n </ButtonView>\n </TooltipTriggerView>\n );\n\n const resetFiltersButton = hasChanges ? (\n <TooltipTrigger>\n <TooltipView>{formatter.format(\"filters.reset\")}</TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.resetFilters()}\n aria-label={formatter.format(\"filters.reset\")}\n >\n <IconUndo />\n </ButtonView>\n </TooltipTrigger>\n ) : undefined;\n\n const removeAllFiltersButton =\n activeFilters.length > 1 ? (\n <TooltipTrigger>\n <TooltipView>{formatter.format(\"filters.clear\")}</TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.clearFilters()}\n >\n <IconClose />\n </ButtonView>\n </TooltipTrigger>\n ) : undefined;\n\n if (\n activeFilters.length === 0 &&\n !storeFiltersButton &&\n !resetFiltersButton\n ) {\n return null;\n }\n\n return (\n <DivView className={styles.activeFilters}>\n {activeFilters}\n {storeFiltersButton}\n {resetFiltersButton}\n {removeAllFiltersButton}\n </DivView>\n );\n});\n\nexport default ActiveFilters;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActiveFilters.mjs","sources":["../../../../../../../../../../../src/components/List/components/Header/components/ActiveFilters/ActiveFilters.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport { useList } from \"@/components/List/hooks/useList\";\nimport styles from \"./ActiveFilters.module.scss\";\nimport locales from \"../../../../locales/*.locale.json\";\nimport { observer } from \"mobx-react-lite\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport {\n IconClose,\n IconSave,\n IconUndo,\n} from \"@/components/Icon/components/icons\";\nimport ButtonView from \"@/views/ButtonView\";\nimport TooltipView from \"@/views/TooltipView\";\nimport DivView from \"@/views/DivView\";\nimport BadgeView from \"@/views/BadgeView\";\nimport TooltipTriggerView from \"@/views/TooltipTriggerView\";\nimport TextView from \"@/views/TextView\";\nimport { Filter } from \"@/components/List/model/filter/Filter\";\nimport { transformDateValueToFormattedDate } from \"@/lib/date/transformDateValueToFormattedDate\";\nimport { DateRangeFilter } from \"@/components/List/model/filter/DateRangeFilter\";\n\ninterface Props {\n isDisabled?: boolean;\n}\n\nexport const ActiveFilters: FC<Props> = observer((props) => {\n const { isDisabled } = props;\n const list = useList();\n const formatter = useLocalizedStringFormatter(locales, \"List\");\n\n const activeFilters = list.filters.flatMap((f) => {\n if (f instanceof DateRangeFilter) {\n const value = f.getValue();\n if (value) {\n return [\n <BadgeView\n key={f.name}\n onClose={() => f.clear()}\n isDisabled={isDisabled}\n >\n <TextView>\n {`${transformDateValueToFormattedDate(value.start)} - ${transformDateValueToFormattedDate(value.end)}`}\n </TextView>\n </BadgeView>,\n ];\n }\n }\n\n return f.values\n .filter((v) => v.isActive)\n .map((v) => (\n <BadgeView\n key={v.id}\n onClose={() => v.deactivate()}\n isDisabled={isDisabled}\n >\n <TextView>{v.render()}</TextView>\n </BadgeView>\n ));\n });\n\n const storingAvailable = list.filters.some((f) => f.isStoringAvailable());\n const hasChanges = list.filters.some((f) => f.hasChanges());\n\n const storeFiltersButton = storingAvailable && hasChanges && (\n <TooltipTriggerView isDisabled={isDisabled}>\n <TooltipView>{formatter.format(\"filters.store\")}</TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() =>\n Filter.storeFilters(list, { autosave: false, manualSave: true })\n }\n aria-label={formatter.format(\"filters.store\")}\n >\n <IconSave />\n </ButtonView>\n </TooltipTriggerView>\n );\n\n const resetFiltersButton = hasChanges ? (\n <TooltipTriggerView isDisabled={isDisabled}>\n <TooltipView>{formatter.format(\"filters.reset\")}</TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.resetFilters()}\n aria-label={formatter.format(\"filters.reset\")}\n >\n <IconUndo />\n </ButtonView>\n </TooltipTriggerView>\n ) : undefined;\n\n const removeAllFiltersButton =\n activeFilters.length > 1 ? (\n <TooltipTriggerView isDisabled={isDisabled}>\n <TooltipView>{formatter.format(\"filters.clear\")}</TooltipView>\n <ButtonView\n size=\"s\"\n variant=\"plain\"\n color=\"secondary\"\n onPress={() => list.clearFilters()}\n >\n <IconClose />\n </ButtonView>\n </TooltipTriggerView>\n ) : undefined;\n\n if (\n activeFilters.length === 0 &&\n !storeFiltersButton &&\n !resetFiltersButton\n ) {\n return null;\n }\n\n return (\n <DivView className={styles.activeFilters}>\n {activeFilters}\n {storeFiltersButton}\n {resetFiltersButton}\n {removeAllFiltersButton}\n </DivView>\n );\n});\n\nexport default ActiveFilters;\n"],"names":[],"mappings":"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"}
@@ -10,19 +10,24 @@ import { IconFilter } from '../../../../../Icon/components/icons/IconFilter.mjs'
10
10
  import ButtonView from '../../../../../../views/ButtonView.mjs';
11
11
  import 'invariant';
12
12
  import 'react-aria-components';
13
- import '../../../../../IllustratedMessage/IllustratedMessage.mjs';
14
- import '../../../../../Heading/Heading.mjs';
15
- import '../../../../../Text/Text.mjs';
16
- import locales from '../../../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
17
- import { useLocalizedStringFormatter } from '../../../../../TranslationProvider/useLocalizedStringFormatter.mjs';
18
13
  import clsx from 'clsx';
19
14
  import '@mittwald/react-tunnel';
20
15
  import '../../../../../../views/ListItemViewContentView.mjs';
21
16
  import '../../../../../../lib/propsContext/propsContext.mjs';
22
17
  import '../../../../../../lib/propsContext/components/PropsContextProvider.mjs';
18
+ import locales from '../../../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
19
+ import { useLocalizedStringFormatter } from '../../../../../TranslationProvider/useLocalizedStringFormatter.mjs';
23
20
  import '../../../../../../views/ContextMenuTriggerView.mjs';
24
21
  import '../../../../../ColumnLayout/ColumnLayout.mjs';
25
22
  import '../../../ListSummary/ListSummary.mjs';
23
+ import '../../../../../../views/DivView.mjs';
24
+ import '../../../../../../views/IllustratedMessageView.mjs';
25
+ import HeadingView from '../../../../../../views/HeadingView.mjs';
26
+ import TextView from '../../../../../../views/TextView.mjs';
27
+ import '../../../../../TranslationProvider/TranslationProvider.mjs';
28
+ import '../../../../../IllustratedMessage/IllustratedMessage.mjs';
29
+ import '../../../../../Heading/Heading.mjs';
30
+ import '../../../../../Text/Text.mjs';
26
31
  import { useList } from '../../../../hooks/useList.mjs';
27
32
  import '../../../../listContext.mjs';
28
33
  import 'mobx';
@@ -32,20 +37,19 @@ import ContentView from '../../../../../../views/ContentView.mjs';
32
37
  import SectionView from '../../../../../../views/SectionView.mjs';
33
38
  import { FilterAccordion } from './FilterAccordion.mjs';
34
39
  import { ViewModeAccordion } from './ViewModeAccordion.mjs';
35
- import TextView from '../../../../../../views/TextView.mjs';
36
40
  import { SortingAccordion } from './SortingAccordion.mjs';
37
41
  import ActionGroupView from '../../../../../../views/ActionGroupView.mjs';
38
42
  import 'remeda';
39
43
  import '@react-aria/utils';
40
44
  import 'dot-prop';
41
45
  import { useOverlayController } from '../../../../../../lib/controller/overlay/useOverlayController.mjs';
42
- import HeadingView from '../../../../../../views/HeadingView.mjs';
43
46
  import { ModalTrigger } from '../../../../../Modal/components/ModalTrigger/ModalTrigger.mjs';
44
47
  import { Modal } from '../../../../../Modal/Modal.mjs';
45
48
  import { SkeletonText } from '../../../../../SkeletonText/SkeletonText.mjs';
46
49
  import { useAvailableViewModes } from '../../lib.mjs';
47
50
 
48
- const AllFiltersModal = () => {
51
+ const AllFiltersModal = (props) => {
52
+ const { isDisabled } = props;
49
53
  const list = useList();
50
54
  const stringFormatter = useLocalizedStringFormatter(locales, "List");
51
55
  const isInitiallyLoading = list.loader.useIsInitiallyLoading();
@@ -76,6 +80,7 @@ const AllFiltersModal = () => {
76
80
  ),
77
81
  variant: "outline",
78
82
  color: "secondary",
83
+ isDisabled,
79
84
  children: [
80
85
  /* @__PURE__ */ jsx(TextView, { children: stringFormatter.format("filters.all") }),
81
86
  /* @__PURE__ */ jsx(IconFilter, {})
@@ -1 +1 @@
1
- {"version":3,"file":"AllFiltersModal.mjs","sources":["../../../../../../../../../../../src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport { IconFilter } from \"@/components/Icon/components/icons\";\nimport ButtonView from \"@/views/ButtonView\";\nimport { useList } from \"@/components/List\";\nimport styles from \"@/components/List/components/Header/Header.module.css\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport locales from \"../../../../locales/*.locale.json\";\nimport ContentView from \"@/views/ContentView\";\nimport SectionView from \"@/views/SectionView\";\nimport { FilterAccordion } from \"@/components/List/components/Header/components/AllFiltersModal/FilterAccordion\";\nimport { ViewModeAccordion } from \"@/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion\";\nimport TextView from \"@/views/TextView\";\nimport { SortingAccordion } from \"@/components/List/components/Header/components/AllFiltersModal/SortingAccordion\";\nimport ActionGroupView from \"@/views/ActionGroupView\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport HeadingView from \"@/views/HeadingView\";\nimport clsx from \"clsx\";\nimport Modal, { ModalTrigger } from \"@/components/Modal\";\nimport { SkeletonText } from \"@/components/SkeletonText\";\nimport { useAvailableViewModes } from \"../../lib\";\n\nexport const AllFiltersModal: FC = () => {\n const list = useList();\n const stringFormatter = useLocalizedStringFormatter(locales, \"List\");\n\n const isInitiallyLoading = list.loader.useIsInitiallyLoading();\n const totalItemCount =\n list.batches.getTotalItemsCount() ?? list.items.entries.length;\n\n const filterAccordions = list.filters.map((f) => (\n <FilterAccordion filter={f} key={f.name} />\n ));\n\n const availableViewModes = useAvailableViewModes();\n\n const accordions = [\n availableViewModes.length > 1 && <ViewModeAccordion key=\"viewMode\" />,\n list.sorting.length > 0 && <SortingAccordion key=\"sorting\" />,\n ...filterAccordions,\n ].filter(Boolean);\n\n const hasSecondaryFilters = list.filters.some(\n (f) => f.priority === \"secondary\",\n );\n\n const controller = useOverlayController(\"Modal\", {\n reuseControllerFromContext: false,\n });\n\n if (accordions.length === 0) {\n return null;\n }\n\n return (\n <ModalTrigger controller={controller}>\n <ButtonView\n className={clsx(\n styles.hideOnMobile,\n hasSecondaryFilters ? undefined : styles.hideOnDesktop,\n )}\n variant=\"outline\"\n color=\"secondary\"\n >\n <TextView>{stringFormatter.format(\"filters.all\")}</TextView>\n <IconFilter />\n </ButtonView>\n\n <ButtonView\n className={styles.hideOnDesktop}\n variant=\"outline\"\n color=\"secondary\"\n aria-label={stringFormatter.format(\"filters.all\")}\n >\n <IconFilter />\n </ButtonView>\n\n <Modal offCanvas controller={controller}>\n <HeadingView>{stringFormatter.format(\"filters.all\")}</HeadingView>\n <ContentView>\n <SectionView>{...accordions}</SectionView>\n </ContentView>\n\n <ActionGroupView>\n <ButtonView onPress={() => controller.close()}>\n <TextView>\n {isInitiallyLoading ? (\n <SkeletonText width=\"16ch\" />\n ) : (\n stringFormatter.format(\"results.show\", {\n totalItemCount,\n })\n )}\n </TextView>\n </ButtonView>\n <ButtonView\n color=\"secondary\"\n variant=\"soft\"\n onPress={() => {\n list.resetFilters();\n controller.close();\n }}\n >\n {stringFormatter.format(\"reset\")}\n </ButtonView>\n </ActionGroupView>\n </Modal>\n </ModalTrigger>\n );\n};\n"],"names":["styles"],"mappings":"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"}
1
+ {"version":3,"file":"AllFiltersModal.mjs","sources":["../../../../../../../../../../../src/components/List/components/Header/components/AllFiltersModal/AllFiltersModal.tsx"],"sourcesContent":["import type { FC } from \"react\";\nimport { IconFilter } from \"@/components/Icon/components/icons\";\nimport ButtonView from \"@/views/ButtonView\";\nimport { useList } from \"@/components/List\";\nimport styles from \"@/components/List/components/Header/Header.module.css\";\nimport { useLocalizedStringFormatter } from \"@/components/TranslationProvider/useLocalizedStringFormatter\";\nimport locales from \"../../../../locales/*.locale.json\";\nimport ContentView from \"@/views/ContentView\";\nimport SectionView from \"@/views/SectionView\";\nimport { FilterAccordion } from \"@/components/List/components/Header/components/AllFiltersModal/FilterAccordion\";\nimport { ViewModeAccordion } from \"@/components/List/components/Header/components/AllFiltersModal/ViewModeAccordion\";\nimport TextView from \"@/views/TextView\";\nimport { SortingAccordion } from \"@/components/List/components/Header/components/AllFiltersModal/SortingAccordion\";\nimport ActionGroupView from \"@/views/ActionGroupView\";\nimport { useOverlayController } from \"@/lib/controller\";\nimport HeadingView from \"@/views/HeadingView\";\nimport clsx from \"clsx\";\nimport Modal, { ModalTrigger } from \"@/components/Modal\";\nimport { SkeletonText } from \"@/components/SkeletonText\";\nimport { useAvailableViewModes } from \"../../lib\";\n\ninterface Props {\n isDisabled?: boolean;\n}\n\nexport const AllFiltersModal: FC<Props> = (props) => {\n const { isDisabled } = props;\n const list = useList();\n const stringFormatter = useLocalizedStringFormatter(locales, \"List\");\n\n const isInitiallyLoading = list.loader.useIsInitiallyLoading();\n const totalItemCount =\n list.batches.getTotalItemsCount() ?? list.items.entries.length;\n\n const filterAccordions = list.filters.map((f) => (\n <FilterAccordion filter={f} key={f.name} />\n ));\n\n const availableViewModes = useAvailableViewModes();\n\n const accordions = [\n availableViewModes.length > 1 && <ViewModeAccordion key=\"viewMode\" />,\n list.sorting.length > 0 && <SortingAccordion key=\"sorting\" />,\n ...filterAccordions,\n ].filter(Boolean);\n\n const hasSecondaryFilters = list.filters.some(\n (f) => f.priority === \"secondary\",\n );\n\n const controller = useOverlayController(\"Modal\", {\n reuseControllerFromContext: false,\n });\n\n if (accordions.length === 0) {\n return null;\n }\n\n return (\n <ModalTrigger controller={controller}>\n <ButtonView\n className={clsx(\n styles.hideOnMobile,\n hasSecondaryFilters ? undefined : styles.hideOnDesktop,\n )}\n variant=\"outline\"\n color=\"secondary\"\n isDisabled={isDisabled}\n >\n <TextView>{stringFormatter.format(\"filters.all\")}</TextView>\n <IconFilter />\n </ButtonView>\n\n <ButtonView\n className={styles.hideOnDesktop}\n variant=\"outline\"\n color=\"secondary\"\n aria-label={stringFormatter.format(\"filters.all\")}\n >\n <IconFilter />\n </ButtonView>\n\n <Modal offCanvas controller={controller}>\n <HeadingView>{stringFormatter.format(\"filters.all\")}</HeadingView>\n <ContentView>\n <SectionView>{...accordions}</SectionView>\n </ContentView>\n\n <ActionGroupView>\n <ButtonView onPress={() => controller.close()}>\n <TextView>\n {isInitiallyLoading ? (\n <SkeletonText width=\"16ch\" />\n ) : (\n stringFormatter.format(\"results.show\", {\n totalItemCount,\n })\n )}\n </TextView>\n </ButtonView>\n <ButtonView\n color=\"secondary\"\n variant=\"soft\"\n onPress={() => {\n list.resetFilters();\n controller.close();\n }}\n >\n {stringFormatter.format(\"reset\")}\n </ButtonView>\n </ActionGroupView>\n </Modal>\n </ModalTrigger>\n );\n};\n"],"names":["styles"],"mappings":"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"}
@@ -10,23 +10,27 @@ import RadioGroupView from '../../../../../../views/RadioGroupView.mjs';
10
10
  import RadioView from '../../../../../../views/RadioView.mjs';
11
11
  import 'invariant';
12
12
  import 'react-aria-components';
13
- import '../../../../../IllustratedMessage/IllustratedMessage.mjs';
14
- import '@mittwald/flow-icons';
15
- import '../../../../../Icon/components/IconSetProvider.mjs';
16
- import '../../../../../Icon/Icon.mjs';
17
- import '../../../../../../views/IconView.mjs';
18
- import '../../../../../Heading/Heading.mjs';
19
- import '../../../../../Text/Text.mjs';
20
- import locales from '../../../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
21
13
  import 'clsx';
22
14
  import '@mittwald/react-tunnel';
23
15
  import '../../../../../../views/ListItemViewContentView.mjs';
24
16
  import '../../../../../../lib/propsContext/propsContext.mjs';
25
17
  import '../../../../../../lib/propsContext/components/PropsContextProvider.mjs';
18
+ import locales from '../../../../../../../../../_virtual/_.locale.json@8d5024994f97657f895a4e2a188d2d8a.mjs';
19
+ import '@mittwald/flow-icons';
20
+ import '../../../../../Icon/components/IconSetProvider.mjs';
21
+ import '../../../../../Icon/Icon.mjs';
22
+ import '../../../../../../views/IconView.mjs';
26
23
  import '../../../../../../views/ButtonView.mjs';
27
24
  import '../../../../../../views/ContextMenuTriggerView.mjs';
28
25
  import '../../../../../ColumnLayout/ColumnLayout.mjs';
29
26
  import '../../../ListSummary/ListSummary.mjs';
27
+ import '../../../../../../views/DivView.mjs';
28
+ import '../../../../../../views/IllustratedMessageView.mjs';
29
+ import '../../../../../../views/TextView.mjs';
30
+ import '../../../../../TranslationProvider/TranslationProvider.mjs';
31
+ import '../../../../../IllustratedMessage/IllustratedMessage.mjs';
32
+ import '../../../../../Heading/Heading.mjs';
33
+ import '../../../../../Text/Text.mjs';
30
34
  import { useList } from '../../../../hooks/useList.mjs';
31
35
  import '../../../../listContext.mjs';
32
36
  import 'mobx';