@cobaltcore-dev/aurora 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/README.md +59 -13
  2. package/dist/client/{ContentHeader-xQVhO2yT.mjs → ContentHeader-kx1Th5Sq.mjs} +18 -18
  3. package/dist/client/{ContentHeader-xQVhO2yT.mjs.map → ContentHeader-kx1Th5Sq.mjs.map} +1 -1
  4. package/dist/client/{DeleteFlavorModal-CHTUZ3YV.mjs → DeleteFlavorModal-C3cb7YiJ.mjs} +155 -155
  5. package/dist/client/{DeleteFlavorModal-CHTUZ3YV.mjs.map → DeleteFlavorModal-C3cb7YiJ.mjs.map} +1 -1
  6. package/dist/client/{EditSecurityGroupModal-CWHHx2Xk.mjs → EditSecurityGroupModal-CpP54WIK.mjs} +18 -18
  7. package/dist/client/{EditSecurityGroupModal-CWHHx2Xk.mjs.map → EditSecurityGroupModal-CpP54WIK.mjs.map} +1 -1
  8. package/dist/client/{FiltersInput-UKJpNFdr.mjs → FiltersInput-DxcyR6Bp.mjs} +18 -18
  9. package/dist/client/{FiltersInput-UKJpNFdr.mjs.map → FiltersInput-DxcyR6Bp.mjs.map} +1 -1
  10. package/dist/client/{FloatingIpActionModals-caXn6bYo.mjs → FloatingIpActionModals-BP8RWHbu.mjs} +55 -55
  11. package/dist/client/{FloatingIpActionModals-caXn6bYo.mjs.map → FloatingIpActionModals-BP8RWHbu.mjs.map} +1 -1
  12. package/dist/client/{ImageToastNotifications-BWimIzu_.mjs → ImageToastNotifications-TZ3EfQg-.mjs} +323 -371
  13. package/dist/client/ImageToastNotifications-TZ3EfQg-.mjs.map +1 -0
  14. package/dist/client/{RouteError-CUj_m3gu.mjs → RouteError-QSV7qOoJ.mjs} +2 -2
  15. package/dist/client/{RouteError-CUj_m3gu.mjs.map → RouteError-QSV7qOoJ.mjs.map} +1 -1
  16. package/dist/client/{SortInput-GQlQBlAj.mjs → SortInput-CYv2_Pur.mjs} +5 -5
  17. package/dist/client/{SortInput-GQlQBlAj.mjs.map → SortInput-CYv2_Pur.mjs.map} +1 -1
  18. package/dist/client/_auth-DXJkv9QO.mjs.map +1 -1
  19. package/dist/client/{_flavorId-sUWG0xuy.mjs → _flavorId-C2x43-6S.mjs} +9 -9
  20. package/dist/client/{_flavorId-sUWG0xuy.mjs.map → _flavorId-C2x43-6S.mjs.map} +1 -1
  21. package/dist/client/{_flavorId-C5dc1N_j.mjs → _flavorId-CR8ZUI-P.mjs} +46 -46
  22. package/dist/client/{_flavorId-C5dc1N_j.mjs.map → _flavorId-CR8ZUI-P.mjs.map} +1 -1
  23. package/dist/client/{_floatingIpId-CT4y-60o.mjs → _floatingIpId-BCk41_Lb.mjs} +2 -2
  24. package/dist/client/{_floatingIpId-CT4y-60o.mjs.map → _floatingIpId-BCk41_Lb.mjs.map} +1 -1
  25. package/dist/client/{_floatingIpId-COK_TBrz2.mjs → _floatingIpId-BGrOAmPT.mjs} +33 -33
  26. package/dist/client/_floatingIpId-BGrOAmPT.mjs.map +1 -0
  27. package/dist/client/_imageId-CvfD832b.mjs +534 -0
  28. package/dist/client/{_imageId-n3RcnhAR.mjs.map → _imageId-CvfD832b.mjs.map} +1 -1
  29. package/dist/client/_pcaId-BxBt5DXi.mjs +459 -0
  30. package/dist/client/_pcaId-BxBt5DXi.mjs.map +1 -0
  31. package/dist/client/{_pcaId-ChnM_t-9.mjs → _pcaId-DOHycvCf.mjs} +2 -2
  32. package/dist/client/{_pcaId-ChnM_t-9.mjs.map → _pcaId-DOHycvCf.mjs.map} +1 -1
  33. package/dist/client/{_projectId-26bw-_rm.mjs → _projectId-BDSWnMGj.mjs} +3 -3
  34. package/dist/client/{_projectId-26bw-_rm.mjs.map → _projectId-BDSWnMGj.mjs.map} +1 -1
  35. package/dist/client/{_projectId-Dhb4AyBD.mjs → _projectId-DOgwFiqD.mjs} +2 -2
  36. package/dist/client/{_projectId-Dhb4AyBD.mjs.map → _projectId-DOgwFiqD.mjs.map} +1 -1
  37. package/dist/client/_projectId-DS4nR59B.mjs +299 -0
  38. package/dist/client/_projectId-DS4nR59B.mjs.map +1 -0
  39. package/dist/client/{_projectId-BK9UqeYw.mjs → _projectId-MxcHrXW4.mjs} +12 -12
  40. package/dist/client/_projectId-MxcHrXW4.mjs.map +1 -0
  41. package/dist/client/{_securityGroupId-CR1mKICQ.mjs → _securityGroupId-CJJanWiY.mjs} +2 -2
  42. package/dist/client/{_securityGroupId-CR1mKICQ.mjs.map → _securityGroupId-CJJanWiY.mjs.map} +1 -1
  43. package/dist/client/{_securityGroupId-DroYG6cA.mjs → _securityGroupId-KKw4RPdH.mjs} +328 -328
  44. package/dist/client/{_securityGroupId-DroYG6cA.mjs.map → _securityGroupId-KKw4RPdH.mjs.map} +1 -1
  45. package/dist/client/{containers-DGY2hoWw.mjs → _storageType-4wSxI__0.mjs} +18 -15
  46. package/dist/client/_storageType-4wSxI__0.mjs.map +1 -0
  47. package/dist/client/{containers-ZMFTRaQL.mjs → _storageType-DYjo-6ej.mjs} +1054 -1088
  48. package/dist/client/_storageType-DYjo-6ej.mjs.map +1 -0
  49. package/dist/client/{containers-xfsYgRyf.mjs → _storageType-zeSZe--V.mjs} +2 -2
  50. package/dist/client/_storageType-zeSZe--V.mjs.map +1 -0
  51. package/dist/client/{about-969pIiZ9.mjs → about-Bo9vxGHy.mjs} +8 -8
  52. package/dist/client/{about-969pIiZ9.mjs.map → about-Bo9vxGHy.mjs.map} +1 -1
  53. package/dist/client/{build-DracvfrJ.mjs → build-DeJcDjPi.mjs} +3798 -3372
  54. package/dist/client/build-DeJcDjPi.mjs.map +1 -0
  55. package/dist/client/constants-BmcGYeR-.mjs +153 -0
  56. package/dist/client/constants-BmcGYeR-.mjs.map +1 -0
  57. package/dist/client/{flavors-C4GtoybP.mjs → flavors-BxFVqgnb.mjs} +2 -2
  58. package/dist/client/{flavors-C4GtoybP.mjs.map → flavors-BxFVqgnb.mjs.map} +1 -1
  59. package/dist/client/{flavors-CpirO_nr.mjs → flavors-CfdgjsZY.mjs} +192 -192
  60. package/dist/client/{flavors-CpirO_nr.mjs.map → flavors-CfdgjsZY.mjs.map} +1 -1
  61. package/dist/client/{floatingips-BUf_oLRl.mjs → floatingips-ByRb82wS.mjs} +123 -123
  62. package/dist/client/{floatingips-BUf_oLRl.mjs.map → floatingips-ByRb82wS.mjs.map} +1 -1
  63. package/dist/client/{images-Da1t5KPh.mjs → images-CKqIXUq52.mjs} +613 -613
  64. package/dist/client/images-CKqIXUq52.mjs.map +1 -0
  65. package/dist/client/{images-CsonlmFx.mjs → images-C_dX7nY6.mjs} +2 -2
  66. package/dist/client/{images-CsonlmFx.mjs.map → images-C_dX7nY6.mjs.map} +1 -1
  67. package/dist/client/{images-QnWf63uj.mjs → images-CenluYV8.mjs} +2 -2
  68. package/dist/client/{images-QnWf63uj.mjs.map → images-CenluYV8.mjs.map} +1 -1
  69. package/dist/client/index.js +391 -431
  70. package/dist/client/index.js.map +1 -1
  71. package/dist/client/{md-sBiSNVSQ.mjs → md-CYTrL5dq.mjs} +52 -16
  72. package/dist/client/{md-sBiSNVSQ.mjs.map → md-CYTrL5dq.mjs.map} +1 -1
  73. package/dist/client/{objects-H0NN_Sja.mjs → objects-BJM6YeuF.mjs} +2131 -1883
  74. package/dist/client/objects-BJM6YeuF.mjs.map +1 -0
  75. package/dist/client/{objects-B89dYCBq.mjs → objects-gxSjvbvF.mjs} +36 -21
  76. package/dist/client/objects-gxSjvbvF.mjs.map +1 -0
  77. package/dist/client/{objects-CuFLUOe1.mjs → objects-o2Cj_ndZ.mjs} +2 -2
  78. package/dist/client/objects-o2Cj_ndZ.mjs.map +1 -0
  79. package/dist/client/{pca-CtU6REww.mjs → pca-Bl8NmoVZ.mjs} +2 -2
  80. package/dist/client/{pca-CtU6REww.mjs.map → pca-Bl8NmoVZ.mjs.map} +1 -1
  81. package/dist/client/pca-RSiWpJs9.mjs +182 -0
  82. package/dist/client/pca-RSiWpJs9.mjs.map +1 -0
  83. package/dist/client/{projects-DNXsDnJM.mjs → projects-CgclWI16.mjs} +33 -27
  84. package/dist/client/{projects-DNXsDnJM.mjs.map → projects-CgclWI16.mjs.map} +1 -1
  85. package/dist/client/{projects-dhnQkuvV.mjs → projects-D2iewAzu.mjs} +2 -2
  86. package/dist/client/{projects-dhnQkuvV.mjs.map → projects-D2iewAzu.mjs.map} +1 -1
  87. package/dist/client/{projects-C-sjd9T5.mjs → projects-pe2_dCnV.mjs} +2 -2
  88. package/dist/client/{projects-C-sjd9T5.mjs.map → projects-pe2_dCnV.mjs.map} +1 -1
  89. package/dist/client/projects-yiK0HGSA.mjs.map +1 -1
  90. package/dist/client/{securitygroups-wHdrxZXd.mjs → securitygroups-DahZkVYQ.mjs} +111 -111
  91. package/dist/client/{securitygroups-wHdrxZXd.mjs.map → securitygroups-DahZkVYQ.mjs.map} +1 -1
  92. package/dist/client/{useListWithFiltering-DrgUwXef.mjs → useListWithFiltering-DaYcu5AB.mjs} +12 -12
  93. package/dist/client/{useListWithFiltering-DrgUwXef.mjs.map → useListWithFiltering-DaYcu5AB.mjs.map} +1 -1
  94. package/dist/server/index.d.ts +571 -2
  95. package/dist/server/index.js +29 -211
  96. package/package.json +4 -5
  97. package/dist/client/ImageToastNotifications-BWimIzu_.mjs.map +0 -1
  98. package/dist/client/_floatingIpId-COK_TBrz2.mjs.map +0 -1
  99. package/dist/client/_imageId-n3RcnhAR.mjs +0 -534
  100. package/dist/client/_pcaId-B-f_6kqs.mjs +0 -466
  101. package/dist/client/_pcaId-B-f_6kqs.mjs.map +0 -1
  102. package/dist/client/_projectId-BK9UqeYw.mjs.map +0 -1
  103. package/dist/client/_projectId-CCtpAQ8m.mjs +0 -299
  104. package/dist/client/_projectId-CCtpAQ8m.mjs.map +0 -1
  105. package/dist/client/build-DracvfrJ.mjs.map +0 -1
  106. package/dist/client/constants-4lVQXort.mjs +0 -128
  107. package/dist/client/constants-4lVQXort.mjs.map +0 -1
  108. package/dist/client/containers-DGY2hoWw.mjs.map +0 -1
  109. package/dist/client/containers-ZMFTRaQL.mjs.map +0 -1
  110. package/dist/client/containers-xfsYgRyf.mjs.map +0 -1
  111. package/dist/client/images-Da1t5KPh.mjs.map +0 -1
  112. package/dist/client/objects-B89dYCBq.mjs.map +0 -1
  113. package/dist/client/objects-CuFLUOe1.mjs.map +0 -1
  114. package/dist/client/objects-H0NN_Sja.mjs.map +0 -1
  115. package/dist/client/pca-C-UFjicP.mjs +0 -167
  116. package/dist/client/pca-C-UFjicP.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- //#region src/client/routes/_auth/projects/$projectId/storage/$provider/containers/index.tsx?tsr-split=notFoundComponent
2
+ //#region src/client/routes/_auth/projects/$projectId/storage/$provider/$storageType/index.tsx?tsr-split=notFoundComponent
3
3
  var t = () => /*#__PURE__*/ e("p", { children: "Storage service not found" });
4
4
  //#endregion
5
5
  export { t as notFoundComponent };
6
6
 
7
- //# sourceMappingURL=containers-xfsYgRyf.mjs.map
7
+ //# sourceMappingURL=_storageType-zeSZe--V.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_storageType-zeSZe--V.mjs","names":["SplitNotFoundComponent","notFoundComponent"],"sources":["../../src/client/routes/_auth/projects/$projectId/storage/$provider/$storageType/index.tsx?tsr-split=notFoundComponent"],"sourcesContent":["import { createFileRoute, redirect, useParams } from \"@tanstack/react-router\"\nimport { z } from \"zod\"\nimport { getServiceIndex } from \"@/server/Authentication/helpers\"\nimport { ErrorBoundary } from \"react-error-boundary\"\nimport { SwiftContainers } from \"../../-components/Swift/Containers\"\nimport { CephBuckets } from \"../../-components/Ceph/Buckets\"\nimport { Trans, useLingui } from \"@lingui/react/macro\"\nimport type { RouteInfo } from \"@/client/routes/routeInfo\"\nimport { ContentHeader } from \"@/client/components/ContentHeader/ContentHeader\"\n\n/**\n * Validates that the requested storage provider is available for the given project,\n * and redirects to an appropriate fallback route when it is not.\n *\n * Redirect rules (in priority order):\n * 1. No `object-store` service at all → redirect to the project overview.\n * 2. Unknown provider (neither \"swift\" nor \"ceph\") → redirect to the first\n * available provider, or to the project overview if none exist.\n * 3. Requested provider unavailable → redirect to the other provider,\n * or to the project overview if no alternative exists.\n *\n * Ceph has a temporary fallback flag (`cephFallbackEnabled`) that treats it as\n * available even when absent from the OpenStack service catalog.\n *\n * @throws {redirect} - Always throws a TanStack Router redirect; never returns normally\n * when the requested provider/project combination is unavailable.\n */\nexport const checkServiceAvailability = (\n availableServices: {\n type: string\n name: string\n }[],\n params: {\n projectId: string\n provider: string\n }\n) => {\n const { provider, projectId } = params\n\n const serviceIndex = getServiceIndex(availableServices)\n\n // Redirect to the \"Projects Overview\" page if no storage services available\n if (!serviceIndex[\"object-store\"]) {\n throw redirect({\n to: \"/projects/$projectId\",\n params: { projectId },\n })\n }\n\n // Check provider availability\n const hasSwift = Boolean(serviceIndex[\"object-store\"][\"swift\"])\n const hasCeph = Boolean(serviceIndex[\"object-store\"][\"ceph\"])\n\n // TEMPORARY: Allow Ceph access even if not in catalog (relies on env config)\n // TODO: Properly register Ceph in OpenStack service catalog\n const cephFallbackEnabled = true // Set to false once Ceph is in catalog\n\n // Effective availability includes fallback flag for Ceph\n const hasEffectiveCeph = hasCeph || cephFallbackEnabled\n const fallbackProvider = hasSwift ? \"swift\" : hasEffectiveCeph ? \"ceph\" : null\n const fallbackStorageType = hasSwift ? \"containers\" : hasEffectiveCeph ? \"buckets\" : null\n\n if (provider !== \"swift\" && provider !== \"ceph\") {\n if (!fallbackProvider || !fallbackStorageType) {\n throw redirect({\n to: \"/projects/$projectId\",\n params: { projectId },\n })\n }\n throw redirect({\n to: \"/projects/$projectId/storage/$provider/$storageType\",\n params: { ...params, provider: fallbackProvider, storageType: fallbackStorageType },\n })\n }\n\n if (provider === \"swift\" && !hasSwift) {\n if (!hasEffectiveCeph) {\n throw redirect({\n to: \"/projects/$projectId\",\n params: { projectId },\n })\n }\n\n throw redirect({\n to: \"/projects/$projectId/storage/$provider/$storageType\",\n params: { ...params, provider: \"ceph\", storageType: \"buckets\" },\n })\n }\n\n if (provider === \"ceph\" && !hasEffectiveCeph) {\n if (!hasSwift) {\n throw redirect({\n to: \"/projects/$projectId\",\n params: { projectId },\n })\n }\n\n throw redirect({\n to: \"/projects/$projectId/storage/$provider/$storageType\",\n params: { ...params, provider: \"swift\", storageType: \"containers\" },\n })\n }\n}\n\n// Search params schema\n// - sortBy: active sort column — persisted for deep links and back navigation\n// - sortDirection: \"asc\" | \"desc\" — persisted alongside sortBy\n// - search: active filter string — persisted so deep links preserve the current search\nconst containersSearchSchema = z.object({\n sortBy: z.enum([\"name\", \"count\", \"bytes\", \"last_modified\"]).optional(),\n sortDirection: z.enum([\"asc\", \"desc\"]).optional(),\n search: z.string().optional(),\n})\n\nexport const Route = createFileRoute(\"/_auth/projects/$projectId/storage/$provider/$storageType/\")({\n staticData: {\n section: \"storage\",\n service: \"containers\",\n sectionCrumb: { labelKey: \"Storage\" },\n crumb: { useParamAsLabel: \"provider\" },\n } satisfies RouteInfo,\n validateSearch: containersSearchSchema,\n head: ({ match }) => ({\n meta: [\n {\n title:\n match.params.provider === \"swift\"\n ? \"Object Storage (Swift)\"\n : match.params.provider === \"ceph\"\n ? \"Object Storage (Ceph)\"\n : \"Storage Overview\",\n },\n ],\n }),\n component: () => {\n return <StorageDashboard />\n },\n notFoundComponent: () => {\n return <p>Storage service not found</p>\n },\n loader: async ({ context }) => {\n const { trpcClient } = context\n const availableServices = await trpcClient?.auth.getAvailableServices.query()\n\n return {\n client: trpcClient,\n availableServices,\n }\n },\n beforeLoad: async ({ context, params }) => {\n const { trpcClient } = context\n const availableServices = await trpcClient?.auth.getAvailableServices.query()\n checkServiceAvailability(availableServices!, params)\n },\n})\n\nfunction StorageDashboard() {\n const { project, provider } = useParams({\n from: \"/_auth/projects/$projectId/storage/$provider/$storageType/\",\n select: (params) => {\n return { project: params.projectId, provider: params.provider, storageType: params.storageType }\n },\n })\n\n const { t } = useLingui()\n\n let pageTitle: string\n switch (provider) {\n case \"swift\":\n pageTitle = t`Object Storage (Swift)`\n break\n case \"ceph\":\n pageTitle = t`Object Storage (Ceph)`\n break\n default:\n pageTitle = t`Storage Overview`\n }\n\n return (\n <div>\n <ContentHeader title={pageTitle} projectId={project} />\n {project ? (\n <ErrorBoundary\n resetKeys={[project, provider]}\n fallback={\n <div className=\"p-4 text-center\">\n <Trans>Error loading component</Trans>\n </div>\n }\n >\n {(() => {\n switch (provider) {\n case \"swift\":\n return <SwiftContainers />\n case \"ceph\":\n return <CephBuckets />\n default:\n return <div>Storage Overview Page</div> // replace when available\n }\n })()}\n </ErrorBoundary>\n ) : (\n <div className=\"p-4 text-center\">\n <Trans>No project selected</Trans>\n </div>\n )}\n </div>\n )\n}\n"],"mappings":";;AA2GA,IAAAA,UA+BW,gBAAC,KAAA,EAAA,UAAE,4BAAA,CAAA"}
@@ -1,14 +1,14 @@
1
- import { j as e, z as t } from "./build-DracvfrJ.mjs";
1
+ import { Y as e, q as t } from "./build-DeJcDjPi.mjs";
2
2
  import { jsx as n, jsxs as r } from "react/jsx-runtime";
3
3
  import { Trans as i } from "@lingui/react";
4
4
  //#region src/client/routes/about.tsx?tsr-split=component
5
5
  function a() {
6
- return /*#__PURE__*/ n(t, {
6
+ return /*#__PURE__*/ n(e, {
7
7
  className: "flex flex-col items-center justify-center px-6 py-12 sm:px-12 md:px-20",
8
8
  children: /*#__PURE__*/ r("div", {
9
9
  className: "mx-auto w-full lg:w-2/3",
10
10
  children: [
11
- /*#__PURE__*/ n(e, {
11
+ /*#__PURE__*/ n(t, {
12
12
  className: "mb-6 text-center",
13
13
  children: /*#__PURE__*/ n(i, { id: "t95VRV" })
14
14
  }),
@@ -19,7 +19,7 @@ function a() {
19
19
  components: { 0: /*#__PURE__*/ n("strong", {}) }
20
20
  })
21
21
  }),
22
- /*#__PURE__*/ n(e, {
22
+ /*#__PURE__*/ n(t, {
23
23
  className: "mb-4 text-center",
24
24
  children: /*#__PURE__*/ n(i, { id: "4pOfUd" })
25
25
  }),
@@ -27,7 +27,7 @@ function a() {
27
27
  className: "mb-8 text-center",
28
28
  children: /*#__PURE__*/ n(i, { id: "HAkrpK" })
29
29
  }),
30
- /*#__PURE__*/ n(e, {
30
+ /*#__PURE__*/ n(t, {
31
31
  className: "mb-4 text-center",
32
32
  children: /*#__PURE__*/ n(i, { id: "wzqqS+" })
33
33
  }),
@@ -52,7 +52,7 @@ function a() {
52
52
  }) }) })
53
53
  ]
54
54
  }),
55
- /*#__PURE__*/ n(e, {
55
+ /*#__PURE__*/ n(t, {
56
56
  className: "mb-4 text-center",
57
57
  children: /*#__PURE__*/ n(i, { id: "D7qT9F" })
58
58
  }),
@@ -70,7 +70,7 @@ function a() {
70
70
  components: { 0: /*#__PURE__*/ n("strong", {}) }
71
71
  }) }) })]
72
72
  }),
73
- /*#__PURE__*/ n(e, {
73
+ /*#__PURE__*/ n(t, {
74
74
  className: "mb-4 text-center",
75
75
  children: /*#__PURE__*/ n(i, { id: "JB0bhm" })
76
76
  }),
@@ -89,4 +89,4 @@ function a() {
89
89
  //#endregion
90
90
  export { a as component };
91
91
 
92
- //# sourceMappingURL=about-969pIiZ9.mjs.map
92
+ //# sourceMappingURL=about-Bo9vxGHy.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"about-969pIiZ9.mjs","names":["Trans","Container","ContentHeading","About","component"],"sources":["../../src/client/routes/about.tsx?tsr-split=component"],"sourcesContent":["import { createFileRoute } from \"@tanstack/react-router\"\nimport { Trans } from \"@lingui/react/macro\"\nimport { Container, ContentHeading } from \"@cloudoperators/juno-ui-components/index\"\n\nexport const Route = createFileRoute(\"/about\")({\n component: About,\n})\n\nfunction About() {\n return (\n <Container className=\"flex flex-col items-center justify-center px-6 py-12 sm:px-12 md:px-20\">\n <div className=\"mx-auto w-full lg:w-2/3\">\n <ContentHeading className=\"mb-6 text-center\">\n <Trans>About Aurora Dashboard</Trans>\n </ContentHeading>\n <p className=\"mb-8 text-center\">\n <Trans>\n Welcome to <strong>Aurora Dashboard</strong>, your next-generation cloud management solution. We are\n dedicated to simplifying how you interact with and manage your cloud infrastructure. Designed with\n efficiency, scalability, and usability at its core, Aurora empowers you to streamline operations and unlock\n the full potential of your cloud resources.\n </Trans>\n </p>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Our Mission</Trans>\n </ContentHeading>\n <p className=\"mb-8 text-center\">\n <Trans>\n At Aurora, our mission is to provide a centralized platform that unifies cloud management. We aim to\n simplify the complexities of provisioning, configuring, and scaling resources across diverse cloud\n environments while enabling seamless growth for your business.\n </Trans>\n </p>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Key Features</Trans>\n </ContentHeading>\n <ul className=\"mb-8 list-disc space-y-4 pl-6\">\n <li>\n <p>\n <Trans>\n <strong>Unified Cloud Management:</strong> Consolidates all your cloud assets into one intuitive\n interface.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Effortless Resource Provisioning:</strong> Quickly provision, configure, and deploy resources\n like servers, networks, and volumes with just a few clicks.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Optimized Scalability:</strong> Built for businesses of all sizes, Aurora grows with you,\n supporting simple environments and intricate multi-cloud setups alike.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Enhanced Productivity:</strong> By reducing operational complexity, Aurora helps your team focus\n on what truly matters—innovating and driving business success.\n </Trans>\n </p>\n </li>\n </ul>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Why Choose Aurora?</Trans>\n </ContentHeading>\n <p className=\"mb-8 text-center\">\n <Trans>\n Aurora Dashboard is more than just a tool—it's your partner in navigating the cloud. Whether you're a small\n startup or a global enterprise, Aurora provides the flexibility, power, and simplicity you need to achieve\n your goals.\n </Trans>\n </p>\n <ul className=\"mb-8 list-disc space-y-4 pl-6\">\n <li>\n <p>\n <Trans>\n <strong>Secure & Reliable:</strong> Your data and operations are safeguarded with enterprise-grade\n security and robust reliability.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Future-Ready:</strong> Aurora is designed to evolve with the latest trends in cloud technology,\n ensuring your solution is always cutting-edge.\n </Trans>\n </p>\n </li>\n </ul>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Get Involved</Trans>\n </ContentHeading>\n <p className=\"mb-6 text-center\">\n <Trans>\n We are building Aurora Dashboard to serve you better. Your feedback is invaluable in shaping a tool that\n meets the unique needs of businesses like yours. Stay connected and join us as we redefine cloud management.\n </Trans>\n </p>\n <p className=\"text-center\">\n <Trans>Together, we can unlock the true potential of your cloud infrastructure.</Trans>\n </p>\n </div>\n </Container>\n )\n}\n"],"mappings":";;;;AAQA,SAASG,IAAAA;CACP,OACE,gBAAC,GAAA;EAAU,WAAU;YACnB,gBAAC,OAAA;GAAI,WAAU;;IACb,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA;;uCACc,UAAA,CAAA,CAAA,EAAA;;;IAMhB,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAMF,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,MAAA;KAAG,WAAU;;MACZ,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;MAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;MAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;MAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;;;IAMT,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAMF,gBAAC,MAAA;KAAG,WAAU;gBACZ,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;uCACG,UAAA,CAAA,CAAA,EAAA;eAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;uCACG,UAAA,CAAA,CAAA,EAAA;;;IAMT,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAKF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;;;;AAKV"}
1
+ {"version":3,"file":"about-Bo9vxGHy.mjs","names":["Trans","Container","ContentHeading","About","component"],"sources":["../../src/client/routes/about.tsx?tsr-split=component"],"sourcesContent":["import { createFileRoute } from \"@tanstack/react-router\"\nimport { Trans } from \"@lingui/react/macro\"\nimport { Container, ContentHeading } from \"@cloudoperators/juno-ui-components/index\"\n\nexport const Route = createFileRoute(\"/about\")({\n component: About,\n})\n\nfunction About() {\n return (\n <Container className=\"flex flex-col items-center justify-center px-6 py-12 sm:px-12 md:px-20\">\n <div className=\"mx-auto w-full lg:w-2/3\">\n <ContentHeading className=\"mb-6 text-center\">\n <Trans>About Aurora Dashboard</Trans>\n </ContentHeading>\n <p className=\"mb-8 text-center\">\n <Trans>\n Welcome to <strong>Aurora Dashboard</strong>, your next-generation cloud management solution. We are\n dedicated to simplifying how you interact with and manage your cloud infrastructure. Designed with\n efficiency, scalability, and usability at its core, Aurora empowers you to streamline operations and unlock\n the full potential of your cloud resources.\n </Trans>\n </p>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Our Mission</Trans>\n </ContentHeading>\n <p className=\"mb-8 text-center\">\n <Trans>\n At Aurora, our mission is to provide a centralized platform that unifies cloud management. We aim to\n simplify the complexities of provisioning, configuring, and scaling resources across diverse cloud\n environments while enabling seamless growth for your business.\n </Trans>\n </p>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Key Features</Trans>\n </ContentHeading>\n <ul className=\"mb-8 list-disc space-y-4 pl-6\">\n <li>\n <p>\n <Trans>\n <strong>Unified Cloud Management:</strong> Consolidates all your cloud assets into one intuitive\n interface.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Effortless Resource Provisioning:</strong> Quickly provision, configure, and deploy resources\n like servers, networks, and volumes with just a few clicks.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Optimized Scalability:</strong> Built for businesses of all sizes, Aurora grows with you,\n supporting simple environments and intricate multi-cloud setups alike.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Enhanced Productivity:</strong> By reducing operational complexity, Aurora helps your team focus\n on what truly matters—innovating and driving business success.\n </Trans>\n </p>\n </li>\n </ul>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Why Choose Aurora?</Trans>\n </ContentHeading>\n <p className=\"mb-8 text-center\">\n <Trans>\n Aurora Dashboard is more than just a tool—it's your partner in navigating the cloud. Whether you're a small\n startup or a global enterprise, Aurora provides the flexibility, power, and simplicity you need to achieve\n your goals.\n </Trans>\n </p>\n <ul className=\"mb-8 list-disc space-y-4 pl-6\">\n <li>\n <p>\n <Trans>\n <strong>Secure & Reliable:</strong> Your data and operations are safeguarded with enterprise-grade\n security and robust reliability.\n </Trans>\n </p>\n </li>\n <li>\n <p>\n <Trans>\n <strong>Future-Ready:</strong> Aurora is designed to evolve with the latest trends in cloud technology,\n ensuring your solution is always cutting-edge.\n </Trans>\n </p>\n </li>\n </ul>\n <ContentHeading className=\"mb-4 text-center\">\n <Trans>Get Involved</Trans>\n </ContentHeading>\n <p className=\"mb-6 text-center\">\n <Trans>\n We are building Aurora Dashboard to serve you better. Your feedback is invaluable in shaping a tool that\n meets the unique needs of businesses like yours. Stay connected and join us as we redefine cloud management.\n </Trans>\n </p>\n <p className=\"text-center\">\n <Trans>Together, we can unlock the true potential of your cloud infrastructure.</Trans>\n </p>\n </div>\n </Container>\n )\n}\n"],"mappings":";;;;AAQA,SAASG,IAAAA;CACP,OACE,gBAAC,GAAA;EAAU,WAAU;YACnB,gBAAC,OAAA;GAAI,WAAU;;IACb,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA;;uCACc,UAAA,CAAA,CAAA,EAAA;;;IAMhB,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAMF,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,MAAA;KAAG,WAAU;;MACZ,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;MAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;MAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;MAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;wCACG,UAAA,CAAA,CAAA,EAAA;;;;IAMT,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAMF,gBAAC,MAAA;KAAG,WAAU;gBACZ,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;uCACG,UAAA,CAAA,CAAA,EAAA;eAKP,gBAAC,MAAA,EAAA,UACC,gBAAC,KAAA,EAAA,UACC,gBAAA,GAAA;;uCACG,UAAA,CAAA,CAAA,EAAA;;;IAMT,gBAAC,GAAA;KAAe,WAAU;eACxB,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAEF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;IAKF,gBAAC,KAAA;KAAE,WAAU;eACX,gBAAA,GAAA,EAAA,IAAA,SAAA,CAAA;;;;;AAKV"}