@uipath/apollo-react 6.16.4 → 6.17.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 (38) hide show
  1. package/dist/canvas/components/StageNode/tasks/AdhocTask.cjs +1 -1
  2. package/dist/canvas/components/StageNode/tasks/AdhocTask.js +1 -1
  3. package/dist/canvas/components/StageNode/tasks/DraggableTask.cjs +1 -1
  4. package/dist/canvas/components/StageNode/tasks/DraggableTask.js +1 -1
  5. package/dist/canvas/components/StageNode/tasks/EventDrivenTask.cjs +1 -1
  6. package/dist/canvas/components/StageNode/tasks/EventDrivenTask.js +1 -1
  7. package/dist/material/components/ap-model-picker/ModelPicker.cjs +45 -12
  8. package/dist/material/components/ap-model-picker/ModelPicker.d.ts +1 -0
  9. package/dist/material/components/ap-model-picker/ModelPicker.d.ts.map +1 -1
  10. package/dist/material/components/ap-model-picker/ModelPicker.js +46 -13
  11. package/dist/material/components/ap-model-picker/index.cjs +27 -11
  12. package/dist/material/components/ap-model-picker/index.d.ts +4 -3
  13. package/dist/material/components/ap-model-picker/index.d.ts.map +1 -1
  14. package/dist/material/components/ap-model-picker/index.js +4 -3
  15. package/dist/material/components/ap-model-picker/loadMessages.cjs +79 -0
  16. package/dist/material/components/ap-model-picker/loadMessages.d.ts +23 -0
  17. package/dist/material/components/ap-model-picker/loadMessages.d.ts.map +1 -0
  18. package/dist/material/components/ap-model-picker/loadMessages.js +39 -0
  19. package/dist/material/components/ap-model-picker/types.d.ts +2 -0
  20. package/dist/material/components/ap-model-picker/types.d.ts.map +1 -1
  21. package/dist/material/components/ap-model-picker/useModelPickerState.cjs +6 -3
  22. package/dist/material/components/ap-model-picker/useModelPickerState.d.ts.map +1 -1
  23. package/dist/material/components/ap-model-picker/useModelPickerState.js +6 -3
  24. package/dist/material/components/ap-model-picker/usePlatformAccess.cjs +48 -11
  25. package/dist/material/components/ap-model-picker/usePlatformAccess.d.ts +6 -2
  26. package/dist/material/components/ap-model-picker/usePlatformAccess.d.ts.map +1 -1
  27. package/dist/material/components/ap-model-picker/usePlatformAccess.js +46 -12
  28. package/dist/material/components/ap-model-picker/utils.cjs +58 -9
  29. package/dist/material/components/ap-model-picker/utils.d.ts +2 -0
  30. package/dist/material/components/ap-model-picker/utils.d.ts.map +1 -1
  31. package/dist/material/components/ap-model-picker/utils.js +51 -8
  32. package/dist/material/theme/overrides/MuiIconButton.cjs +12 -2
  33. package/dist/material/theme/overrides/MuiIconButton.d.ts.map +1 -1
  34. package/dist/material/theme/overrides/MuiIconButton.js +12 -2
  35. package/dist/material/theme/overrides/MuiSwitch.cjs +13 -44
  36. package/dist/material/theme/overrides/MuiSwitch.d.ts.map +1 -1
  37. package/dist/material/theme/overrides/MuiSwitch.js +13 -34
  38. package/package.json +1 -1
@@ -46,7 +46,7 @@ const AdhocTaskItemComponent = ({ task, taskExecution, isSelected, getContextMen
46
46
  }, []);
47
47
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_StageNode_styles_cjs_namespaceObject.StageItemPill, {
48
48
  ref: taskRef,
49
- "data-testid": `stage-task-${task.id}`,
49
+ "data-testid": `stage-task-card-${task.id}`,
50
50
  selected: isSelected,
51
51
  status: taskExecution?.status,
52
52
  isPlaceholder: task.isPlaceholder,
@@ -18,7 +18,7 @@ const AdhocTaskItemComponent = ({ task, taskExecution, isSelected, getContextMen
18
18
  }, []);
19
19
  return /*#__PURE__*/ jsxs(StageItemPill, {
20
20
  ref: taskRef,
21
- "data-testid": `stage-task-${task.id}`,
21
+ "data-testid": `stage-task-card-${task.id}`,
22
22
  selected: isSelected,
23
23
  status: taskExecution?.status,
24
24
  isPlaceholder: task.isPlaceholder,
@@ -87,7 +87,7 @@ const DraggableTaskComponent = ({ task, taskExecution, isSelected, isParallel, g
87
87
  }
88
88
  const taskElement = /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_StageNode_styles_cjs_namespaceObject.StageItemPill, {
89
89
  ref: taskRef,
90
- "data-testid": `stage-task-${task.id}`,
90
+ "data-testid": `stage-task-card-${task.id}`,
91
91
  selected: isSelected,
92
92
  status: taskExecution?.status,
93
93
  isParallel: isParallel,
@@ -59,7 +59,7 @@ const DraggableTaskComponent = ({ task, taskExecution, isSelected, isParallel, g
59
59
  }
60
60
  const taskElement = /*#__PURE__*/ jsxs(StageItemPill, {
61
61
  ref: taskRef,
62
- "data-testid": `stage-task-${task.id}`,
62
+ "data-testid": `stage-task-card-${task.id}`,
63
63
  selected: isSelected,
64
64
  status: taskExecution?.status,
65
65
  isParallel: isParallel,
@@ -46,7 +46,7 @@ const EventDrivenTaskItemComponent = ({ task, taskExecution, isSelected, getCont
46
46
  }, []);
47
47
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_StageNode_styles_cjs_namespaceObject.StageItemPill, {
48
48
  ref: taskRef,
49
- "data-testid": `stage-task-${task.id}`,
49
+ "data-testid": `stage-task-card-${task.id}`,
50
50
  selected: isSelected,
51
51
  status: taskExecution?.status,
52
52
  isPlaceholder: task.isPlaceholder,
@@ -18,7 +18,7 @@ const EventDrivenTaskItemComponent = ({ task, taskExecution, isSelected, getCont
18
18
  }, []);
19
19
  return /*#__PURE__*/ jsxs(StageItemPill, {
20
20
  ref: taskRef,
21
- "data-testid": `stage-task-${task.id}`,
21
+ "data-testid": `stage-task-card-${task.id}`,
22
22
  selected: isSelected,
23
23
  status: taskExecution?.status,
24
24
  isPlaceholder: task.isPlaceholder,
@@ -71,10 +71,11 @@ const PickerSearchInput_cjs_namespaceObject = require("./primitives/PickerSearch
71
71
  const PickerTrigger_cjs_namespaceObject = require("./primitives/PickerTrigger.cjs");
72
72
  const external_useModelPickerState_cjs_namespaceObject = require("./useModelPickerState.cjs");
73
73
  const external_usePlatformAccess_cjs_namespaceObject = require("./usePlatformAccess.cjs");
74
+ const external_utils_cjs_namespaceObject = require("./utils.cjs");
74
75
  const EMPTY_MODELS = [];
75
76
  const REQUIRED_INDICATOR = '*';
76
77
  const AUTO_VIRTUALIZE_THRESHOLD = 120;
77
- const ModelPicker = /*#__PURE__*/ external_react_default().forwardRef(({ models, value, onChange, label, required, placeholder, disabled, invalid, errorText, variant = 'searchable', groupBy = "subscription", allowGroupingChange = true, homeRegion, recommendedModelIds, previewModelIds, filter, badgesFor, customTagsFor, customTagVariants, canManageByo, onUseCustomModel, requestContext, enableFolders = false, folders, folder: folderProp, onFolderChange, allFoldersLabel, loading, error, showGroupHeaders = true, popupContainer, disablePortal, onDeleteModel, slots, testId }, forwardedRef)=>{
78
+ const ModelPicker = /*#__PURE__*/ external_react_default().forwardRef(({ models, value, onChange, label, required, placeholder, disabled, invalid, errorText, variant = 'searchable', groupBy = "subscription", allowGroupingChange = true, homeRegion, recommendedModelIds, previewModelIds, filter, badgesFor, customTagsFor, customTagVariants, canManageByo, onUseCustomModel, requestContext, enableFolders = false, folders, folder: folderProp, onFolderChange, allFoldersLabel, loading, error, showGroupHeaders = true, popupContainer, disablePortal, onDeleteModel, onModelDeleted, slots, testId }, forwardedRef)=>{
78
79
  const { _ } = (0, index_cjs_namespaceObject.useSafeLingui)();
79
80
  const i18n = external_react_default().useMemo(()=>({
80
81
  _
@@ -104,26 +105,50 @@ const ModelPicker = /*#__PURE__*/ external_react_default().forwardRef(({ models,
104
105
  const { models: fetchedModels, loading: discoveryLoading, error: discoveryError, refetch: refetchDiscovery } = (0, external_usePlatformAccess_cjs_namespaceObject.usePlatformDiscoveryModels)(selfFetchCtx, folder ?? null);
105
106
  const catalog = models ?? fetchedModels ?? EMPTY_MODELS;
106
107
  const effectiveLoading = (loading ?? false) || discoveryLoading;
107
- const effectiveError = error ?? discoveryError;
108
+ const { deleteConfiguration } = (0, external_usePlatformAccess_cjs_namespaceObject.useDeleteByoConfiguration)(selfFetchCtx);
108
109
  const [pendingDelete, setPendingDelete] = external_react_default().useState(null);
110
+ const [deleteError, setDeleteError] = external_react_default().useState(null);
111
+ const canSelfDelete = !onDeleteModel && !!selfFetchCtx;
109
112
  const handleDeleteModel = external_react_default().useMemo(()=>{
110
- if (!onDeleteModel) return;
111
- return (m)=>setPendingDelete(m);
113
+ if (!onDeleteModel && !canSelfDelete) return;
114
+ return (m)=>{
115
+ setDeleteError(null);
116
+ setPendingDelete(m);
117
+ };
112
118
  }, [
113
- onDeleteModel
119
+ onDeleteModel,
120
+ canSelfDelete
114
121
  ]);
115
122
  const confirmPendingDelete = external_react_default().useCallback(async ()=>{
116
123
  const model = pendingDelete;
117
124
  setPendingDelete(null);
118
125
  if (!model) return;
119
- await onDeleteModel?.(model);
120
- if (selfFetchCtx) refetchDiscovery();
126
+ try {
127
+ if (onDeleteModel) await onDeleteModel(model);
128
+ else {
129
+ const configurationId = model.byomDetails?.byoConfigurationId;
130
+ if (!configurationId) throw new Error('This custom model has no configuration to delete.');
131
+ await deleteConfiguration(configurationId);
132
+ }
133
+ } catch (err) {
134
+ setDeleteError(err instanceof Error ? err : new Error(String(err)));
135
+ return;
136
+ }
137
+ try {
138
+ if (selfFetchCtx) await refetchDiscovery();
139
+ await onModelDeleted?.(model);
140
+ } catch (err) {
141
+ setDeleteError(err instanceof Error ? err : new Error(String(err)));
142
+ }
121
143
  }, [
122
144
  pendingDelete,
123
145
  onDeleteModel,
146
+ onModelDeleted,
147
+ deleteConfiguration,
124
148
  selfFetchCtx,
125
149
  refetchDiscovery
126
150
  ]);
151
+ const effectiveError = error ?? deleteError ?? discoveryError;
127
152
  const connectionNames = (0, external_usePlatformAccess_cjs_namespaceObject.useByoConnectionNames)(catalog, requestContext ?? null);
128
153
  const effectiveModels = external_react_default().useMemo(()=>{
129
154
  const allowed = catalog.filter((m)=>!m.isBlockedByPolicy);
@@ -163,7 +188,10 @@ const ModelPicker = /*#__PURE__*/ external_react_default().forwardRef(({ models,
163
188
  forwardedRef,
164
189
  triggerRef
165
190
  ]);
166
- const closePopup = external_react_default().useCallback(()=>setOpen(false), [
191
+ const closePopup = external_react_default().useCallback(()=>{
192
+ setOpen(false);
193
+ setDeleteError(null);
194
+ }, [
167
195
  setOpen
168
196
  ]);
169
197
  const slotCtx = external_react_default().useMemo(()=>({
@@ -204,16 +232,17 @@ const ModelPicker = /*#__PURE__*/ external_react_default().forwardRef(({ models,
204
232
  }, [
205
233
  effectiveFolders
206
234
  ]);
235
+ const homeGeography = (0, external_utils_cjs_namespaceObject.resolveHomeGeography)(homeRegion);
207
236
  const tagContext = external_react_default().useMemo(()=>({
208
237
  i18n,
209
- homeRegion,
238
+ homeRegion: homeGeography,
210
239
  recommendedModelIds,
211
240
  previewModelIds,
212
241
  badgesFor,
213
242
  customTagsFor
214
243
  }), [
215
244
  i18n,
216
- homeRegion,
245
+ homeGeography,
217
246
  recommendedModelIds,
218
247
  previewModelIds,
219
248
  badgesFor,
@@ -233,16 +262,20 @@ const ModelPicker = /*#__PURE__*/ external_react_default().forwardRef(({ models,
233
262
  configurationId: model.byomDetails?.byoConfigurationId
234
263
  }) : void 0;
235
264
  if (!onEdit && !handleDeleteModel) return ()=>null;
236
- return (m)=>(0, ModelOptionRow_cjs_namespaceObject.defaultRowActions)(m, {
265
+ return (m)=>{
266
+ const deletable = handleDeleteModel && (onDeleteModel || !!m.byomDetails?.byoConfigurationId);
267
+ return (0, ModelOptionRow_cjs_namespaceObject.defaultRowActions)(m, {
237
268
  i18n,
238
269
  onEdit,
239
- onDelete: handleDeleteModel
270
+ onDelete: deletable ? handleDeleteModel : void 0
240
271
  });
272
+ };
241
273
  }, [
242
274
  slots?.optionActions,
243
275
  effectiveCanManageByo,
244
276
  navigateToLlmConfigurations,
245
277
  handleDeleteModel,
278
+ onDeleteModel,
246
279
  i18n
247
280
  ]);
248
281
  const footerNode = external_react_default().useMemo(()=>{
@@ -54,6 +54,7 @@ export interface ModelPickerProps {
54
54
  popupContainer?: PickerPopupProps['container'];
55
55
  disablePortal?: boolean;
56
56
  onDeleteModel?: (model: DiscoveryModel) => void | Promise<void>;
57
+ onModelDeleted?: (model: DiscoveryModel) => void | Promise<void>;
57
58
  slots?: ModelPickerSlots;
58
59
  testId?: string;
59
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ModelPicker.d.ts","sourceRoot":"","sources":["../../../../src/material/components/ap-model-picker/ModelPicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ModelPicker.d.ts","sourceRoot":"","sources":["../../../../src/material/components/ap-model-picker/ModelPicker.tsx"],"names":[],"mappings":"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"}
@@ -21,11 +21,12 @@ import { PickerPopup } from "./primitives/PickerPopup.js";
21
21
  import { PickerSearchInput } from "./primitives/PickerSearchInput.js";
22
22
  import { PickerTrigger } from "./primitives/PickerTrigger.js";
23
23
  import { useModelPickerState } from "./useModelPickerState.js";
24
- import { buildLlmConfigurationsUrl, platformNavigation, useByoConnectionNames, useCanManageByo, usePlatformDiscoveryModels, useUserFolders } from "./usePlatformAccess.js";
24
+ import { buildLlmConfigurationsUrl, platformNavigation, useByoConnectionNames, useCanManageByo, useDeleteByoConfiguration, usePlatformDiscoveryModels, useUserFolders } from "./usePlatformAccess.js";
25
+ import { resolveHomeGeography } from "./utils.js";
25
26
  const EMPTY_MODELS = [];
26
27
  const REQUIRED_INDICATOR = '*';
27
28
  const AUTO_VIRTUALIZE_THRESHOLD = 120;
28
- const ModelPicker = /*#__PURE__*/ react.forwardRef(({ models, value, onChange, label, required, placeholder, disabled, invalid, errorText, variant = 'searchable', groupBy = "subscription", allowGroupingChange = true, homeRegion, recommendedModelIds, previewModelIds, filter, badgesFor, customTagsFor, customTagVariants, canManageByo, onUseCustomModel, requestContext, enableFolders = false, folders, folder: folderProp, onFolderChange, allFoldersLabel, loading, error, showGroupHeaders = true, popupContainer, disablePortal, onDeleteModel, slots, testId }, forwardedRef)=>{
29
+ const ModelPicker = /*#__PURE__*/ react.forwardRef(({ models, value, onChange, label, required, placeholder, disabled, invalid, errorText, variant = 'searchable', groupBy = "subscription", allowGroupingChange = true, homeRegion, recommendedModelIds, previewModelIds, filter, badgesFor, customTagsFor, customTagVariants, canManageByo, onUseCustomModel, requestContext, enableFolders = false, folders, folder: folderProp, onFolderChange, allFoldersLabel, loading, error, showGroupHeaders = true, popupContainer, disablePortal, onDeleteModel, onModelDeleted, slots, testId }, forwardedRef)=>{
29
30
  const { _ } = useSafeLingui();
30
31
  const i18n = react.useMemo(()=>({
31
32
  _
@@ -55,26 +56,50 @@ const ModelPicker = /*#__PURE__*/ react.forwardRef(({ models, value, onChange, l
55
56
  const { models: fetchedModels, loading: discoveryLoading, error: discoveryError, refetch: refetchDiscovery } = usePlatformDiscoveryModels(selfFetchCtx, folder ?? null);
56
57
  const catalog = models ?? fetchedModels ?? EMPTY_MODELS;
57
58
  const effectiveLoading = (loading ?? false) || discoveryLoading;
58
- const effectiveError = error ?? discoveryError;
59
+ const { deleteConfiguration } = useDeleteByoConfiguration(selfFetchCtx);
59
60
  const [pendingDelete, setPendingDelete] = react.useState(null);
61
+ const [deleteError, setDeleteError] = react.useState(null);
62
+ const canSelfDelete = !onDeleteModel && !!selfFetchCtx;
60
63
  const handleDeleteModel = react.useMemo(()=>{
61
- if (!onDeleteModel) return;
62
- return (m)=>setPendingDelete(m);
64
+ if (!onDeleteModel && !canSelfDelete) return;
65
+ return (m)=>{
66
+ setDeleteError(null);
67
+ setPendingDelete(m);
68
+ };
63
69
  }, [
64
- onDeleteModel
70
+ onDeleteModel,
71
+ canSelfDelete
65
72
  ]);
66
73
  const confirmPendingDelete = react.useCallback(async ()=>{
67
74
  const model = pendingDelete;
68
75
  setPendingDelete(null);
69
76
  if (!model) return;
70
- await onDeleteModel?.(model);
71
- if (selfFetchCtx) refetchDiscovery();
77
+ try {
78
+ if (onDeleteModel) await onDeleteModel(model);
79
+ else {
80
+ const configurationId = model.byomDetails?.byoConfigurationId;
81
+ if (!configurationId) throw new Error('This custom model has no configuration to delete.');
82
+ await deleteConfiguration(configurationId);
83
+ }
84
+ } catch (err) {
85
+ setDeleteError(err instanceof Error ? err : new Error(String(err)));
86
+ return;
87
+ }
88
+ try {
89
+ if (selfFetchCtx) await refetchDiscovery();
90
+ await onModelDeleted?.(model);
91
+ } catch (err) {
92
+ setDeleteError(err instanceof Error ? err : new Error(String(err)));
93
+ }
72
94
  }, [
73
95
  pendingDelete,
74
96
  onDeleteModel,
97
+ onModelDeleted,
98
+ deleteConfiguration,
75
99
  selfFetchCtx,
76
100
  refetchDiscovery
77
101
  ]);
102
+ const effectiveError = error ?? deleteError ?? discoveryError;
78
103
  const connectionNames = useByoConnectionNames(catalog, requestContext ?? null);
79
104
  const effectiveModels = react.useMemo(()=>{
80
105
  const allowed = catalog.filter((m)=>!m.isBlockedByPolicy);
@@ -114,7 +139,10 @@ const ModelPicker = /*#__PURE__*/ react.forwardRef(({ models, value, onChange, l
114
139
  forwardedRef,
115
140
  triggerRef
116
141
  ]);
117
- const closePopup = react.useCallback(()=>setOpen(false), [
142
+ const closePopup = react.useCallback(()=>{
143
+ setOpen(false);
144
+ setDeleteError(null);
145
+ }, [
118
146
  setOpen
119
147
  ]);
120
148
  const slotCtx = react.useMemo(()=>({
@@ -155,16 +183,17 @@ const ModelPicker = /*#__PURE__*/ react.forwardRef(({ models, value, onChange, l
155
183
  }, [
156
184
  effectiveFolders
157
185
  ]);
186
+ const homeGeography = resolveHomeGeography(homeRegion);
158
187
  const tagContext = react.useMemo(()=>({
159
188
  i18n,
160
- homeRegion,
189
+ homeRegion: homeGeography,
161
190
  recommendedModelIds,
162
191
  previewModelIds,
163
192
  badgesFor,
164
193
  customTagsFor
165
194
  }), [
166
195
  i18n,
167
- homeRegion,
196
+ homeGeography,
168
197
  recommendedModelIds,
169
198
  previewModelIds,
170
199
  badgesFor,
@@ -184,16 +213,20 @@ const ModelPicker = /*#__PURE__*/ react.forwardRef(({ models, value, onChange, l
184
213
  configurationId: model.byomDetails?.byoConfigurationId
185
214
  }) : void 0;
186
215
  if (!onEdit && !handleDeleteModel) return ()=>null;
187
- return (m)=>defaultRowActions(m, {
216
+ return (m)=>{
217
+ const deletable = handleDeleteModel && (onDeleteModel || !!m.byomDetails?.byoConfigurationId);
218
+ return defaultRowActions(m, {
188
219
  i18n,
189
220
  onEdit,
190
- onDelete: handleDeleteModel
221
+ onDelete: deletable ? handleDeleteModel : void 0
191
222
  });
223
+ };
192
224
  }, [
193
225
  slots?.optionActions,
194
226
  effectiveCanManageByo,
195
227
  navigateToLlmConfigurations,
196
228
  handleDeleteModel,
229
+ onDeleteModel,
197
230
  i18n
198
231
  ]);
199
232
  const footerNode = react.useMemo(()=>{
@@ -25,31 +25,37 @@ var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
27
  ModelTagChip: ()=>external_ModelTagChip_cjs_namespaceObject.ModelTagChip,
28
+ getSubstitutionTarget: ()=>external_utils_cjs_namespaceObject.getSubstitutionTarget,
29
+ deriveModelTags: ()=>external_utils_cjs_namespaceObject.deriveModelTags,
30
+ useModelPickerState: ()=>external_useModelPickerState_cjs_namespaceObject.useModelPickerState,
31
+ usePlatformDiscoveryModels: ()=>external_usePlatformAccess_cjs_namespaceObject.usePlatformDiscoveryModels,
32
+ groupModels: ()=>external_utils_cjs_namespaceObject.groupModels,
33
+ defaultCostTier: ()=>external_utils_cjs_namespaceObject.defaultCostTier,
34
+ useUserFolders: ()=>external_usePlatformAccess_cjs_namespaceObject.useUserFolders,
35
+ MODEL_PICKER_LOCALES: ()=>external_loadMessages_cjs_namespaceObject.MODEL_PICKER_LOCALES,
36
+ isTextGenerationModel: ()=>external_utils_cjs_namespaceObject.isTextGenerationModel,
37
+ GroupedOptionList: ()=>OptionList_cjs_namespaceObject.GroupedOptionList,
38
+ GroupHeader: ()=>GroupHeader_cjs_namespaceObject.GroupHeader,
39
+ useDiscoveryModels: ()=>external_useDiscoveryModels_cjs_namespaceObject.useDiscoveryModels,
40
+ loadModelPickerMessages: ()=>external_loadMessages_cjs_namespaceObject.loadModelPickerMessages,
41
+ ModelPicker: ()=>external_ModelPicker_cjs_namespaceObject.ModelPicker,
28
42
  PickerSearchInput: ()=>PickerSearchInput_cjs_namespaceObject.PickerSearchInput,
29
43
  defaultRowActions: ()=>ModelOptionRow_cjs_namespaceObject.defaultRowActions,
30
- deriveModelTags: ()=>external_utils_cjs_namespaceObject.deriveModelTags,
31
44
  filterModels: ()=>external_utils_cjs_namespaceObject.filterModels,
32
45
  ModelOptionRow: ()=>ModelOptionRow_cjs_namespaceObject.ModelOptionRow,
33
- getSubstitutionTarget: ()=>external_utils_cjs_namespaceObject.getSubstitutionTarget,
34
46
  useCanManageByo: ()=>external_usePlatformAccess_cjs_namespaceObject.useCanManageByo,
35
- groupModels: ()=>external_utils_cjs_namespaceObject.groupModels,
36
- useModelPickerState: ()=>external_useModelPickerState_cjs_namespaceObject.useModelPickerState,
37
- usePlatformDiscoveryModels: ()=>external_usePlatformAccess_cjs_namespaceObject.usePlatformDiscoveryModels,
38
47
  FolderSwitcher: ()=>FolderSwitcher_cjs_namespaceObject.FolderSwitcher,
39
- defaultCostTier: ()=>external_utils_cjs_namespaceObject.defaultCostTier,
40
- useUserFolders: ()=>external_usePlatformAccess_cjs_namespaceObject.useUserFolders,
41
48
  PickerTrigger: ()=>PickerTrigger_cjs_namespaceObject.PickerTrigger,
42
- GroupedOptionList: ()=>OptionList_cjs_namespaceObject.GroupedOptionList,
43
49
  ApModelPicker: ()=>external_ModelPicker_cjs_namespaceObject.ModelPicker,
44
- GroupHeader: ()=>GroupHeader_cjs_namespaceObject.GroupHeader,
45
50
  MODEL_BADGES: ()=>external_badges_cjs_namespaceObject.MODEL_BADGES,
46
- useDiscoveryModels: ()=>external_useDiscoveryModels_cjs_namespaceObject.useDiscoveryModels,
51
+ resolveModelPickerLocale: ()=>external_loadMessages_cjs_namespaceObject.resolveModelPickerLocale,
47
52
  PickerPopup: ()=>PickerPopup_cjs_namespaceObject.PickerPopup,
48
- ModelPicker: ()=>external_ModelPicker_cjs_namespaceObject.ModelPicker,
49
53
  VirtualOptionList: ()=>OptionList_cjs_namespaceObject.VirtualOptionList,
54
+ useDeleteByoConfiguration: ()=>external_usePlatformAccess_cjs_namespaceObject.useDeleteByoConfiguration,
50
55
  useByoConnectionNames: ()=>external_usePlatformAccess_cjs_namespaceObject.useByoConnectionNames
51
56
  });
52
57
  const external_badges_cjs_namespaceObject = require("./badges.cjs");
58
+ const external_loadMessages_cjs_namespaceObject = require("./loadMessages.cjs");
53
59
  const external_ModelPicker_cjs_namespaceObject = require("./ModelPicker.cjs");
54
60
  const external_ModelTagChip_cjs_namespaceObject = require("./ModelTagChip.cjs");
55
61
  const FolderSwitcher_cjs_namespaceObject = require("./primitives/FolderSwitcher.cjs");
@@ -68,6 +74,7 @@ exports.FolderSwitcher = __webpack_exports__.FolderSwitcher;
68
74
  exports.GroupHeader = __webpack_exports__.GroupHeader;
69
75
  exports.GroupedOptionList = __webpack_exports__.GroupedOptionList;
70
76
  exports.MODEL_BADGES = __webpack_exports__.MODEL_BADGES;
77
+ exports.MODEL_PICKER_LOCALES = __webpack_exports__.MODEL_PICKER_LOCALES;
71
78
  exports.ModelOptionRow = __webpack_exports__.ModelOptionRow;
72
79
  exports.ModelPicker = __webpack_exports__.ModelPicker;
73
80
  exports.ModelTagChip = __webpack_exports__.ModelTagChip;
@@ -81,8 +88,12 @@ exports.deriveModelTags = __webpack_exports__.deriveModelTags;
81
88
  exports.filterModels = __webpack_exports__.filterModels;
82
89
  exports.getSubstitutionTarget = __webpack_exports__.getSubstitutionTarget;
83
90
  exports.groupModels = __webpack_exports__.groupModels;
91
+ exports.isTextGenerationModel = __webpack_exports__.isTextGenerationModel;
92
+ exports.loadModelPickerMessages = __webpack_exports__.loadModelPickerMessages;
93
+ exports.resolveModelPickerLocale = __webpack_exports__.resolveModelPickerLocale;
84
94
  exports.useByoConnectionNames = __webpack_exports__.useByoConnectionNames;
85
95
  exports.useCanManageByo = __webpack_exports__.useCanManageByo;
96
+ exports.useDeleteByoConfiguration = __webpack_exports__.useDeleteByoConfiguration;
86
97
  exports.useDiscoveryModels = __webpack_exports__.useDiscoveryModels;
87
98
  exports.useModelPickerState = __webpack_exports__.useModelPickerState;
88
99
  exports.usePlatformDiscoveryModels = __webpack_exports__.usePlatformDiscoveryModels;
@@ -93,6 +104,7 @@ for(var __rspack_i in __webpack_exports__)if (-1 === [
93
104
  "GroupHeader",
94
105
  "GroupedOptionList",
95
106
  "MODEL_BADGES",
107
+ "MODEL_PICKER_LOCALES",
96
108
  "ModelOptionRow",
97
109
  "ModelPicker",
98
110
  "ModelTagChip",
@@ -106,8 +118,12 @@ for(var __rspack_i in __webpack_exports__)if (-1 === [
106
118
  "filterModels",
107
119
  "getSubstitutionTarget",
108
120
  "groupModels",
121
+ "isTextGenerationModel",
122
+ "loadModelPickerMessages",
123
+ "resolveModelPickerLocale",
109
124
  "useByoConnectionNames",
110
125
  "useCanManageByo",
126
+ "useDeleteByoConfiguration",
111
127
  "useDiscoveryModels",
112
128
  "useModelPickerState",
113
129
  "usePlatformDiscoveryModels",
@@ -1,6 +1,7 @@
1
1
  export type { ModelBadgeDefinition, ModelBadgeKind } from './badges';
2
2
  export { MODEL_BADGES } from './badges';
3
3
  export type { PickerTranslator } from './i18n';
4
+ export { loadModelPickerMessages, MODEL_PICKER_LOCALES, resolveModelPickerLocale, } from './loadMessages';
4
5
  export type { ModelPickerChangeHandler, ModelPickerProps, ModelPickerSlotContext, ModelPickerSlots, ModelPickerVariant, } from './ModelPicker';
5
6
  export { ModelPicker, ModelPicker as ApModelPicker } from './ModelPicker';
6
7
  export type { ModelTagChipProps } from './ModelTagChip';
@@ -24,8 +25,8 @@ export type { UseDiscoveryModelsResult } from './useDiscoveryModels';
24
25
  export { useDiscoveryModels } from './useDiscoveryModels';
25
26
  export type { UseModelPickerStateOptions, UseModelPickerStateResult, } from './useModelPickerState';
26
27
  export { useModelPickerState } from './useModelPickerState';
27
- export type { PlatformRequestContext, PlatformToken, UseCanManageByoResult, UseUserFoldersResult, } from './usePlatformAccess';
28
- export { useByoConnectionNames, useCanManageByo, usePlatformDiscoveryModels, useUserFolders, } from './usePlatformAccess';
28
+ export type { PlatformRequestContext, PlatformToken, UseCanManageByoResult, UseDeleteByoConfigurationResult, UseUserFoldersResult, } from './usePlatformAccess';
29
+ export { useByoConnectionNames, useCanManageByo, useDeleteByoConfiguration, usePlatformDiscoveryModels, useUserFolders, } from './usePlatformAccess';
29
30
  export type { DeriveModelTagsContext, GroupModelsContext, GroupStrategy, } from './utils';
30
- export { defaultCostTier, deriveModelTags, filterModels, getSubstitutionTarget, groupModels, } from './utils';
31
+ export { defaultCostTier, deriveModelTags, filterModels, getSubstitutionTarget, groupModels, isTextGenerationModel, } from './utils';
31
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/material/components/ap-model-picker/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAC/C,YAAY,EACV,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1E,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,YAAY,EACV,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EACV,sBAAsB,EACtB,aAAa,EACb,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,0BAA0B,EAC1B,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,eAAe,EACf,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,WAAW,GACZ,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/material/components/ap-model-picker/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE/C,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,eAAe,CAAC;AAC1E,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAChF,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC/E,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,YAAY,EACV,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EACV,sBAAsB,EACtB,aAAa,EACb,qBAAqB,EACrB,+BAA+B,EAC/B,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,0BAA0B,EAC1B,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,eAAe,EACf,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,WAAW,EACX,qBAAqB,GACtB,MAAM,SAAS,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { MODEL_BADGES } from "./badges.js";
2
+ import { MODEL_PICKER_LOCALES, loadModelPickerMessages, resolveModelPickerLocale } from "./loadMessages.js";
2
3
  import { ModelPicker } from "./ModelPicker.js";
3
4
  import { ModelTagChip } from "./ModelTagChip.js";
4
5
  import { FolderSwitcher } from "./primitives/FolderSwitcher.js";
@@ -10,6 +11,6 @@ import { PickerSearchInput } from "./primitives/PickerSearchInput.js";
10
11
  import { PickerTrigger } from "./primitives/PickerTrigger.js";
11
12
  import { useDiscoveryModels } from "./useDiscoveryModels.js";
12
13
  import { useModelPickerState } from "./useModelPickerState.js";
13
- import { useByoConnectionNames, useCanManageByo, usePlatformDiscoveryModels, useUserFolders } from "./usePlatformAccess.js";
14
- import { defaultCostTier, deriveModelTags, filterModels, getSubstitutionTarget, groupModels } from "./utils.js";
15
- export { ModelPicker as ApModelPicker, FolderSwitcher, GroupHeader, GroupedOptionList, MODEL_BADGES, ModelOptionRow, ModelPicker, ModelTagChip, PickerPopup, PickerSearchInput, PickerTrigger, VirtualOptionList, defaultCostTier, defaultRowActions, deriveModelTags, filterModels, getSubstitutionTarget, groupModels, useByoConnectionNames, useCanManageByo, useDiscoveryModels, useModelPickerState, usePlatformDiscoveryModels, useUserFolders };
14
+ import { useByoConnectionNames, useCanManageByo, useDeleteByoConfiguration, usePlatformDiscoveryModels, useUserFolders } from "./usePlatformAccess.js";
15
+ import { defaultCostTier, deriveModelTags, filterModels, getSubstitutionTarget, groupModels, isTextGenerationModel } from "./utils.js";
16
+ export { ModelPicker as ApModelPicker, FolderSwitcher, GroupHeader, GroupedOptionList, MODEL_BADGES, MODEL_PICKER_LOCALES, ModelOptionRow, ModelPicker, ModelTagChip, PickerPopup, PickerSearchInput, PickerTrigger, VirtualOptionList, defaultCostTier, defaultRowActions, deriveModelTags, filterModels, getSubstitutionTarget, groupModels, isTextGenerationModel, loadModelPickerMessages, resolveModelPickerLocale, useByoConnectionNames, useCanManageByo, useDeleteByoConfiguration, useDiscoveryModels, useModelPickerState, usePlatformDiscoveryModels, useUserFolders };
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ MODEL_PICKER_LOCALES: ()=>MODEL_PICKER_LOCALES,
28
+ loadModelPickerMessages: ()=>loadModelPickerMessages,
29
+ resolveModelPickerLocale: ()=>resolveModelPickerLocale
30
+ });
31
+ const CATALOGS = {
32
+ de: ()=>import("./locales/de.cjs"),
33
+ en: ()=>import("./locales/en.cjs"),
34
+ es: ()=>import("./locales/es.cjs"),
35
+ 'es-MX': ()=>import("./locales/es-MX.cjs"),
36
+ fr: ()=>import("./locales/fr.cjs"),
37
+ ja: ()=>import("./locales/ja.cjs"),
38
+ ko: ()=>import("./locales/ko.cjs"),
39
+ pt: ()=>import("./locales/pt.cjs"),
40
+ 'pt-BR': ()=>import("./locales/pt-BR.cjs"),
41
+ ro: ()=>import("./locales/ro.cjs"),
42
+ ru: ()=>import("./locales/ru.cjs"),
43
+ tr: ()=>import("./locales/tr.cjs"),
44
+ 'zh-CN': ()=>import("./locales/zh-CN.cjs"),
45
+ 'zh-TW': ()=>import("./locales/zh-TW.cjs")
46
+ };
47
+ const MODEL_PICKER_LOCALES = Object.keys(CATALOGS);
48
+ function resolveModelPickerLocale(locale) {
49
+ const raw = locale?.trim().replace(/_/g, '-');
50
+ if (!raw) return;
51
+ const exact = MODEL_PICKER_LOCALES.find((tag)=>tag.toLowerCase() === raw.toLowerCase());
52
+ if (exact) return exact;
53
+ const base = raw.split('-')[0]?.toLowerCase();
54
+ return MODEL_PICKER_LOCALES.find((tag)=>tag.toLowerCase() === base);
55
+ }
56
+ async function loadModelPickerMessages(locale) {
57
+ const tag = resolveModelPickerLocale(locale) ?? 'en';
58
+ try {
59
+ return (await CATALOGS[tag]()).messages;
60
+ } catch {
61
+ if ('en' === tag) return {};
62
+ try {
63
+ return (await CATALOGS.en()).messages;
64
+ } catch {
65
+ return {};
66
+ }
67
+ }
68
+ }
69
+ exports.MODEL_PICKER_LOCALES = __webpack_exports__.MODEL_PICKER_LOCALES;
70
+ exports.loadModelPickerMessages = __webpack_exports__.loadModelPickerMessages;
71
+ exports.resolveModelPickerLocale = __webpack_exports__.resolveModelPickerLocale;
72
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
73
+ "MODEL_PICKER_LOCALES",
74
+ "loadModelPickerMessages",
75
+ "resolveModelPickerLocale"
76
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
77
+ Object.defineProperty(exports, '__esModule', {
78
+ value: true
79
+ });
@@ -0,0 +1,23 @@
1
+ import type { Messages } from '@lingui/core';
2
+ declare const CATALOGS: {
3
+ de: () => Promise<typeof import("./locales/de")>;
4
+ en: () => Promise<typeof import("./locales/en")>;
5
+ es: () => Promise<typeof import("./locales/es")>;
6
+ 'es-MX': () => Promise<typeof import("./locales/es-MX")>;
7
+ fr: () => Promise<typeof import("./locales/fr")>;
8
+ ja: () => Promise<typeof import("./locales/ja")>;
9
+ ko: () => Promise<typeof import("./locales/ko")>;
10
+ pt: () => Promise<typeof import("./locales/pt")>;
11
+ 'pt-BR': () => Promise<typeof import("./locales/pt-BR")>;
12
+ ro: () => Promise<typeof import("./locales/ro")>;
13
+ ru: () => Promise<typeof import("./locales/ru")>;
14
+ tr: () => Promise<typeof import("./locales/tr")>;
15
+ 'zh-CN': () => Promise<typeof import("./locales/zh-CN")>;
16
+ 'zh-TW': () => Promise<typeof import("./locales/zh-TW")>;
17
+ };
18
+ export type ModelPickerLocale = keyof typeof CATALOGS;
19
+ export declare const MODEL_PICKER_LOCALES: ModelPickerLocale[];
20
+ export declare function resolveModelPickerLocale(locale: string | undefined): ModelPickerLocale | undefined;
21
+ export declare function loadModelPickerMessages(locale: string | undefined): Promise<Messages>;
22
+ export {};
23
+ //# sourceMappingURL=loadMessages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadMessages.d.ts","sourceRoot":"","sources":["../../../../src/material/components/ap-model-picker/loadMessages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAW7C,QAAA,MAAM,QAAQ;;;;;;;;;;;;;;;CAemD,CAAC;AAGlE,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,QAAQ,CAAC;AAGtD,eAAO,MAAM,oBAAoB,EAA4B,iBAAiB,EAAE,CAAC;AAUjF,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,iBAAiB,GAAG,SAAS,CAO/B;AAsBD,wBAAsB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAY3F"}
@@ -0,0 +1,39 @@
1
+ const CATALOGS = {
2
+ de: ()=>import("./locales/de.js"),
3
+ en: ()=>import("./locales/en.js"),
4
+ es: ()=>import("./locales/es.js"),
5
+ 'es-MX': ()=>import("./locales/es-MX.js"),
6
+ fr: ()=>import("./locales/fr.js"),
7
+ ja: ()=>import("./locales/ja.js"),
8
+ ko: ()=>import("./locales/ko.js"),
9
+ pt: ()=>import("./locales/pt.js"),
10
+ 'pt-BR': ()=>import("./locales/pt-BR.js"),
11
+ ro: ()=>import("./locales/ro.js"),
12
+ ru: ()=>import("./locales/ru.js"),
13
+ tr: ()=>import("./locales/tr.js"),
14
+ 'zh-CN': ()=>import("./locales/zh-CN.js"),
15
+ 'zh-TW': ()=>import("./locales/zh-TW.js")
16
+ };
17
+ const MODEL_PICKER_LOCALES = Object.keys(CATALOGS);
18
+ function resolveModelPickerLocale(locale) {
19
+ const raw = locale?.trim().replace(/_/g, '-');
20
+ if (!raw) return;
21
+ const exact = MODEL_PICKER_LOCALES.find((tag)=>tag.toLowerCase() === raw.toLowerCase());
22
+ if (exact) return exact;
23
+ const base = raw.split('-')[0]?.toLowerCase();
24
+ return MODEL_PICKER_LOCALES.find((tag)=>tag.toLowerCase() === base);
25
+ }
26
+ async function loadModelPickerMessages(locale) {
27
+ const tag = resolveModelPickerLocale(locale) ?? 'en';
28
+ try {
29
+ return (await CATALOGS[tag]()).messages;
30
+ } catch {
31
+ if ('en' === tag) return {};
32
+ try {
33
+ return (await CATALOGS.en()).messages;
34
+ } catch {
35
+ return {};
36
+ }
37
+ }
38
+ }
39
+ export { MODEL_PICKER_LOCALES, loadModelPickerMessages, resolveModelPickerLocale };