@voyant-travel/operations-react 0.19.0 → 0.19.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/availability/components/availability-rule-detail-page.d.ts +5 -5
  2. package/dist/availability/components/availability-slot-detail-page.d.ts +5 -5
  3. package/dist/availability/components/availability-start-time-detail-page.d.ts +5 -5
  4. package/dist/availability/hooks/use-availability-batch-mutations.d.ts +2 -2
  5. package/dist/availability/hooks/use-availability-overview.d.ts +1 -1
  6. package/dist/availability/hooks/use-availability-slot-mutation.d.ts +3 -3
  7. package/dist/availability/hooks/use-slots.d.ts +1 -1
  8. package/dist/availability/query-options.d.ts +12 -12
  9. package/dist/availability/schemas.d.ts +6 -6
  10. package/dist/places/hooks/use-facilities.d.ts +1 -1
  11. package/dist/places/hooks/use-facility-feature-mutation.d.ts +2 -2
  12. package/dist/places/hooks/use-facility-features.d.ts +1 -1
  13. package/dist/places/hooks/use-facility-mutation.d.ts +4 -4
  14. package/dist/places/hooks/use-facility.d.ts +1 -1
  15. package/dist/places/hooks/use-property-group-mutation.d.ts +6 -6
  16. package/dist/places/hooks/use-property-group.d.ts +2 -2
  17. package/dist/places/hooks/use-property-groups.d.ts +2 -2
  18. package/dist/places/query-options.d.ts +32 -32
  19. package/dist/resources/admin/detail-hosts.d.ts.map +1 -1
  20. package/dist/resources/admin/detail-hosts.js +97 -22
  21. package/dist/resources/admin/resources-dialogs-ops.d.ts +3 -2
  22. package/dist/resources/admin/resources-dialogs-ops.d.ts.map +1 -1
  23. package/dist/resources/admin/resources-dialogs-ops.js +44 -6
  24. package/dist/resources/admin/resources-dialogs.d.ts.map +1 -1
  25. package/dist/resources/admin/resources-dialogs.js +1 -1
  26. package/dist/resources/components/resource-allocation-detail-page.d.ts +2 -1
  27. package/dist/resources/components/resource-allocation-detail-page.d.ts.map +1 -1
  28. package/dist/resources/components/resource-allocation-detail-page.js +2 -2
  29. package/dist/resources/components/resource-assignment-detail-page.d.ts +2 -1
  30. package/dist/resources/components/resource-assignment-detail-page.d.ts.map +1 -1
  31. package/dist/resources/components/resource-assignment-detail-page.js +4 -3
  32. package/dist/resources/components/resource-detail-page.d.ts +2 -1
  33. package/dist/resources/components/resource-detail-page.d.ts.map +1 -1
  34. package/dist/resources/components/resource-detail-page.js +6 -3
  35. package/dist/resources/components/resource-detail-shared.d.ts +2 -1
  36. package/dist/resources/components/resource-detail-shared.d.ts.map +1 -1
  37. package/dist/resources/components/resource-detail-shared.js +3 -3
  38. package/dist/resources/components/resource-pool-detail-page.d.ts +5 -1
  39. package/dist/resources/components/resource-pool-detail-page.d.ts.map +1 -1
  40. package/dist/resources/components/resource-pool-detail-page.js +38 -8
  41. package/dist/resources/components/resources-overview.d.ts +3 -2
  42. package/dist/resources/components/resources-overview.d.ts.map +1 -1
  43. package/dist/resources/components/resources-overview.js +2 -1
  44. package/dist/resources/components/resources-page.d.ts.map +1 -1
  45. package/dist/resources/components/resources-page.js +45 -9
  46. package/dist/resources/components/resources-tabs-primary.d.ts.map +1 -1
  47. package/dist/resources/components/resources-tabs-primary.js +28 -19
  48. package/dist/resources/components/resources-tabs-secondary.d.ts +2 -1
  49. package/dist/resources/components/resources-tabs-secondary.d.ts.map +1 -1
  50. package/dist/resources/components/resources-tabs-secondary.js +22 -9
  51. package/dist/resources/hooks/use-assignment.d.ts +1 -2
  52. package/dist/resources/hooks/use-assignment.d.ts.map +1 -1
  53. package/dist/resources/hooks/use-assignments.d.ts +1 -0
  54. package/dist/resources/hooks/use-assignments.d.ts.map +1 -1
  55. package/dist/resources/hooks/use-pool.d.ts +1 -1
  56. package/dist/resources/hooks/use-pools.d.ts +1 -1
  57. package/dist/resources/hooks/use-resource.d.ts +1 -1
  58. package/dist/resources/hooks/use-resources.d.ts +1 -1
  59. package/dist/resources/i18n/en.d.ts.map +1 -1
  60. package/dist/resources/i18n/en.js +8 -0
  61. package/dist/resources/i18n/messages.d.ts +8 -0
  62. package/dist/resources/i18n/messages.d.ts.map +1 -1
  63. package/dist/resources/i18n/ro.d.ts.map +1 -1
  64. package/dist/resources/i18n/ro.js +8 -0
  65. package/dist/resources/i18n/utils.d.ts +2 -1
  66. package/dist/resources/i18n/utils.d.ts.map +1 -1
  67. package/dist/resources/i18n/utils.js +3 -1
  68. package/dist/resources/query-options.d.ts +24 -24
  69. package/dist/resources/query-options.d.ts.map +1 -1
  70. package/dist/resources/schemas.d.ts +13 -13
  71. package/dist/resources/schemas.d.ts.map +1 -1
  72. package/dist/resources/schemas.js +2 -4
  73. package/package.json +10 -10
@@ -4,12 +4,12 @@ import { Badge, Button, ConfirmActionButton, SelectionActionBar, } from "@voyant
4
4
  import { DataTable } from "@voyant-travel/ui/components/data-table";
5
5
  import { DataTableColumnHeader } from "@voyant-travel/ui/components/data-table-column-header";
6
6
  import { TabsContent } from "@voyant-travel/ui/components/tabs";
7
- import { ExternalLink } from "lucide-react";
7
+ import { ExternalLink, Pencil } from "lucide-react";
8
8
  import { useResourcesUiI18nOrDefault } from "../i18n/index.js";
9
9
  import { formatSelectionLabel, formatSelectionSummary } from "../i18n/utils.js";
10
10
  import { labelById, } from "../index.js";
11
11
  import { ResourcesSectionHeader } from "./resources-section-header.js";
12
- const resourceColumns = (i18n, suppliers, onView) => [
12
+ const resourceColumns = (i18n, suppliers, onView, onEdit) => [
13
13
  {
14
14
  accessorKey: "name",
15
15
  header: ({ column }) => (_jsx(DataTableColumnHeader, { column: column, title: i18n.messages.tabsPrimary.columns.resources.name })),
@@ -37,13 +37,16 @@ const resourceColumns = (i18n, suppliers, onView) => [
37
37
  {
38
38
  id: "view",
39
39
  header: i18n.messages.tabsPrimary.columns.resources.view,
40
- cell: ({ row }) => (_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
41
- event.stopPropagation();
42
- onView(row.original.id);
43
- }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] })),
40
+ cell: ({ row }) => (_jsxs("div", { className: "flex flex-wrap items-center gap-1", children: [_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
41
+ event.stopPropagation();
42
+ onView(row.original.id);
43
+ }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] }), _jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
44
+ event.stopPropagation();
45
+ onEdit(row.original);
46
+ }, children: [_jsx(Pencil, { className: "mr-2 h-4 w-4" }), i18n.messages.common.edit] })] })),
44
47
  },
45
48
  ];
46
- const poolColumns = (i18n, products, onView) => [
49
+ const poolColumns = (i18n, products, onView, onEdit) => [
47
50
  {
48
51
  accessorKey: "name",
49
52
  header: ({ column }) => (_jsx(DataTableColumnHeader, { column: column, title: i18n.messages.tabsPrimary.columns.pools.name })),
@@ -66,13 +69,16 @@ const poolColumns = (i18n, products, onView) => [
66
69
  {
67
70
  id: "view",
68
71
  header: i18n.messages.tabsPrimary.columns.pools.view,
69
- cell: ({ row }) => (_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
70
- event.stopPropagation();
71
- onView(row.original.id);
72
- }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] })),
72
+ cell: ({ row }) => (_jsxs("div", { className: "flex flex-wrap items-center gap-1", children: [_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
73
+ event.stopPropagation();
74
+ onView(row.original.id);
75
+ }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] }), _jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
76
+ event.stopPropagation();
77
+ onEdit(row.original);
78
+ }, children: [_jsx(Pencil, { className: "mr-2 h-4 w-4" }), i18n.messages.common.edit] })] })),
73
79
  },
74
80
  ];
75
- const allocationColumns = (i18n, pools, products, onView) => [
81
+ const allocationColumns = (i18n, pools, products, onView, onEdit) => [
76
82
  {
77
83
  accessorKey: "poolId",
78
84
  header: ({ column }) => (_jsx(DataTableColumnHeader, { column: column, title: i18n.messages.tabsPrimary.columns.allocations.pool })),
@@ -101,10 +107,13 @@ const allocationColumns = (i18n, pools, products, onView) => [
101
107
  {
102
108
  id: "view",
103
109
  header: i18n.messages.tabsPrimary.columns.allocations.view,
104
- cell: ({ row }) => (_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
105
- event.stopPropagation();
106
- onView(row.original.id);
107
- }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] })),
110
+ cell: ({ row }) => (_jsxs("div", { className: "flex flex-wrap items-center gap-1", children: [_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
111
+ event.stopPropagation();
112
+ onView(row.original.id);
113
+ }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] }), _jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
114
+ event.stopPropagation();
115
+ onEdit(row.original);
116
+ }, children: [_jsx(Pencil, { className: "mr-2 h-4 w-4" }), i18n.messages.common.edit] })] })),
108
117
  },
109
118
  ];
110
119
  export function ResourcesTab(props) {
@@ -112,7 +121,7 @@ export function ResourcesTab(props) {
112
121
  const m = i18n.messages;
113
122
  const section = m.tabsPrimary.sections.resources;
114
123
  const selection = m.common.selectionNouns.resource;
115
- return (_jsxs(TabsContent, { value: "resources", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: resourceColumns(i18n, props.suppliers, props.onOpenRoute), data: props.filteredResources, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.resourceSelection, onRowSelectionChange: props.setResourceSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsxs(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: [_jsx(ConfirmActionButton, { buttonLabel: section.actions.activate.buttonLabel, confirmLabel: section.actions.activate.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.activate.title, {
124
+ return (_jsxs(TabsContent, { value: "resources", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: resourceColumns(i18n, props.suppliers, props.onOpenRoute, props.onEdit), data: props.filteredResources, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.resourceSelection, onRowSelectionChange: props.setResourceSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsxs(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: [_jsx(ConfirmActionButton, { buttonLabel: section.actions.activate.buttonLabel, confirmLabel: section.actions.activate.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.activate.title, {
116
125
  selection: formatSelectionLabel(selectedRows.length, selection, m.common.selectionLabel),
117
126
  }), description: section.actions.activate.description, disabled: props.bulkActionTarget === "resources-activate", onConfirm: () => props.handleBulkUpdate({
118
127
  ids: selectedRows.map((row) => row.original.id),
@@ -150,7 +159,7 @@ export function PoolsTab(props) {
150
159
  const m = i18n.messages;
151
160
  const section = m.tabsPrimary.sections.pools;
152
161
  const selection = m.common.selectionNouns.pool;
153
- return (_jsxs(TabsContent, { value: "pools", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: poolColumns(i18n, props.products, props.onOpenRoute), data: props.filteredPools, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.poolSelection, onRowSelectionChange: props.setPoolSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsxs(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: [_jsx(ConfirmActionButton, { buttonLabel: section.actions.activate.buttonLabel, confirmLabel: section.actions.activate.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.activate.title, {
162
+ return (_jsxs(TabsContent, { value: "pools", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: poolColumns(i18n, props.products, props.onOpenRoute, props.onEdit), data: props.filteredPools, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.poolSelection, onRowSelectionChange: props.setPoolSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsxs(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: [_jsx(ConfirmActionButton, { buttonLabel: section.actions.activate.buttonLabel, confirmLabel: section.actions.activate.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.activate.title, {
154
163
  selection: formatSelectionLabel(selectedRows.length, selection, m.common.selectionLabel),
155
164
  }), description: section.actions.activate.description, disabled: props.bulkActionTarget === "pools-activate", onConfirm: () => props.handleBulkUpdate({
156
165
  ids: selectedRows.map((row) => row.original.id),
@@ -188,7 +197,7 @@ export function AllocationsTab(props) {
188
197
  const m = i18n.messages;
189
198
  const section = m.tabsPrimary.sections.allocations;
190
199
  const selection = m.common.selectionNouns.allocation;
191
- return (_jsxs(TabsContent, { value: "allocations", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: allocationColumns(i18n, props.pools, props.products, props.onOpenRoute), data: props.filteredAllocations, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.allocationSelection, onRowSelectionChange: props.setAllocationSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsx(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: _jsx(ConfirmActionButton, { buttonLabel: section.actions.delete.buttonLabel, confirmLabel: section.actions.delete.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.delete.title, {
200
+ return (_jsxs(TabsContent, { value: "allocations", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: allocationColumns(i18n, props.pools, props.products, props.onOpenRoute, props.onEdit), data: props.filteredAllocations, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.allocationSelection, onRowSelectionChange: props.setAllocationSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsx(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: _jsx(ConfirmActionButton, { buttonLabel: section.actions.delete.buttonLabel, confirmLabel: section.actions.delete.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.delete.title, {
192
201
  selection: formatSelectionLabel(selectedRows.length, selection, m.common.selectionLabel),
193
202
  }), description: section.actions.delete.description, disabled: props.bulkActionTarget === "allocations-delete", variant: "destructive", confirmVariant: "destructive", onConfirm: () => props.handleBulkDelete({
194
203
  ids: selectedRows.map((row) => row.original.id),
@@ -1,5 +1,5 @@
1
1
  import type { OnChangeFn, RowSelectionState } from "@tanstack/react-table";
2
- import { type BookingOption, type ResourceCloseoutRow, type ResourceRow, type ResourceSlotAssignmentRow, type SlotOption } from "../index.js";
2
+ import { type BookingOption, type ProductOption, type ResourceCloseoutRow, type ResourceRow, type ResourceSlotAssignmentRow, type SlotOption } from "../index.js";
3
3
  type BulkFn = (args: {
4
4
  ids: string[];
5
5
  endpoint: string;
@@ -20,6 +20,7 @@ type DeleteFn = (args: {
20
20
  }) => Promise<void>;
21
21
  export declare function AssignmentsTab(props: {
22
22
  slots: SlotOption[];
23
+ products?: ProductOption[];
23
24
  resources: ResourceRow[];
24
25
  bookings: BookingOption[];
25
26
  filteredAssignments: ResourceSlotAssignmentRow[];
@@ -1 +1 @@
1
- {"version":3,"file":"resources-tabs-secondary.d.ts","sourceRoot":"","sources":["../../../src/resources/components/resources-tabs-secondary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,UAAU,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAmBrF,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,UAAU,EAChB,MAAM,aAAa,CAAA;AAGpB,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE;IACnB,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,IAAI,CAAA;CAC3B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAEnB,KAAK,QAAQ,GAAG,CAAC,IAAI,EAAE;IACrB,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,IAAI,CAAA;CAC3B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAiKnB,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,mBAAmB,EAAE,yBAAyB,EAAE,CAAA;IAChD,mBAAmB,EAAE,iBAAiB,CAAA;IACtC,sBAAsB,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACrD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,gBAAgB,EAAE,MAAM,CAAA;IACxB,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,MAAM,EAAE,CAAC,GAAG,EAAE,yBAAyB,KAAK,IAAI,CAAA;CACjD,+BA0HA;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,iBAAiB,EAAE,mBAAmB,EAAE,CAAA;IACxC,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,oBAAoB,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACnD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,MAAM,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAA;CAC3C,+BAgEA"}
1
+ {"version":3,"file":"resources-tabs-secondary.d.ts","sourceRoot":"","sources":["../../../src/resources/components/resources-tabs-secondary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,UAAU,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAmBrF,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,UAAU,EAChB,MAAM,aAAa,CAAA;AAGpB,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE;IACnB,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,IAAI,CAAA;CAC3B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAEnB,KAAK,QAAQ,GAAG,CAAC,IAAI,EAAE;IACrB,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,IAAI,CAAA;CAC3B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAmMnB,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;IAC1B,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,mBAAmB,EAAE,yBAAyB,EAAE,CAAA;IAChD,mBAAmB,EAAE,iBAAiB,CAAA;IACtC,sBAAsB,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACrD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,gBAAgB,EAAE,MAAM,CAAA;IACxB,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,MAAM,EAAE,CAAC,GAAG,EAAE,yBAAyB,KAAK,IAAI,CAAA;CACjD,+BA6HA;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAClC,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,iBAAiB,EAAE,mBAAmB,EAAE,CAAA;IACxC,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,oBAAoB,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAA;IACnD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,MAAM,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,IAAI,CAAA;CAC3C,+BAgEA"}
@@ -4,12 +4,12 @@ import { Badge, Button, ConfirmActionButton, SelectionActionBar, } from "@voyant
4
4
  import { DataTable } from "@voyant-travel/ui/components/data-table";
5
5
  import { DataTableColumnHeader } from "@voyant-travel/ui/components/data-table-column-header";
6
6
  import { TabsContent } from "@voyant-travel/ui/components/tabs";
7
- import { ExternalLink } from "lucide-react";
7
+ import { ExternalLink, Pencil } from "lucide-react";
8
8
  import { useResourcesUiI18nOrDefault } from "../i18n/index.js";
9
9
  import { formatDateTimeOrFallback, formatResourceSlotLabel, formatSelectionLabel, formatSelectionSummary, } from "../i18n/utils.js";
10
10
  import { labelById, } from "../index.js";
11
11
  import { ResourcesSectionHeader } from "./resources-section-header.js";
12
- const assignmentColumns = (i18n, slots, resources, bookings, onView) => [
12
+ const assignmentColumns = (i18n, slots, products, resources, bookings, onView, onEdit) => [
13
13
  {
14
14
  accessorKey: "slotId",
15
15
  header: ({ column }) => (_jsx(DataTableColumnHeader, { column: column, title: i18n.messages.tabsSecondary.columns.assignments.slot })),
@@ -21,6 +21,7 @@ const assignmentColumns = (i18n, slots, resources, bookings, onView) => [
21
21
  }, {
22
22
  template: i18n.messages.common.slotLabel,
23
23
  formatDate: i18n.formatDate,
24
+ products,
24
25
  }),
25
26
  },
26
27
  {
@@ -49,13 +50,16 @@ const assignmentColumns = (i18n, slots, resources, bookings, onView) => [
49
50
  {
50
51
  id: "view",
51
52
  header: i18n.messages.tabsSecondary.columns.assignments.view,
52
- cell: ({ row }) => (_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
53
- event.stopPropagation();
54
- onView(row.original.id);
55
- }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] })),
53
+ cell: ({ row }) => (_jsxs("div", { className: "flex flex-wrap items-center gap-1", children: [_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
54
+ event.stopPropagation();
55
+ onView(row.original.id);
56
+ }, children: [_jsx(ExternalLink, { className: "mr-2 h-4 w-4" }), i18n.messages.common.open] }), _jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
57
+ event.stopPropagation();
58
+ onEdit(row.original);
59
+ }, children: [_jsx(Pencil, { className: "mr-2 h-4 w-4" }), i18n.messages.common.edit] })] })),
56
60
  },
57
61
  ];
58
- const closeoutColumns = (i18n, resources) => [
62
+ const closeoutColumns = (i18n, resources, onEdit) => [
59
63
  {
60
64
  accessorKey: "resourceId",
61
65
  header: ({ column }) => (_jsx(DataTableColumnHeader, { column: column, title: i18n.messages.tabsSecondary.columns.closeouts.resource })),
@@ -86,13 +90,22 @@ const closeoutColumns = (i18n, resources) => [
86
90
  header: ({ column }) => (_jsx(DataTableColumnHeader, { column: column, title: i18n.messages.tabsSecondary.columns.closeouts.reason })),
87
91
  cell: ({ row }) => row.original.reason ?? "-",
88
92
  },
93
+ {
94
+ id: "edit",
95
+ header: i18n.messages.common.edit,
96
+ cell: ({ row }) => (_jsxs(Button, { variant: "ghost", size: "sm", onClick: (event) => {
97
+ event.stopPropagation();
98
+ onEdit(row.original);
99
+ }, children: [_jsx(Pencil, { className: "mr-2 h-4 w-4" }), i18n.messages.common.edit] })),
100
+ },
89
101
  ];
90
102
  export function AssignmentsTab(props) {
91
103
  const i18n = useResourcesUiI18nOrDefault();
92
104
  const m = i18n.messages;
93
105
  const section = m.tabsSecondary.sections.assignments;
94
106
  const selection = m.common.selectionNouns.assignment;
95
- return (_jsxs(TabsContent, { value: "assignments", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: assignmentColumns(i18n, props.slots, props.resources, props.bookings, props.onOpenRoute), data: props.filteredAssignments, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.assignmentSelection, onRowSelectionChange: props.setAssignmentSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsxs(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: [_jsx(ConfirmActionButton, { buttonLabel: section.actions.assign.buttonLabel, confirmLabel: section.actions.assign.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.assign.title, {
107
+ const products = props.products ?? [];
108
+ return (_jsxs(TabsContent, { value: "assignments", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: assignmentColumns(i18n, props.slots, products, props.resources, props.bookings, props.onOpenRoute, props.onEdit), data: props.filteredAssignments, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.assignmentSelection, onRowSelectionChange: props.setAssignmentSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsxs(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: [_jsx(ConfirmActionButton, { buttonLabel: section.actions.assign.buttonLabel, confirmLabel: section.actions.assign.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.assign.title, {
96
109
  selection: formatSelectionLabel(selectedRows.length, selection, m.common.selectionLabel),
97
110
  }), description: section.actions.assign.description, disabled: props.bulkActionTarget === "assignments-assigned", onConfirm: () => props.handleBulkUpdate({
98
111
  ids: selectedRows.map((row) => row.original.id),
@@ -130,7 +143,7 @@ export function CloseoutsTab(props) {
130
143
  const m = i18n.messages;
131
144
  const section = m.tabsSecondary.sections.closeouts;
132
145
  const selection = m.common.selectionNouns.closeout;
133
- return (_jsxs(TabsContent, { value: "closeouts", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: closeoutColumns(i18n, props.resources), data: props.filteredCloseouts, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.closeoutSelection, onRowSelectionChange: props.setCloseoutSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsx(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: _jsx(ConfirmActionButton, { buttonLabel: section.actions.delete.buttonLabel, confirmLabel: section.actions.delete.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.delete.title, {
146
+ return (_jsxs(TabsContent, { value: "closeouts", className: "space-y-4", children: [_jsx(ResourcesSectionHeader, { title: section.title, description: section.description, actionLabel: section.actionLabel, onAction: props.onCreate }), _jsx(DataTable, { columns: closeoutColumns(i18n, props.resources, props.onEdit), data: props.filteredCloseouts, emptyMessage: section.emptyMessage, enableRowSelection: true, getRowId: (row) => row.id, rowSelection: props.closeoutSelection, onRowSelectionChange: props.setCloseoutSelection, renderSelectionActions: ({ selectedRows, clearSelection }) => (_jsx(SelectionActionBar, { selectedCount: selectedRows.length, onClear: clearSelection, clearLabel: m.common.clearSelection, selectionSummary: formatSelectionSummary(selectedRows.length, m.common.selectionSummary), children: _jsx(ConfirmActionButton, { buttonLabel: section.actions.delete.buttonLabel, confirmLabel: section.actions.delete.confirmLabel, cancelLabel: m.common.cancel, title: formatMessage(section.actions.delete.title, {
134
147
  selection: formatSelectionLabel(selectedRows.length, selection, m.common.selectionLabel),
135
148
  }), description: section.actions.delete.description, disabled: props.bulkActionTarget === "closeouts-delete", variant: "destructive", confirmVariant: "destructive", onConfirm: () => props.handleBulkDelete({
136
149
  ids: selectedRows.map((row) => row.original.id),
@@ -8,10 +8,9 @@ export declare function useAssignment(id: string | null | undefined, options?: U
8
8
  resourceId: string | null;
9
9
  bookingId: string | null;
10
10
  status: "cancelled" | "reserved" | "assigned" | "released" | "completed";
11
+ assignedAt: string;
11
12
  assignedBy: string | null;
12
13
  releasedAt: string | null;
13
14
  notes: string | null;
14
- createdAt: string;
15
- updatedAt: string;
16
15
  }>, Error>;
17
16
  //# sourceMappingURL=use-assignment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-assignment.d.ts","sourceRoot":"","sources":["../../../src/resources/hooks/use-assignment.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,GAAE,oBAAyB;;;;;;;;;;;;WAQ9F"}
1
+ {"version":3,"file":"use-assignment.d.ts","sourceRoot":"","sources":["../../../src/resources/hooks/use-assignment.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,GAAE,oBAAyB;;;;;;;;;;;WAQ9F"}
@@ -10,6 +10,7 @@ export declare function useAssignments(options?: UseAssignmentsOptions): import(
10
10
  resourceId: string | null;
11
11
  bookingId: string | null;
12
12
  status: "cancelled" | "reserved" | "assigned" | "released" | "completed";
13
+ assignedAt: string;
13
14
  assignedBy: string | null;
14
15
  releasedAt: string | null;
15
16
  notes: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"use-assignments.d.ts","sourceRoot":"","sources":["../../../src/resources/hooks/use-assignments.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAA;AAGtE,MAAM,WAAW,qBAAsB,SAAQ,8BAA8B;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B;;;;;;;;;;;;;;;WAQjE"}
1
+ {"version":3,"file":"use-assignments.d.ts","sourceRoot":"","sources":["../../../src/resources/hooks/use-assignments.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAA;AAGtE,MAAM,WAAW,qBAAsB,SAAQ,8BAA8B;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B;;;;;;;;;;;;;;;;WAQjE"}
@@ -4,7 +4,7 @@ export interface UsePoolOptions {
4
4
  export declare function usePool(id: string | null | undefined, options?: UsePoolOptions): import("@tanstack/react-query").UseQueryResult<NoInfer<{
5
5
  id: string;
6
6
  productId: string | null;
7
- kind: "vehicle" | "room" | "other" | "guide" | "boat" | "equipment";
7
+ kind: "other" | "vehicle" | "room" | "guide" | "boat" | "equipment";
8
8
  name: string;
9
9
  sharedCapacity: number | null;
10
10
  active: boolean;
@@ -6,7 +6,7 @@ export declare function usePools(options?: UsePoolsOptions): import("@tanstack/r
6
6
  data: {
7
7
  id: string;
8
8
  productId: string | null;
9
- kind: "vehicle" | "room" | "other" | "guide" | "boat" | "equipment";
9
+ kind: "other" | "vehicle" | "room" | "guide" | "boat" | "equipment";
10
10
  name: string;
11
11
  sharedCapacity: number | null;
12
12
  active: boolean;
@@ -4,7 +4,7 @@ export interface UseResourceOptions {
4
4
  export declare function useResource(id: string | null | undefined, options?: UseResourceOptions): import("@tanstack/react-query").UseQueryResult<NoInfer<{
5
5
  id: string;
6
6
  supplierId: string | null;
7
- kind: "vehicle" | "room" | "other" | "guide" | "boat" | "equipment";
7
+ kind: "other" | "vehicle" | "room" | "guide" | "boat" | "equipment";
8
8
  name: string;
9
9
  code: string | null;
10
10
  capacity: number | null;
@@ -6,7 +6,7 @@ export declare function useResources(options?: UseResourcesOptions): import("@ta
6
6
  data: {
7
7
  id: string;
8
8
  supplierId: string | null;
9
- kind: "vehicle" | "room" | "other" | "guide" | "boat" | "equipment";
9
+ kind: "other" | "vehicle" | "room" | "guide" | "boat" | "equipment";
10
10
  name: string;
11
11
  code: string | null;
12
12
  capacity: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD,eAAO,MAAM,aAAa,EAAE,mBAqX3B,CAAA"}
1
+ {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD,eAAO,MAAM,aAAa,EAAE,mBA6X3B,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export const resourcesUiEn = {
2
2
  common: {
3
+ edit: "Edit",
3
4
  open: "Open",
4
5
  view: "View",
5
6
  cancel: "Cancel",
@@ -285,6 +286,7 @@ export const resourcesUiEn = {
285
286
  code: "Code",
286
287
  created: "Created",
287
288
  delete: "Delete",
289
+ edit: "Edit",
288
290
  noBooking: "No booking",
289
291
  noPool: "No pool",
290
292
  noResource: "No resource",
@@ -321,6 +323,7 @@ export const resourcesUiEn = {
321
323
  notFound: "Resource not found.",
322
324
  poolMembershipsEmpty: "This resource is not assigned to any pool.",
323
325
  poolMembershipsTitle: "Pool Memberships",
326
+ removePoolMember: "Remove",
324
327
  released: "Released",
325
328
  },
326
329
  pool: {
@@ -334,6 +337,10 @@ export const resourcesUiEn = {
334
337
  loadFailed: "Pool could not be loaded.",
335
338
  membersEmpty: "No resources are assigned to this pool.",
336
339
  membersTitle: "Members",
340
+ addMember: "Add member",
341
+ addMemberPlaceholder: "Select a resource",
342
+ memberAlreadyAssigned: "All listed resources are already assigned.",
343
+ removeMember: "Remove",
337
344
  noResource: "Resource unavailable",
338
345
  notFound: "Resource pool not found.",
339
346
  sharedCapacity: "Shared Capacity",
@@ -350,6 +357,7 @@ export const resourcesUiEn = {
350
357
  startTime: "Start Time",
351
358
  },
352
359
  assignment: {
360
+ assignedAt: "Assigned At",
353
361
  assignedBy: "Assigned By",
354
362
  deleteConfirm: "Delete assignment {name}?",
355
363
  deleteFailed: "Assignment could not be deleted.",
@@ -15,6 +15,7 @@ type BulkActionMessages = {
15
15
  };
16
16
  export type ResourcesUiMessages = {
17
17
  common: {
18
+ edit: string;
18
19
  open: string;
19
20
  view: string;
20
21
  cancel: string;
@@ -218,6 +219,7 @@ export type ResourcesUiMessages = {
218
219
  code: string;
219
220
  created: string;
220
221
  delete: string;
222
+ edit: string;
221
223
  noBooking: string;
222
224
  noPool: string;
223
225
  noResource: string;
@@ -254,6 +256,7 @@ export type ResourcesUiMessages = {
254
256
  notFound: string;
255
257
  poolMembershipsEmpty: string;
256
258
  poolMembershipsTitle: string;
259
+ removePoolMember: string;
257
260
  released: string;
258
261
  };
259
262
  pool: {
@@ -267,6 +270,10 @@ export type ResourcesUiMessages = {
267
270
  loadFailed: string;
268
271
  membersEmpty: string;
269
272
  membersTitle: string;
273
+ addMember: string;
274
+ addMemberPlaceholder: string;
275
+ memberAlreadyAssigned: string;
276
+ removeMember: string;
270
277
  noResource: string;
271
278
  notFound: string;
272
279
  sharedCapacity: string;
@@ -283,6 +290,7 @@ export type ResourcesUiMessages = {
283
290
  startTime: string;
284
291
  };
285
292
  assignment: {
293
+ assignedAt: string;
286
294
  assignedBy: string;
287
295
  deleteConfirm: string;
288
296
  deleteFailed: string;
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/messages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/messages.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ro.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/ro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD,eAAO,MAAM,aAAa,EAAE,mBAsX3B,CAAA"}
1
+ {"version":3,"file":"ro.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/ro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD,eAAO,MAAM,aAAa,EAAE,mBA8X3B,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export const resourcesUiRo = {
2
2
  common: {
3
+ edit: "Editeaza",
3
4
  open: "Deschide",
4
5
  view: "Vizualizare",
5
6
  cancel: "Anuleaza",
@@ -285,6 +286,7 @@ export const resourcesUiRo = {
285
286
  code: "Cod",
286
287
  created: "Creat",
287
288
  delete: "Sterge",
289
+ edit: "Editeaza",
288
290
  noBooking: "Fara rezervare",
289
291
  noPool: "Fara pool",
290
292
  noResource: "Fara resursa",
@@ -321,6 +323,7 @@ export const resourcesUiRo = {
321
323
  notFound: "Resursa nu a fost gasita.",
322
324
  poolMembershipsEmpty: "Aceasta resursa nu este asignata niciunui pool.",
323
325
  poolMembershipsTitle: "Apartenenta la Pool-uri",
326
+ removePoolMember: "Elimina",
324
327
  released: "Eliberat",
325
328
  },
326
329
  pool: {
@@ -334,6 +337,10 @@ export const resourcesUiRo = {
334
337
  loadFailed: "Pool-ul nu a putut fi incarcat.",
335
338
  membersEmpty: "Nicio resursa nu este asignata acestui pool.",
336
339
  membersTitle: "Membri",
340
+ addMember: "Adauga membru",
341
+ addMemberPlaceholder: "Selecteaza o resursa",
342
+ memberAlreadyAssigned: "Toate resursele listate sunt deja asignate.",
343
+ removeMember: "Elimina",
337
344
  noResource: "Resursa indisponibila",
338
345
  notFound: "Pool-ul de resurse nu a fost gasit.",
339
346
  sharedCapacity: "Capacitate Partajata",
@@ -350,6 +357,7 @@ export const resourcesUiRo = {
350
357
  startTime: "Ora de Start",
351
358
  },
352
359
  assignment: {
360
+ assignedAt: "Asignat La",
353
361
  assignedBy: "Asignat De",
354
362
  deleteConfirm: "Stergi asignarea {name}?",
355
363
  deleteFailed: "Asignarea nu a putut fi stearsa.",
@@ -1,5 +1,5 @@
1
1
  import type { PackageI18nValue } from "@voyant-travel/i18n";
2
- import type { SlotOption } from "../index.js";
2
+ import type { ProductOption, SlotOption } from "../index.js";
3
3
  import type { ResourcesUiMessages } from "./messages.js";
4
4
  export declare const RESOURCE_KIND_VALUES: readonly ["guide", "vehicle", "room", "boat", "equipment", "other"];
5
5
  export declare function formatSelectionLabel(count: number, noun: {
@@ -10,6 +10,7 @@ export declare function formatSelectionSummary(count: number, template: string):
10
10
  export declare function formatResourceSlotLabel(slot: SlotOption, options: {
11
11
  template: string;
12
12
  formatDate: PackageI18nValue<ResourcesUiMessages>["formatDate"];
13
+ products?: ProductOption[];
13
14
  }): string;
14
15
  export declare function formatDateTimeOrFallback(value: string | null, options: {
15
16
  fallback: string;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD,eAAO,MAAM,oBAAoB,qEAOvB,CAAA;AAEV,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1C,QAAQ,EAAE,MAAM,UAMjB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAErE;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAA;CAChE,UASF;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,CAAA;CACxE,UAGF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/resources/i18n/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAExD,eAAO,MAAM,oBAAoB,qEAOvB,CAAA;AAEV,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1C,QAAQ,EAAE,MAAM,UAMjB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAErE;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAA;IAC/D,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAA;CAC3B,UAWF;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAA;IAChB,cAAc,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,CAAA;CACxE,UAGF"}
@@ -20,10 +20,12 @@ export function formatResourceSlotLabel(slot, options) {
20
20
  const time = slot.startsAt
21
21
  ? options.formatDate(slot.startsAt, { timeStyle: "short" })
22
22
  : slot.dateLocal;
23
- return formatMessage(options.template, {
23
+ const dateTime = formatMessage(options.template, {
24
24
  date: slot.dateLocal,
25
25
  time,
26
26
  });
27
+ const product = options.products?.find((entry) => entry.id === slot.productId);
28
+ return product ? `${product.name} · ${dateTime}` : dateTime;
27
29
  }
28
30
  export function formatDateTimeOrFallback(value, options) {
29
31
  return value ? options.formatDateTime(value) : options.fallback;