@revenexx/studio-shared 0.2.0 → 0.3.1

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 (86) hide show
  1. package/dist/module.d.mts +7 -0
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +37 -1
  4. package/dist/runtime/components/DataTable/ColumnsMenu.d.vue.ts +2 -0
  5. package/dist/runtime/components/DataTable/ColumnsMenu.vue +93 -36
  6. package/dist/runtime/components/DataTable/ColumnsMenu.vue.d.ts +2 -0
  7. package/dist/runtime/components/DataTable/DataTable.d.vue.ts +53 -4
  8. package/dist/runtime/components/DataTable/DataTable.vue +274 -118
  9. package/dist/runtime/components/DataTable/DataTable.vue.d.ts +53 -4
  10. package/dist/runtime/components/DataTable/FilterMenu.d.vue.ts +14 -3
  11. package/dist/runtime/components/DataTable/FilterMenu.vue +35 -29
  12. package/dist/runtime/components/DataTable/FilterMenu.vue.d.ts +14 -3
  13. package/dist/runtime/components/DataTable/SavedViewsMenu.d.vue.ts +6 -0
  14. package/dist/runtime/components/DataTable/SavedViewsMenu.vue +189 -0
  15. package/dist/runtime/components/DataTable/SavedViewsMenu.vue.d.ts +6 -0
  16. package/dist/runtime/components/DataTable/SortMenu.d.vue.ts +13 -0
  17. package/dist/runtime/components/DataTable/SortMenu.vue +47 -0
  18. package/dist/runtime/components/DataTable/SortMenu.vue.d.ts +13 -0
  19. package/dist/runtime/components/DataTable/ViewModeSwitch.d.vue.ts +20 -0
  20. package/dist/runtime/components/DataTable/ViewModeSwitch.vue +26 -0
  21. package/dist/runtime/components/DataTable/ViewModeSwitch.vue.d.ts +20 -0
  22. package/dist/runtime/components/DataTable/types.d.ts +49 -2
  23. package/dist/runtime/components/Media/MediaFolderTree.d.vue.ts +17 -0
  24. package/dist/runtime/components/Media/MediaFolderTree.vue +65 -0
  25. package/dist/runtime/components/Media/MediaFolderTree.vue.d.ts +17 -0
  26. package/dist/runtime/components/Media/MediaPickerDialog.d.vue.ts +18 -0
  27. package/dist/runtime/components/Media/MediaPickerDialog.vue +163 -0
  28. package/dist/runtime/components/Media/MediaPickerDialog.vue.d.ts +18 -0
  29. package/dist/runtime/components/Media/MediaUploader.d.vue.ts +29 -0
  30. package/dist/runtime/components/Media/MediaUploader.vue +161 -0
  31. package/dist/runtime/components/Media/MediaUploader.vue.d.ts +29 -0
  32. package/dist/runtime/components/Shared/BuildLogsFlyout.vue +14 -13
  33. package/dist/runtime/components/Shared/FloatingPanel.d.vue.ts +55 -0
  34. package/dist/runtime/components/Shared/FloatingPanel.vue +118 -0
  35. package/dist/runtime/components/Shared/FloatingPanel.vue.d.ts +55 -0
  36. package/dist/runtime/components/Shared/GitDeploymentSettings.vue +11 -10
  37. package/dist/runtime/components/Shared/ListSurface.d.vue.ts +38 -0
  38. package/dist/runtime/components/Shared/ListSurface.vue +27 -0
  39. package/dist/runtime/components/Shared/ListSurface.vue.d.ts +38 -0
  40. package/dist/runtime/components/Shared/RecordLayout.d.vue.ts +52 -0
  41. package/dist/runtime/components/Shared/RecordLayout.vue +63 -0
  42. package/dist/runtime/components/Shared/RecordLayout.vue.d.ts +52 -0
  43. package/dist/runtime/components/Shared/RecordRailCard.d.vue.ts +26 -0
  44. package/dist/runtime/components/Shared/RecordRailCard.vue +20 -0
  45. package/dist/runtime/components/Shared/RecordRailCard.vue.d.ts +26 -0
  46. package/dist/runtime/components/Shared/SidebarNav.d.vue.ts +5 -0
  47. package/dist/runtime/components/Shared/SidebarNav.vue +6 -26
  48. package/dist/runtime/components/Shared/SidebarNav.vue.d.ts +5 -0
  49. package/dist/runtime/components/Shared/SidebarNavLink.d.vue.ts +15 -0
  50. package/dist/runtime/components/Shared/SidebarNavLink.vue +49 -0
  51. package/dist/runtime/components/Shared/SidebarNavLink.vue.d.ts +15 -0
  52. package/dist/runtime/components/Shared/Wizard.vue +6 -3
  53. package/dist/runtime/composables/useFloatingPanel.d.ts +69 -0
  54. package/dist/runtime/composables/useFloatingPanel.js +112 -0
  55. package/dist/runtime/composables/useListRail.d.ts +9 -0
  56. package/dist/runtime/composables/useListRail.js +19 -0
  57. package/dist/runtime/composables/useMediaLibrary.d.ts +41 -0
  58. package/dist/runtime/composables/useMediaLibrary.js +36 -0
  59. package/dist/runtime/composables/usePlatformAuth.d.ts +18 -0
  60. package/dist/runtime/composables/usePlatformTalkback.d.ts +29 -0
  61. package/dist/runtime/composables/usePlatformTalkback.js +54 -0
  62. package/dist/runtime/composables/useT.d.ts +11 -0
  63. package/dist/runtime/composables/useT.js +8 -0
  64. package/dist/runtime/composables/useTalkbackChannels.d.ts +93 -0
  65. package/dist/runtime/composables/useTalkbackChannels.js +56 -0
  66. package/dist/runtime/lib/columnOrder.d.ts +45 -0
  67. package/dist/runtime/lib/columnOrder.js +28 -0
  68. package/dist/runtime/lib/columnVisibility.d.ts +41 -0
  69. package/dist/runtime/lib/columnVisibility.js +12 -0
  70. package/dist/runtime/lib/dataTableFilters.d.ts +83 -0
  71. package/dist/runtime/lib/dataTableFilters.js +23 -0
  72. package/dist/runtime/lib/formatBridge.d.ts +50 -0
  73. package/dist/runtime/lib/formatBridge.js +54 -0
  74. package/dist/runtime/lib/i18nBridge.d.ts +36 -0
  75. package/dist/runtime/lib/i18nBridge.js +17 -0
  76. package/dist/runtime/lib/isoLists.d.ts +61 -0
  77. package/dist/runtime/lib/isoLists.js +62 -0
  78. package/dist/runtime/lib/sidebarNav.d.ts +34 -0
  79. package/dist/runtime/lib/sidebarNav.js +22 -0
  80. package/dist/runtime/lib/talkback.d.ts +59 -0
  81. package/dist/runtime/lib/talkback.js +49 -0
  82. package/dist/runtime/types/nav.d.ts +15 -1
  83. package/dist/runtime/types/storage.d.ts +67 -0
  84. package/dist/runtime/types/storage.js +0 -0
  85. package/dist/types.d.mts +14 -0
  86. package/package.json +19 -3
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Media storage service (revenexx/storage) `/v1` API shapes — the subset the
3
+ * shared media components (uploader, folder tree, picker dialog) render.
4
+ *
5
+ * Mirrors the cockpit's `app/types/storage.ts` field-for-field so the two are
6
+ * structurally identical: the cockpit passes its own `StorageAsset` straight
7
+ * into these components and back out of their emits. The module can't import
8
+ * the cockpit's copy (host-only path), so the contract lives here.
9
+ */
10
+ export type AssetKind = 'image' | 'video' | 'audio' | 'pdf' | 'document' | 'archive' | 'model3d' | 'other';
11
+ export type AssetStatus = 'uploading' | 'pending_scan' | 'pending_processing' | 'available' | 'quarantined' | 'processing_failed' | 'soft_deleted';
12
+ export type AssetVisibility = 'public' | 'private';
13
+ export interface StorageAsset {
14
+ id: string;
15
+ tenant_id: string;
16
+ folder_id: string | null;
17
+ kind: AssetKind;
18
+ status: AssetStatus;
19
+ visibility: AssetVisibility;
20
+ mime_type: string;
21
+ original_name: string;
22
+ path_name: string;
23
+ display_name: string | null;
24
+ alt_text: string | null;
25
+ description: string | null;
26
+ tags: string[];
27
+ size_bytes: number;
28
+ content_hash: string | null;
29
+ width: number | null;
30
+ height: number | null;
31
+ duration_ms: number | null;
32
+ page_count: number | null;
33
+ dominant_color: string | null;
34
+ metadata: Record<string, unknown>;
35
+ /** Delivery URL for public assets; null for private (use a signed URL). */
36
+ url: string | null;
37
+ /** 3D assets only: imgproxy-resizable preview image (rendered from the model). */
38
+ preview_url?: string | null;
39
+ /** 3D assets only: the web-renderable mesh (.glb) for <rx-model-viewer>. */
40
+ model_url?: string | null;
41
+ created_at: string | null;
42
+ updated_at: string | null;
43
+ processed_at: string | null;
44
+ deleted_at: string | null;
45
+ }
46
+ export interface StorageFolder {
47
+ id: string;
48
+ tenant_id: string;
49
+ parent_id: string | null;
50
+ name: string;
51
+ /** Full hierarchy path, e.g. `/marketing/q1-campaign`. */
52
+ path: string;
53
+ is_system: boolean;
54
+ created_at: string | null;
55
+ updated_at: string | null;
56
+ }
57
+ /** A folder augmented with its children, for rendering the tree. */
58
+ export interface StorageFolderNode extends StorageFolder {
59
+ children: StorageFolderNode[];
60
+ }
61
+ /** Per-file state while a batch uploads. */
62
+ export interface UploadProgress {
63
+ name: string;
64
+ pct: number;
65
+ status: 'pending' | 'uploading' | 'done' | 'failed';
66
+ error?: string;
67
+ }
File without changes
package/dist/types.d.mts CHANGED
@@ -10,6 +10,20 @@ export { type PlatformAuth } from '../dist/runtime/composables/usePlatformAuth.j
10
10
 
11
11
  export { type PlatformTenant } from '../dist/runtime/composables/usePlatformTenant.js'
12
12
 
13
+ export { type PlatformTalkback } from '../dist/runtime/composables/usePlatformTalkback.js'
14
+
15
+ export { type TalkbackChannel, type TalkbackChannelOptions, type TalkbackMaybeRef } from '../dist/runtime/composables/useTalkbackChannels.js'
16
+
17
+ export { type MediaLibraryClient } from '../dist/runtime/composables/useMediaLibrary.js'
18
+
19
+ export { type FloatingPanelDock, type FloatingPanelMode, type FloatingPanelOptions } from '../dist/runtime/composables/useFloatingPanel.js'
20
+
21
+ export { type IsoOption } from '../dist/runtime/lib/isoLists.js'
22
+
23
+ export { type Translate, type TranslateNamed, type Translator } from '../dist/runtime/lib/i18nBridge.js'
24
+
13
25
  export { default } from './module.mjs'
14
26
 
15
27
  export * from '../dist/runtime/components/DataTable/types.js'
28
+
29
+ export * from '../dist/runtime/types/storage.js'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revenexx/studio-shared",
3
- "version": "0.2.0",
3
+ "version": "0.3.1",
4
4
  "type": "module",
5
5
  "description": "Shared revenexx Studio shell primitives (PageHeader, SidebarNav, StateCard, DataTable, …) + the platform provider contract (usePlatformAuth/usePlatformTenant). A Nuxt module — add it to `modules`.",
6
6
  "main": "./dist/module.mjs",
@@ -10,7 +10,11 @@
10
10
  "types": "./dist/types.d.mts",
11
11
  "import": "./dist/module.mjs"
12
12
  },
13
- "./components/*": "./dist/runtime/components/*"
13
+ "./components/*": "./dist/runtime/components/*",
14
+ "./lib/*": {
15
+ "types": "./dist/runtime/lib/*.d.ts",
16
+ "import": "./dist/runtime/lib/*.js"
17
+ }
14
18
  },
15
19
  "files": [
16
20
  "dist",
@@ -24,15 +28,27 @@
24
28
  "@nuxt/kit": "^4.0.0"
25
29
  },
26
30
  "peerDependencies": {
27
- "@revenexx/studio": "*",
31
+ "@revenexx/studio": "^0.2.0",
32
+ "@revenexx/talkback-js": "^0.3.0",
28
33
  "@solar-icons/nuxt": "^1.2.0",
34
+ "centrifuge": ">=5.2.0",
29
35
  "nuxt": "^4.0.0",
30
36
  "vue": "^3.5.0",
31
37
  "vue-sonner": "^2.0.0"
32
38
  },
39
+ "peerDependenciesMeta": {
40
+ "@revenexx/talkback-js": {
41
+ "optional": true
42
+ },
43
+ "centrifuge": {
44
+ "optional": true
45
+ }
46
+ },
33
47
  "devDependencies": {
34
48
  "@nuxt/module-builder": "^1.0.2",
35
49
  "@nuxt/kit": "^4.0.0",
50
+ "@revenexx/talkback-js": "^0.3.0",
51
+ "centrifuge": "^5.4.0",
36
52
  "nuxt": "^4.2.2",
37
53
  "vue": "^3.5.26",
38
54
  "vue-tsc": "^2.2.0"