@box/metadata-template-browser 1.22.19 → 1.22.21

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 (42) hide show
  1. package/dist/chunks/browser-row.js +55 -47
  2. package/dist/chunks/virtualized-grid-list.js +14 -10
  3. package/dist/esm/lib/components/template-row/messages.js +10 -4
  4. package/dist/esm/lib/components/template-row/template-row.js +9 -7
  5. package/dist/esm/lib/contexts/contexts.js +15 -10
  6. package/dist/esm/lib/metadata-template-browser.js +16 -14
  7. package/dist/i18n/bn-IN.js +1 -0
  8. package/dist/i18n/da-DK.js +1 -0
  9. package/dist/i18n/de-DE.js +1 -0
  10. package/dist/i18n/en-AU.js +1 -0
  11. package/dist/i18n/en-CA.js +1 -0
  12. package/dist/i18n/en-GB.js +1 -0
  13. package/dist/i18n/en-US.js +1 -0
  14. package/dist/i18n/en-US.properties +2 -0
  15. package/dist/i18n/en-x-pseudo.js +27 -26
  16. package/dist/i18n/en-x-pseudo.properties +26 -26
  17. package/dist/i18n/es-419.js +1 -0
  18. package/dist/i18n/es-ES.js +1 -0
  19. package/dist/i18n/fi-FI.js +1 -0
  20. package/dist/i18n/fr-CA.js +1 -0
  21. package/dist/i18n/fr-FR.js +1 -0
  22. package/dist/i18n/hi-IN.js +1 -0
  23. package/dist/i18n/it-IT.js +1 -0
  24. package/dist/i18n/ja-JP.js +1 -0
  25. package/dist/i18n/json/src/lib/components/template-row/messages.json +1 -1
  26. package/dist/i18n/ko-KR.js +1 -0
  27. package/dist/i18n/nb-NO.js +1 -0
  28. package/dist/i18n/nl-NL.js +1 -0
  29. package/dist/i18n/pl-PL.js +1 -0
  30. package/dist/i18n/pt-BR.js +1 -0
  31. package/dist/i18n/ru-RU.js +1 -0
  32. package/dist/i18n/sv-SE.js +1 -0
  33. package/dist/i18n/tr-TR.js +1 -0
  34. package/dist/i18n/zh-CN.js +1 -0
  35. package/dist/i18n/zh-TW.js +1 -0
  36. package/dist/styles/browser-row.css +1 -1
  37. package/dist/types/lib/components/browser-row/browser-row.d.ts +14 -1
  38. package/dist/types/lib/components/template-row/messages.d.ts +5 -0
  39. package/dist/types/lib/contexts/contexts.d.ts +2 -1
  40. package/dist/types/lib/metadata-template-browser.d.ts +6 -1
  41. package/dist/types/lib/types.d.ts +2 -0
  42. package/package.json +1 -1
@@ -1,52 +1,60 @@
1
1
  import { useConsumerState as e } from "../esm/lib/contexts/hooks.js";
2
- import { EllipsizableText as t } from "@box/blueprint-web";
3
- import n from "clsx";
4
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
- import { GridListItem as a } from "react-aria-components";
6
- import '../styles/browser-row.css';var o = {
7
- row: "_row_ybl3t_2",
8
- trailingSlotHoverOnly: "_trailingSlotHoverOnly_ybl3t_15",
9
- item: "_item_ybl3t_19",
10
- disabled: "_disabled_ybl3t_40",
11
- leadingIcon: "_leadingIcon_ybl3t_59",
12
- content: "_content_ybl3t_66",
13
- trailingSlot: "_trailingSlot_ybl3t_15",
14
- subtitle: "_subtitle_ybl3t_77"
2
+ import { EllipsizableText as t, Tooltip as n } from "@box/blueprint-web";
3
+ import r from "clsx";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import { GridListItem as o } from "react-aria-components";
6
+ import '../styles/browser-row.css';var s = {
7
+ row: "_row_1q43q_2",
8
+ leadingIcon: "_leadingIcon_1q43q_15",
9
+ content: "_content_1q43q_22",
10
+ trailingSlotHoverOnly: "_trailingSlotHoverOnly_1q43q_29",
11
+ item: "_item_1q43q_33",
12
+ disabled: "_disabled_1q43q_54",
13
+ applied: "_applied_1q43q_61",
14
+ trailingSlot: "_trailingSlot_1q43q_29",
15
+ subtitle: "_subtitle_1q43q_90"
15
16
  };
16
- function s({ id: s, leadingIcon: c, title: l, subtitle: u, trailingSlot: d, isTrailingSlotHoverOnly: f }) {
17
- let { isDisabled: p } = e(), m = n(o.trailingSlot, { [o.trailingSlotHoverOnly]: f });
18
- return /* @__PURE__ */ r(a, {
19
- className: n(o.item, { [o.disabled]: p }),
20
- id: s,
21
- isDisabled: p,
22
- textValue: l,
23
- children: /* @__PURE__ */ i("div", {
24
- className: o.row,
25
- children: [
26
- c !== void 0 && /* @__PURE__ */ r("div", {
27
- "aria-hidden": "true",
28
- className: o.leadingIcon,
29
- "data-testid": "leading-icon",
30
- children: c
31
- }),
32
- /* @__PURE__ */ i("div", {
33
- className: o.content,
34
- children: [/* @__PURE__ */ r(t, {
35
- as: "span",
36
- lineClamp: 1,
37
- variant: "bodyDefault",
38
- children: l
39
- }), u && /* @__PURE__ */ r("div", {
40
- className: o.subtitle,
41
- children: u
42
- })]
43
- }),
44
- d !== void 0 && /* @__PURE__ */ r("div", {
45
- className: m,
17
+ function c({ id: c, leadingIcon: l, title: u, subtitle: d, trailingSlot: f, isTrailingSlotHoverOnly: p, isApplied: m, tooltipContent: h }) {
18
+ let { isDisabled: g } = e(), _ = r(s.trailingSlot, { [s.trailingSlotHoverOnly]: p }), v = /* @__PURE__ */ a("div", {
19
+ className: s.row,
20
+ children: [
21
+ l !== void 0 && /* @__PURE__ */ i("div", {
22
+ "aria-hidden": "true",
23
+ className: s.leadingIcon,
24
+ "data-testid": "leading-icon",
25
+ children: l
26
+ }),
27
+ /* @__PURE__ */ a("div", {
28
+ className: s.content,
29
+ children: [/* @__PURE__ */ i(t, {
30
+ as: "span",
31
+ lineClamp: 1,
32
+ variant: "bodyDefault",
33
+ children: u
34
+ }), d && /* @__PURE__ */ i("div", {
35
+ className: s.subtitle,
46
36
  children: d
47
- })
48
- ]
49
- })
37
+ })]
38
+ }),
39
+ f !== void 0 && /* @__PURE__ */ i("div", {
40
+ className: _,
41
+ children: f
42
+ })
43
+ ]
44
+ }), y = typeof h == "string" ? `${u}. ${h}` : u, b = /* @__PURE__ */ i(o, {
45
+ "aria-disabled": m && !g ? !0 : void 0,
46
+ className: r(s.item, {
47
+ [s.disabled]: g,
48
+ [s.applied]: m && !g
49
+ }),
50
+ id: c,
51
+ isDisabled: g,
52
+ textValue: y,
53
+ children: v
54
+ });
55
+ return h === void 0 ? b : /* @__PURE__ */ i(n, {
56
+ content: h,
57
+ children: b
50
58
  });
51
59
  }
52
- export { s as t };
60
+ export { c as t };
@@ -9,10 +9,10 @@ import { jsx as c, jsxs as l } from "react/jsx-runtime";
9
9
  import { Collection as u, GridList as d, ListLayout as f, Virtualizer as p } from "react-aria-components";
10
10
  import '../styles/virtualized-grid-list.css';var m = { list: "_list_dukvn_1" }, h = 40, g = 58, _ = 2;
11
11
  function v({ ariaLabel: v, items: y, onAction: b, children: x, onLoadMore: S, hasMoreItems: C, isFetchingMore: w, loadMoreError: T, onRetry: E, selectedKeys: D, listType: O }) {
12
- let { isDisabled: k } = e(), A = o(() => new f({
12
+ let { isDisabled: k, appliedTemplateIds: A } = e(), j = o(() => new f({
13
13
  estimatedRowHeight: O === t.Browse ? h : g,
14
14
  gap: _
15
- }), [O]), j = s(null), M = a((e) => {
15
+ }), [O]), M = s(null), N = a((e) => {
16
16
  if (e === "LOAD_MORE_ERROR_ROW_ID") {
17
17
  k || E();
18
18
  return;
@@ -22,18 +22,22 @@ function v({ ariaLabel: v, items: y, onAction: b, children: x, onLoadMore: S, ha
22
22
  k,
23
23
  b,
24
24
  E
25
- ]), N = a((e) => {
25
+ ]), P = a((e) => {
26
26
  if (e === "all") return;
27
27
  let [t] = e;
28
- t !== void 0 && !D.has(String(t)) && M(t);
29
- }, [M, D]), P = C && !w && T === null && !k;
28
+ t !== void 0 && !D.has(String(t)) && !A.has(String(t)) && N(t);
29
+ }, [
30
+ A,
31
+ N,
32
+ D
33
+ ]), F = C && !w && T === null && !k;
30
34
  return /* @__PURE__ */ c(p, {
31
- layout: A,
35
+ layout: j,
32
36
  children: /* @__PURE__ */ l(d, {
33
- ref: j,
37
+ ref: M,
34
38
  "aria-label": v,
35
39
  className: m.list,
36
- onSelectionChange: N,
40
+ onSelectionChange: P,
37
41
  selectedKeys: D,
38
42
  selectionMode: "single",
39
43
  shouldSelectOnPressUp: !0,
@@ -44,9 +48,9 @@ function v({ ariaLabel: v, items: y, onAction: b, children: x, onLoadMore: S, ha
44
48
  }),
45
49
  w && /* @__PURE__ */ c(r, {}),
46
50
  T !== null && /* @__PURE__ */ c(n, { onRetry: E }),
47
- P && /* @__PURE__ */ c(i, {
51
+ F && /* @__PURE__ */ c(i, {
48
52
  onLoadMore: S,
49
- scrollContainerRef: j
53
+ scrollContainerRef: M
50
54
  })
51
55
  ]
52
56
  })
@@ -1,6 +1,12 @@
1
1
  import { defineMessages as e } from "react-intl";
2
- var t = e({ editAriaLabel: {
3
- id: "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel",
4
- defaultMessage: "Edit {displayName}"
5
- } });
2
+ var t = e({
3
+ alreadyApplied: {
4
+ id: "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied",
5
+ defaultMessage: "Template is already applied."
6
+ },
7
+ editAriaLabel: {
8
+ id: "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel",
9
+ defaultMessage: "Edit {displayName}"
10
+ }
11
+ });
6
12
  export { t as messages };
@@ -25,22 +25,24 @@ var p = (e) => {
25
25
  })] }, e.fqn));
26
26
  };
27
27
  function m({ template: a, variant: s, onEdit: u }) {
28
- let { formatMessage: m } = o(), { isDisabled: h } = e(), g = c((e) => {
28
+ let { formatMessage: m } = o(), { isDisabled: h, appliedTemplateIds: g } = e(), _ = g.has(a.id), v = c((e) => {
29
29
  e.stopPropagation(), u(a.id);
30
- }, [u, a.id]), _ = s === t.Search, v = !!a.canEdit;
30
+ }, [u, a.id]), y = s === t.Search, b = !!a.canEdit;
31
31
  return /* @__PURE__ */ l(n, {
32
32
  id: a.id,
33
- isTrailingSlotHoverOnly: v,
34
- leadingIcon: _ ? void 0 : /* @__PURE__ */ l(d, {}),
35
- subtitle: _ ? p(a) : void 0,
33
+ isApplied: _,
34
+ isTrailingSlotHoverOnly: b,
35
+ leadingIcon: y ? void 0 : /* @__PURE__ */ l(d, {}),
36
+ subtitle: y ? p(a) : void 0,
36
37
  title: a.displayName,
37
- trailingSlot: v ? /* @__PURE__ */ l("div", {
38
+ tooltipContent: _ ? m(r.alreadyApplied) : void 0,
39
+ trailingSlot: b ? /* @__PURE__ */ l("div", {
38
40
  onPointerDown: (e) => e.stopPropagation(),
39
41
  children: /* @__PURE__ */ l(i, {
40
42
  "aria-label": m(r.editAriaLabel, { displayName: a.displayName }),
41
43
  disabled: h,
42
44
  icon: f,
43
- onClick: g,
45
+ onClick: v,
44
46
  size: "x-small"
45
47
  })
46
48
  }) : void 0
@@ -77,23 +77,28 @@ function d({ children: e, selectedTemplateId: t }) {
77
77
  children: e
78
78
  });
79
79
  }
80
- var f = /* @__PURE__ */ t(null);
81
- function p({ children: e, isLoading: t = !1, isDisabled: i = !1 }) {
82
- let a = n(() => ({
80
+ var f = /* @__PURE__ */ t(null), p = /* @__PURE__ */ new Set();
81
+ function m({ children: e, isLoading: t = !1, isDisabled: i = !1, appliedTemplateIds: a = p }) {
82
+ let o = n(() => ({
83
83
  isLoading: t,
84
- isDisabled: i
85
- }), [t, i]);
84
+ isDisabled: i,
85
+ appliedTemplateIds: a
86
+ }), [
87
+ t,
88
+ i,
89
+ a
90
+ ]);
86
91
  return /* @__PURE__ */ r(f.Provider, {
87
- value: a,
92
+ value: o,
88
93
  children: e
89
94
  });
90
95
  }
91
- var m = /* @__PURE__ */ t(null);
92
- function h({ children: t, itemsServiceRef: n, eventServiceRef: i, stateRef: a, dispatch: o, levelCache: s }) {
96
+ var h = /* @__PURE__ */ t(null);
97
+ function g({ children: t, itemsServiceRef: n, eventServiceRef: i, stateRef: a, dispatch: o, levelCache: s }) {
93
98
  let c = e(n, i, a, o, s);
94
- return /* @__PURE__ */ r(m.Provider, {
99
+ return /* @__PURE__ */ r(h.Provider, {
95
100
  value: c,
96
101
  children: t
97
102
  });
98
103
  }
99
- export { o as BrowseStateContext, s as BrowseStateContextProvider, m as BrowserActionsContext, h as BrowserActionsContextProvider, f as ConsumerStateContext, p as ConsumerStateContextProvider, i as NavigationStateContext, a as NavigationStateContextProvider, c as SearchStateContext, l as SearchStateContextProvider, u as SelectionStateContext, d as SelectionStateContextProvider };
104
+ export { o as BrowseStateContext, s as BrowseStateContextProvider, h as BrowserActionsContext, g as BrowserActionsContextProvider, f as ConsumerStateContext, m as ConsumerStateContextProvider, i as NavigationStateContext, a as NavigationStateContextProvider, c as SearchStateContext, l as SearchStateContextProvider, u as SelectionStateContext, d as SelectionStateContextProvider };
@@ -1,19 +1,21 @@
1
1
  import { ConsumerStateContextProvider as e } from "./contexts/contexts.js";
2
2
  import { MetadataTemplateBrowserProvider as t } from "./contexts/provider.js";
3
3
  import { t as n } from "../../chunks/metadata-template-browser-controller.js";
4
- import { jsx as r } from "react/jsx-runtime";
5
- function i({ enterpriseId: i, itemsService: a, eventService: o, isLoading: s, isDisabled: c, initialSelectedTemplateId: l, canCreateAtRoot: u }) {
6
- return /* @__PURE__ */ r(e, {
7
- isDisabled: c,
8
- isLoading: s,
9
- children: /* @__PURE__ */ r(t, {
10
- namespaceFQN: i,
11
- itemsService: a,
12
- eventService: o,
13
- initialSelectedTemplateId: l,
14
- canCreateAtRoot: u,
15
- children: /* @__PURE__ */ r(n, {})
4
+ import { TooltipProvider as r } from "@box/blueprint-web";
5
+ import { jsx as i } from "react/jsx-runtime";
6
+ function a({ enterpriseId: a, itemsService: o, eventService: s, isLoading: c, isDisabled: l, initialSelectedTemplateId: u, canCreateAtRoot: d, appliedTemplateIds: f }) {
7
+ return /* @__PURE__ */ i(r, { children: /* @__PURE__ */ i(e, {
8
+ appliedTemplateIds: f,
9
+ isDisabled: l,
10
+ isLoading: c,
11
+ children: /* @__PURE__ */ i(t, {
12
+ namespaceFQN: a,
13
+ itemsService: o,
14
+ eventService: s,
15
+ initialSelectedTemplateId: u,
16
+ canCreateAtRoot: d,
17
+ children: /* @__PURE__ */ i(n, {})
16
18
  })
17
- });
19
+ }) });
18
20
  }
19
- export { i as MetadataTemplateBrowser };
21
+ export { a as MetadataTemplateBrowser };
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "আপনি যা খুঁজছেন তা আমরা খুঁজে পায়নি",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "ফলাফল অনুসন্ধান করুন",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "অনুসন্ধান করার সময় কোনো সমস্যা হয়েছে।",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName} এডিট করুন",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "আরও আইটেম লোড করুন"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Vi kunne ikke finde det, du leder efter",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Søgeresultater",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Noget gik galt under søgningen.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Rediger {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Indlæs flere elementer"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Ihre Suche ergab keine Ergebnisse",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Suchergebnisse",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Während der Suche ist ein Fehler aufgetreten.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName} bearbeiten",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Weitere Elemente laden"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "We couldn’t find what you’re looking for",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Search results",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Something went wrong while searching.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Edit {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Load more items"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "We couldn't find what you're looking for",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Search results",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Something went wrong while searching.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Edit {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Load more items"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "We couldn’t find what you’re looking for",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Search results",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Something went wrong while searching.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Edit {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Load more items"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "We couldn't find what you're looking for",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Search results",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Something went wrong while searching.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Edit {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Load more items"
28
29
  }
@@ -46,6 +46,8 @@ groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading = We co
46
46
  groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel = Search results
47
47
  # Error body when a search request fails
48
48
  groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody = Something went wrong while searching.
49
+ # Tooltip shown on template rows that have already been applied to the current item
50
+ groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied = Template is already applied.
49
51
  # Aria label for the pencil button that opens template edit
50
52
  groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel = Edit {displayName}
51
53
  # Aria label for the sentinel row shown while more items are loading
@@ -1,28 +1,29 @@
1
1
  export default {
2
- "groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.breadcrumbAriaLabel": "⟦萬萬 Ņäνîğǻťιőń 國國⟧",
3
- "groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.enterpriseCrumbLabel": "⟦萬萬 ÈητєґΡѓíşę 國國⟧",
4
- "groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.truncatedLinksIconAriaLabel": "⟦萬萬 Ŝнσώ mόяе 國國⟧",
5
- "groupSharedFeatures.metadataTemplateBrowser.browseList.browseErrorBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Śómëťħîŋĝ ẁέήτ ŵяòпġ ŵнιļέ ĺσâďїпġ τħїѕ ńāmëşΡãċē. 國國國國國國國國國國國國國國⟧",
6
- "groupSharedFeatures.metadataTemplateBrowser.browseList.createFirstTemplateButtonLabel": "⟦萬萬萬萬萬萬 Ċѓєäŧě ƒĩяşţ τèmΡĺăţє 國國國國國國⟧",
7
- "groupSharedFeatures.metadataTemplateBrowser.browseList.emptyStateBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ťħęѓė áŗє лō ţĕmΡĺäŧеş ōг йämєѕΡá¢еŝ ïπ ŧĥĩѕ ƒõĺďєя. 國國國國國國國國國國國國國國國⟧",
8
- "groupSharedFeatures.metadataTemplateBrowser.browseList.listAriaLabel": "⟦萬萬萬萬萬 Мēťåďäτą ťëmΡļăťêѕ 國國國國國⟧",
9
- "groupSharedFeatures.metadataTemplateBrowser.container.createTemplateButtonLabel": "⟦萬萬萬 Йéŵ ŢеmΡļåťе 國國國⟧",
10
- "groupSharedFeatures.metadataTemplateBrowser.container.initialEmptyStateBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ăŧ ŧнé mömεήť, ťнегë ǻŗе пø méťâďàţà ťεmΡĺãťèѕ ґęάďỳ ƒŏŕ üŝè. Ύôŭ ċαη сŗėǻţê τнê ƒįгŝτ óлê ьŷ ŕĕăčħïπġ òúτ ťö ўŏũř Αďmíπ. 國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國⟧",
11
- "groupSharedFeatures.metadataTemplateBrowser.container.initialLoadErrorBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬 Şòmёťĥϊʼnġ щêлť ώґσлĝ шħίļé ľöäďĭηġ τémΡĺâţĕѕ. 國國國國國國國國國國國國國⟧",
12
- "groupSharedFeatures.metadataTemplateBrowser.container.loadingAriaLabel": "⟦萬萬萬萬萬 Ľοǻďїηĝ τěmΡļáţēŝ 國國國國國⟧",
13
- "groupSharedFeatures.metadataTemplateBrowser.container.searchInputAriaLabel": "⟦萬萬萬萬 Ѕεäŕ¢ħ ťєmΡļǻτéś 國國國國⟧",
14
- "groupSharedFeatures.metadataTemplateBrowser.container.searchInputClearAriaLabel": "⟦萬萬萬 Ċľéăя ŝеåґćħ 國國國⟧",
15
- "groupSharedFeatures.metadataTemplateBrowser.container.searchInputPlaceholder": "⟦萬萬萬萬 Ŝēαѓ¢н τεmΡľàťеѕ 國國國國⟧",
16
- "groupSharedFeatures.metadataTemplateBrowser.errorState.retryLabel": "⟦萬萬 Ŧŗý άğǻìʼn 國國⟧",
17
- "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.errorIconAriaLabel": "⟦萬 Εřґóг 國⟧",
18
- "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadMoreErrorBody": "⟦萬萬萬萬萬萬萬 ₣āîľєď ţό ĺŏâď mоřέ їτėmś. 國國國國國國國⟧",
19
- "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadingRowAriaLabel": "⟦萬萬萬萬萬 Ĺòάďιйĝ mŏŗé ïţēmŝ 國國國國國⟧",
20
- "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.retryLabel": "⟦萬萬 Ţřў äĝαīή 國國⟧",
21
- "groupSharedFeatures.metadataTemplateBrowser.namespaceRow.navigateAriaLabel": "⟦萬萬萬萬萬 Ñάνįĝąťë іпŧо {displayName} 國國國國國⟧",
22
- "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ţѓў ũşїʼnġ şìmΡĺĕг şèǻŕ¢ĥ ťєґǻиď τĥέп ƒіĺτèяίŋġ ťнε гεѕµĺτŝ. 國國國國國國國國國國國國國國國國國國⟧",
23
- "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "⟦萬萬萬萬萬萬萬萬萬萬萬 Щè çòµĺďń'τ ƒíйď ŵĥäτ ÿôů'яĕ ļöōķіиğ ƒőř 國國國國國國國國國國國⟧",
24
- "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "⟦萬萬萬萬 Ŝεαгċħ ŗėśµĺτş 國國國國⟧",
25
- "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "⟦萬萬萬萬萬萬萬萬萬萬萬 Ŝômëŧĥϊńĝ ẃëŋŧ ωѓőήğ ώĥїļé śеáґĉĥìйġ. 國國國國國國國國國國國⟧",
26
- "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "⟦萬萬 Ëďïţ {displayName} 國國⟧",
27
- "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "⟦萬萬萬萬 Ľσáď møŕê ïťєmѕ 國國國國⟧"
2
+ "groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.breadcrumbAriaLabel": "⟦萬萬 Йáνιġąŧіòи 國國⟧",
3
+ "groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.enterpriseCrumbLabel": "⟦萬萬 ΣлťéяΡѓīśε 國國⟧",
4
+ "groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.truncatedLinksIconAriaLabel": "⟦萬萬 Ŝĥôω mŏяε 國國⟧",
5
+ "groupSharedFeatures.metadataTemplateBrowser.browseList.browseErrorBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Śómėτнϊήġ ẃёňŧ ωгоńġ шĥīĺє ľοǻďϊʼnġ τħїś ʼnǻmėѕΡāĉę. 國國國國國國國國國國國國國國⟧",
6
+ "groupSharedFeatures.metadataTemplateBrowser.browseList.createFirstTemplateButtonLabel": "⟦萬萬萬萬萬萬 Ĉяεăťé ƒϊŗѕŧ ţémΡļäŧé 國國國國國國⟧",
7
+ "groupSharedFeatures.metadataTemplateBrowser.browseList.emptyStateBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ŧħéгĕ ăŕé йо ťęmΡĺάŧеѕ ôř ʼnąmеśΡąćěѕ ιň ťħíş ƒøĺďеґ. 國國國國國國國國國國國國國國國⟧",
8
+ "groupSharedFeatures.metadataTemplateBrowser.browseList.listAriaLabel": "⟦萬萬萬萬萬 Μèťáďαţά τëmΡľâτëś 國國國國國⟧",
9
+ "groupSharedFeatures.metadataTemplateBrowser.container.createTemplateButtonLabel": "⟦萬萬萬 Ňėώ ŦémΡļαŧє 國國國⟧",
10
+ "groupSharedFeatures.metadataTemplateBrowser.container.initialEmptyStateBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Âť ŧĥέ mōmèпţ, ţĥęŕε äŗě ňσ mеŧαďåţǻ ţĕmΡľāτεѕ ґĕáďў ƒőŕ ũѕё. Ŷøű сαи ćřέǻţê ťнě ƒϊŗŝτ оηę ьў яěãçĥϊпğ όùŧ ŧø ÿóũг Άďmίή. 國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國⟧",
11
+ "groupSharedFeatures.metadataTemplateBrowser.container.initialLoadErrorBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬 Śømєţĥìńġ щёлť шřôлğ щĥіļě ļöåďįпĝ ţёmΡĺαťěŝ. 國國國國國國國國國國國國國⟧",
12
+ "groupSharedFeatures.metadataTemplateBrowser.container.loadingAriaLabel": "⟦萬萬萬萬萬 Ĺõąďίŋĝ ŧέmΡĺάţęѕ 國國國國國⟧",
13
+ "groupSharedFeatures.metadataTemplateBrowser.container.searchInputAriaLabel": "⟦萬萬萬萬 Ѕēáґčĥ ţеmΡľăτеѕ 國國國國⟧",
14
+ "groupSharedFeatures.metadataTemplateBrowser.container.searchInputClearAriaLabel": "⟦萬萬萬 Ćľёáя śęãřčн 國國國⟧",
15
+ "groupSharedFeatures.metadataTemplateBrowser.container.searchInputPlaceholder": "⟦萬萬萬萬 Şéǻяćħ ţеmΡĺάτêş 國國國國⟧",
16
+ "groupSharedFeatures.metadataTemplateBrowser.errorState.retryLabel": "⟦萬萬 Ţґў ąĝāíи 國國⟧",
17
+ "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.errorIconAriaLabel": "⟦萬 Èгяõґ 國⟧",
18
+ "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadMoreErrorBody": "⟦萬萬萬萬萬萬萬 ₣åіļеď ŧø ľòάď móґē įτĕmŝ. 國國國國國國國⟧",
19
+ "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadingRowAriaLabel": "⟦萬萬萬萬萬 Ĺöāďįйġ mοґĕ ίťėmѕ 國國國國國⟧",
20
+ "groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.retryLabel": "⟦萬萬 Ŧгý áġάîŋ 國國⟧",
21
+ "groupSharedFeatures.metadataTemplateBrowser.namespaceRow.navigateAriaLabel": "⟦萬萬萬萬萬 Ńāνíġåţέ īήτó {displayName} 國國國國國⟧",
22
+ "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateBody": "⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ţѓў ûѕìʼnğ ѕϊmΡĺêŗ şëãяćн τĕѓàŋď ţħέй ƒïļτёřїņġ τħė ѓëśűļţś. 國國國國國國國國國國國國國國國國國國⟧",
23
+ "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "⟦萬萬萬萬萬萬萬萬萬萬萬 Ŵĕ ĉόúĺďй'ţ ƒιņď щнãť ýσù'ŗέ ļòòĸϊйġ ƒóŕ 國國國國國國國國國國國⟧",
24
+ "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "⟦萬萬萬萬 Śêäŗсħ ŕєşųľŧŝ 國國國國⟧",
25
+ "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "⟦萬萬萬萬萬萬萬萬萬萬萬 Ŝómēţĥíńġ ẁεŋţ щѓôηġ ώнîľê şέăŕĉħîņġ. 國國國國國國國國國國國⟧",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
27
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "⟦萬萬 Ēďіτ {displayName} 國國⟧",
28
+ "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "⟦萬萬萬萬 Ļöàď mŏгé įτėmŝ 國國國國⟧"
28
29
  }
@@ -1,52 +1,52 @@
1
1
  # Aria label for the breadcrumb navigation element
2
- groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.breadcrumbAriaLabel = ⟦萬萬 Ņäνîğǻťιőń 國國⟧
2
+ groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.breadcrumbAriaLabel = ⟦萬萬 Йáνιġąŧіòи 國國⟧
3
3
  # Label for the root-level breadcrumb crumb that navigates back to the enterprise namespace
4
- groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.enterpriseCrumbLabel = ⟦萬萬 ÈητєґΡѓíşę 國國⟧
4
+ groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.enterpriseCrumbLabel = ⟦萬萬 ΣлťéяΡѓīśε 國國⟧
5
5
  # Aria label for the icon button shown when breadcrumb crumbs are truncated
6
- groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.truncatedLinksIconAriaLabel = ⟦萬萬 Ŝнσώ mόяе 國國⟧
6
+ groupSharedFeatures.metadataTemplateBrowser.breadcrumbNavigation.truncatedLinksIconAriaLabel = ⟦萬萬 Ŝĥôω mŏяε 國國⟧
7
7
  # Error body when navigating into a namespace fails to load
8
- groupSharedFeatures.metadataTemplateBrowser.browseList.browseErrorBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Śómëťħîŋĝ ẁέήτ ŵяòпġ ŵнιļέ ĺσâďїпġ τħїѕ ńāmëşΡãċē. 國國國國國國國國國國國國國國⟧
8
+ groupSharedFeatures.metadataTemplateBrowser.browseList.browseErrorBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Śómėτнϊήġ ẃёňŧ ωгоńġ шĥīĺє ľοǻďϊʼnġ τħїś ʼnǻmėѕΡāĉę. 國國國國國國國國國國國國國國⟧
9
9
  # Button label shown in the empty namespace state when the user is allowed to create a template
10
- groupSharedFeatures.metadataTemplateBrowser.browseList.createFirstTemplateButtonLabel = ⟦萬萬萬萬萬萬 Ċѓєäŧě ƒĩяşţ τèmΡĺăţє 國國國國國國⟧
10
+ groupSharedFeatures.metadataTemplateBrowser.browseList.createFirstTemplateButtonLabel = ⟦萬萬萬萬萬萬 Ĉяεăťé ƒϊŗѕŧ ţémΡļäŧé 國國國國國國⟧
11
11
  # Body text shown when the current namespace has no child namespaces or templates
12
- groupSharedFeatures.metadataTemplateBrowser.browseList.emptyStateBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ťħęѓė áŗє лō ţĕmΡĺäŧеş ōг йämєѕΡá¢еŝ ïπ ŧĥĩѕ ƒõĺďєя. 國國國國國國國國國國國國國國國⟧
12
+ groupSharedFeatures.metadataTemplateBrowser.browseList.emptyStateBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ŧħéгĕ ăŕé йо ťęmΡĺάŧеѕ ôř ʼnąmеśΡąćěѕ ιň ťħíş ƒøĺďеґ. 國國國國國國國國國國國國國國國⟧
13
13
  # Accessible label for the browse list
14
- groupSharedFeatures.metadataTemplateBrowser.browseList.listAriaLabel = ⟦萬萬萬萬萬 Мēťåďäτą ťëmΡļăťêѕ 國國國國國⟧
14
+ groupSharedFeatures.metadataTemplateBrowser.browseList.listAriaLabel = ⟦萬萬萬萬萬 Μèťáďαţά τëmΡľâτëś 國國國國國⟧
15
15
  # Label for the button that opens the template editor to create a new template in the current namespace
16
- groupSharedFeatures.metadataTemplateBrowser.container.createTemplateButtonLabel = ⟦萬萬萬 Йéŵ ŢеmΡļåťе 國國國⟧
16
+ groupSharedFeatures.metadataTemplateBrowser.container.createTemplateButtonLabel = ⟦萬萬萬 Ňėώ ŦémΡļαŧє 國國國⟧
17
17
  # Body text shown when the initial load returns no templates at all
18
- groupSharedFeatures.metadataTemplateBrowser.container.initialEmptyStateBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ăŧ ŧнé mömεήť, ťнегë ǻŗе пø méťâďàţà ťεmΡĺãťèѕ ґęάďỳ ƒŏŕ üŝè. Ύôŭ ċαη сŗėǻţê τнê ƒįгŝτ óлê ьŷ ŕĕăčħïπġ òúτ ťö ўŏũř Αďmíπ. 國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國⟧
18
+ groupSharedFeatures.metadataTemplateBrowser.container.initialEmptyStateBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Âť ŧĥέ mōmèпţ, ţĥęŕε äŗě ňσ mеŧαďåţǻ ţĕmΡľāτεѕ ґĕáďў ƒőŕ ũѕё. Ŷøű сαи ćřέǻţê ťнě ƒϊŗŝτ оηę ьў яěãçĥϊпğ όùŧ ŧø ÿóũг Άďmίή. 國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國國⟧
19
19
  # Error body when the initial template list fails to load
20
- groupSharedFeatures.metadataTemplateBrowser.container.initialLoadErrorBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬 Şòmёťĥϊʼnġ щêлť ώґσлĝ шħίļé ľöäďĭηġ τémΡĺâţĕѕ. 國國國國國國國國國國國國國⟧
20
+ groupSharedFeatures.metadataTemplateBrowser.container.initialLoadErrorBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬 Śømєţĥìńġ щёлť шřôлğ щĥіļě ļöåďįпĝ ţёmΡĺαťěŝ. 國國國國國國國國國國國國國⟧
21
21
  # Aria label for the full-area skeleton shown while templates are loading
22
- groupSharedFeatures.metadataTemplateBrowser.container.loadingAriaLabel = ⟦萬萬萬萬萬 Ľοǻďїηĝ τěmΡļáţēŝ 國國國國國⟧
22
+ groupSharedFeatures.metadataTemplateBrowser.container.loadingAriaLabel = ⟦萬萬萬萬萬 Ĺõąďίŋĝ ŧέmΡĺάţęѕ 國國國國國⟧
23
23
  # Aria label for the template search input
24
- groupSharedFeatures.metadataTemplateBrowser.container.searchInputAriaLabel = ⟦萬萬萬萬 Ѕεäŕ¢ħ ťєmΡļǻτéś 國國國國⟧
24
+ groupSharedFeatures.metadataTemplateBrowser.container.searchInputAriaLabel = ⟦萬萬萬萬 Ѕēáґčĥ ţеmΡľăτеѕ 國國國國⟧
25
25
  # Aria label for the clear button inside the template search input
26
- groupSharedFeatures.metadataTemplateBrowser.container.searchInputClearAriaLabel = ⟦萬萬萬 Ċľéăя ŝеåґćħ 國國國⟧
26
+ groupSharedFeatures.metadataTemplateBrowser.container.searchInputClearAriaLabel = ⟦萬萬萬 Ćľёáя śęãřčн 國國國⟧
27
27
  # Placeholder text for the template search input
28
- groupSharedFeatures.metadataTemplateBrowser.container.searchInputPlaceholder = ⟦萬萬萬萬 Ŝēαѓ¢н τεmΡľàťеѕ 國國國國⟧
28
+ groupSharedFeatures.metadataTemplateBrowser.container.searchInputPlaceholder = ⟦萬萬萬萬 Şéǻяćħ ţеmΡĺάτêş 國國國國⟧
29
29
  # Retry button label in the error state
30
- groupSharedFeatures.metadataTemplateBrowser.errorState.retryLabel = ⟦萬萬 Ŧŗý άğǻìʼn 國國⟧
30
+ groupSharedFeatures.metadataTemplateBrowser.errorState.retryLabel = ⟦萬萬 Ţґў ąĝāíи 國國⟧
31
31
  # Aria label for the error icon in the load-more error notice
32
- groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.errorIconAriaLabel = ⟦萬 Εřґóг 國⟧
32
+ groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.errorIconAriaLabel = ⟦萬 Èгяõґ 國⟧
33
33
  # Error message shown at the bottom of the list when a load-more request fails
34
- groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadMoreErrorBody = ⟦萬萬萬萬萬萬萬 ₣āîľєď ţό ĺŏâď mоřέ їτėmś. 國國國國國國國⟧
34
+ groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadMoreErrorBody = ⟦萬萬萬萬萬萬萬 ₣åіļеď ŧø ľòάď móґē įτĕmŝ. 國國國國國國國⟧
35
35
  # Aria label for the skeleton row shown while more items are loading
36
- groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadingRowAriaLabel = ⟦萬萬萬萬萬 Ĺòάďιйĝ mŏŗé ïţēmŝ 國國國國國⟧
36
+ groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.loadingRowAriaLabel = ⟦萬萬萬萬萬 Ĺöāďįйġ mοґĕ ίťėmѕ 國國國國國⟧
37
37
  # Label for the retry button shown alongside a load-more error
38
- groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.retryLabel = ⟦萬萬 Ţřў äĝαīή 國國⟧
38
+ groupSharedFeatures.metadataTemplateBrowser.loadMoreFeedback.retryLabel = ⟦萬萬 Ŧгý áġάîŋ 國國⟧
39
39
  # Aria label for the chevron button that navigates into a namespace
40
- groupSharedFeatures.metadataTemplateBrowser.namespaceRow.navigateAriaLabel = ⟦萬萬萬萬萬 Ñάνįĝąťë іпŧо {displayName} 國國國國國⟧
40
+ groupSharedFeatures.metadataTemplateBrowser.namespaceRow.navigateAriaLabel = ⟦萬萬萬萬萬 Ńāνíġåţέ īήτó {displayName} 國國國國國⟧
41
41
  # Body text shown when a search returns no results
42
- groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ţѓў ũşїʼnġ şìmΡĺĕг şèǻŕ¢ĥ ťєґǻиď τĥέп ƒіĺτèяίŋġ ťнε гεѕµĺτŝ. 國國國國國國國國國國國國國國國國國國⟧
42
+ groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateBody = ⟦萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬萬 Ţѓў ûѕìʼnğ ѕϊmΡĺêŗ şëãяćн τĕѓàŋď ţħέй ƒïļτёřїņġ τħė ѓëśűļţś. 國國國國國國國國國國國國國國國國國國⟧
43
43
  # Heading shown when a search returns no results
44
- groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading = ⟦萬萬萬萬萬萬萬萬萬萬萬 Щè çòµĺďń'τ ƒíйď ŵĥäτ ÿôů'яĕ ļöōķіиğ ƒőř 國國國國國國國國國國國⟧
44
+ groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading = ⟦萬萬萬萬萬萬萬萬萬萬萬 Ŵĕ ĉόúĺďй'ţ ƒιņď щнãť ýσù'ŗέ ļòòĸϊйġ ƒóŕ 國國國國國國國國國國國⟧
45
45
  # Aria label for the search results grid list
46
- groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel = ⟦萬萬萬萬 Ŝεαгċħ ŗėśµĺτş 國國國國⟧
46
+ groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel = ⟦萬萬萬萬 Śêäŗсħ ŕєşųľŧŝ 國國國國⟧
47
47
  # Error body when a search request fails
48
- groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody = ⟦萬萬萬萬萬萬萬萬萬萬萬 Ŝômëŧĥϊńĝ ẃëŋŧ ωѓőήğ ώĥїļé śеáґĉĥìйġ. 國國國國國國國國國國國⟧
48
+ groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody = ⟦萬萬萬萬萬萬萬萬萬萬萬 Ŝómēţĥíńġ ẁεŋţ щѓôηġ ώнîľê şέăŕĉħîņġ. 國國國國國國國國國國國⟧
49
49
  # Aria label for the pencil button that opens template edit
50
- groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel = ⟦萬萬 Ëďïţ {displayName} 國國⟧
50
+ groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel = ⟦萬萬 Ēďіτ {displayName} 國國⟧
51
51
  # Aria label for the sentinel row shown while more items are loading
52
- groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel = ⟦萬萬萬萬 Ľσáď møŕê ïťєmѕ 國國國國⟧
52
+ groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel = ⟦萬萬萬萬 Ļöàď mŏгé įτėmŝ 國國國國⟧
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "No hemos podido encontrar lo que busca",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Buscar resultados",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Se ha producido un error durante la búsqueda.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Editar {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Cargar más elementos"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "No hemos podido encontrar lo que busca",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Buscar resultados",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Se ha producido un error durante la búsqueda.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Editar {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Cargar más elementos"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Emme löytäneet etsimääsi kohdetta",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Hakutulokset",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Jokin meni pieleen haettaessa.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Muokkaa {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Lataa lisää kohteita"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Nous ne pouvons pas trouver ce que vous cherchez",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Résultats de recherche",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Une erreur est survenue lors de la recherche.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Modifier {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Charger plus d’éléments"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Nous ne pouvons pas trouver ce que vous cherchez",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Résultats de recherche",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Une erreur est survenue lors de la recherche.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Modifier {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Charger plus d’éléments"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "हमें वह नहीं मिला जो आप ढूंढ रहे हैं",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "खोज परिणाम",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "खोज करते समय कुछ गलत हुआ है।",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName} संपादित करें",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "और अधिक आइटम्स लोड करें"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Impossibile trovare ciò che stai cercando",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Risultati della ricerca",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Si è verificato un errore durante la ricerca.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Modifica {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Carica più elementi"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "検索対象が見つかりませんでした",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "検索結果",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "検索中に問題が発生しました。",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName}を編集",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "その他の項目を読み込む"
28
29
  }
@@ -1 +1 @@
1
- [{"id":"groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel","description":"Aria label for the pencil button that opens template edit","defaultMessage":"Edit {displayName}"}]
1
+ [{"id":"groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied","description":"Tooltip shown on template rows that have already been applied to the current item","defaultMessage":"Template is already applied."},{"id":"groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel","description":"Aria label for the pencil button that opens template edit","defaultMessage":"Edit {displayName}"}]
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "찾고 있는 것을 찾을 수 없습니다",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "검색 결과",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "검색 중 문제가 발생했습니다.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName} 편집",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "항목 더 불러오기"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Vi fant ikke det du leter etter",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Søkeresultater",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Noe gikk galt under søket.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Rediger {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Last inn flere elementer"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "We konden niet vinden wat u zoekt",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Zoekresultaten",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Er is iets fout gegaan tijdens het zoeken.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName} bewerken",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Meer items laden"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Nie można znaleźć tego, czego szukasz",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Wyniki wyszukiwania",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Podczas wyszukiwania wystąpił błąd.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Edytuj {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Wczytaj więcej elementów"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Não conseguimos encontrar o que você está procurando",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Resultados da pesquisa",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Algo deu errado ao pesquisar.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Editar {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Carregar mais itens"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Нам не удалось найти то, что вы ищете",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Результаты поиска",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Во время поиска произошла ошибка.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Изменить {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Загрузить больше элементов"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Vi kunde inte hitta det du letar efter",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Sökresultat",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Något gick fel vid sökning.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "Redigera {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Läs in fler objekt"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "Aradığınız şeyi bulamadık",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "Arama sonuçları",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "Arama sırasında bir hata oluştu.",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "{displayName} öğesini düzenleyin",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "Daha fazla öğe yükleyin"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "未找到您要查找的内容",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "搜索结果",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "搜索时出错。",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "编辑 {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "加载更多项目"
28
29
  }
@@ -23,6 +23,7 @@ export default {
23
23
  "groupSharedFeatures.metadataTemplateBrowser.searchList.emptyStateHeading": "我們找不到您要找的內容",
24
24
  "groupSharedFeatures.metadataTemplateBrowser.searchList.listAriaLabel": "搜尋結果",
25
25
  "groupSharedFeatures.metadataTemplateBrowser.searchList.searchErrorBody": "搜尋時發生問題。",
26
+ "groupSharedFeatures.metadataTemplateBrowser.templateRow.alreadyApplied": "Template is already applied.",
26
27
  "groupSharedFeatures.metadataTemplateBrowser.templateRow.editAriaLabel": "編輯 {displayName}",
27
28
  "groupSharedFeatures.metadataTemplateBrowser.virtualizedGridList.loadMoreSentinelAriaLabel": "載入更多項目"
28
29
  }
@@ -1 +1 @@
1
- ._row_ybl3t_2{border-radius:var(--bp-radius-06);box-sizing:border-box;cursor:pointer;align-items:center;gap:var(--bp-space-020,8px);outline-offset:-2px;padding:var(--bp-space-020,8px) var(--bp-space-030,12px);flex:1;width:100%;display:flex}._trailingSlotHoverOnly_ybl3t_15{opacity:0}._item_ybl3t_19{outline:none;min-height:40px;display:flex}._item_ybl3t_19:hover ._row_ybl3t_2{background-color:var(--bp-surface-surface-hover)}._item_ybl3t_19[data-selected] ._row_ybl3t_2{background-color:var(--bp-surface-item-small-surface-selected);outline:var(--bp-border-02) solid var(--bp-border-list-item-border-selected)}._item_ybl3t_19[data-focus-visible] ._row_ybl3t_2{outline:2px solid var(--bp-outline-focus-on-light)}._item_ybl3t_19._disabled_ybl3t_40 ._row_ybl3t_2{cursor:default;opacity:.3}._item_ybl3t_19._disabled_ybl3t_40[data-focus-visible] ._row_ybl3t_2{opacity:1}._item_ybl3t_19._disabled_ybl3t_40:hover:not([data-selected]) ._row_ybl3t_2,._item_ybl3t_19._disabled_ybl3t_40[data-hovered]:not([data-selected]) ._row_ybl3t_2{background-color:#0000}._item_ybl3t_19:hover ._trailingSlotHoverOnly_ybl3t_15,._item_ybl3t_19[data-hovered] ._trailingSlotHoverOnly_ybl3t_15,._item_ybl3t_19:focus-within ._trailingSlotHoverOnly_ybl3t_15{opacity:1}._leadingIcon_ybl3t_59{flex-shrink:0;align-items:center;display:flex}._content_ybl3t_66{flex:1;min-width:0}._trailingSlot_ybl3t_15{flex-shrink:0}._subtitle_ybl3t_77{overflow-wrap:break-word;display:block}
1
+ ._row_1q43q_2{border-radius:var(--bp-radius-06);box-sizing:border-box;cursor:pointer;align-items:center;gap:var(--bp-space-020,8px);outline-offset:-2px;padding:var(--bp-space-020,8px) var(--bp-space-030,12px);flex:1;width:100%;display:flex}._leadingIcon_1q43q_15{flex-shrink:0;align-items:center;display:flex}._content_1q43q_22{flex:1;min-width:0}._trailingSlotHoverOnly_1q43q_29{opacity:0}._item_1q43q_33{outline:none;min-height:40px;display:flex}._item_1q43q_33:hover ._row_1q43q_2{background-color:var(--bp-surface-surface-hover)}._item_1q43q_33[data-selected] ._row_1q43q_2{background-color:var(--bp-surface-item-small-surface-selected);outline:var(--bp-border-02) solid var(--bp-border-list-item-border-selected)}._item_1q43q_33[data-focus-visible] ._row_1q43q_2{outline:2px solid var(--bp-outline-focus-on-light)}._item_1q43q_33._disabled_1q43q_54 ._row_1q43q_2{cursor:default;opacity:.3}._item_1q43q_33._applied_1q43q_61 ._row_1q43q_2{cursor:default}._item_1q43q_33._applied_1q43q_61 ._content_1q43q_22,._item_1q43q_33._applied_1q43q_61 ._leadingIcon_1q43q_15{opacity:.3}._item_1q43q_33._disabled_1q43q_54[data-focus-visible] ._row_1q43q_2{opacity:1}._item_1q43q_33:is(._disabled_1q43q_54,._applied_1q43q_61):hover:not([data-selected]) ._row_1q43q_2,._item_1q43q_33:is(._disabled_1q43q_54,._applied_1q43q_61)[data-hovered]:not([data-selected]) ._row_1q43q_2{background-color:#0000}._item_1q43q_33:hover ._trailingSlotHoverOnly_1q43q_29,._item_1q43q_33[data-hovered] ._trailingSlotHoverOnly_1q43q_29,._item_1q43q_33:focus-within ._trailingSlotHoverOnly_1q43q_29{opacity:1}._trailingSlot_1q43q_29{flex-shrink:0}._subtitle_1q43q_90{overflow-wrap:break-word;display:block}
@@ -15,11 +15,24 @@ interface BrowserRowProps {
15
15
  * reach interactive elements inside.
16
16
  */
17
17
  readonly isTrailingSlotHoverOnly?: boolean;
18
+ /**
19
+ * When true, this individual row is rendered as visually disabled (dimmed content/icon,
20
+ * default cursor). Unlike the global `isDisabled` flag, which uses React Aria's `isDisabled`
21
+ * prop and removes the row from the tab/focus order entirely, `isApplied` rows use
22
+ * `aria-disabled` so they remain focusable — keyboard users can arrow-key to them and see
23
+ * the tooltip. Activation is suppressed in `VirtualizedGridList.handleSelectionChange`.
24
+ */
25
+ readonly isApplied?: boolean;
26
+ /**
27
+ * When provided, a tooltip with this content is shown on hover over the row.
28
+ * Typically used together with `isApplied` to explain why the row is disabled.
29
+ */
30
+ readonly tooltipContent?: React.ReactNode;
18
31
  }
19
32
  /**
20
33
  * Generic accessible list row used by `NamespaceRow` and `TemplateRow`.
21
34
  * Supports an optional leading icon, primary title, subtitle, and a trailing
22
35
  * action slot that can be revealed only on hover/focus.
23
36
  */
24
- export declare function BrowserRow({ id, leadingIcon, title, subtitle, trailingSlot, isTrailingSlotHoverOnly, }: BrowserRowProps): import("react/jsx-runtime").JSX.Element;
37
+ export declare function BrowserRow({ id, leadingIcon, title, subtitle, trailingSlot, isTrailingSlotHoverOnly, isApplied, tooltipContent, }: BrowserRowProps): import("react/jsx-runtime").JSX.Element;
25
38
  export {};
@@ -1,4 +1,9 @@
1
1
  export declare const messages: {
2
+ alreadyApplied: {
3
+ defaultMessage: string;
4
+ description: string;
5
+ id: string;
6
+ };
2
7
  editAriaLabel: {
3
8
  defaultMessage: string;
4
9
  description: string;
@@ -31,8 +31,9 @@ export interface ConsumerStateContextProviderProps {
31
31
  readonly children: React.ReactNode;
32
32
  readonly isLoading?: boolean;
33
33
  readonly isDisabled?: boolean;
34
+ readonly appliedTemplateIds?: ReadonlySet<string>;
34
35
  }
35
- export declare function ConsumerStateContextProvider({ children, isLoading, isDisabled, }: Readonly<ConsumerStateContextProviderProps>): import("react/jsx-runtime").JSX.Element;
36
+ export declare function ConsumerStateContextProvider({ children, isLoading, isDisabled, appliedTemplateIds, }: Readonly<ConsumerStateContextProviderProps>): import("react/jsx-runtime").JSX.Element;
36
37
  /** Exposes all browser action creators (navigate, search, select, retry, etc.) to the component tree. */
37
38
  export declare const BrowserActionsContext: import('react').Context<BrowserActionsContextValue | null>;
38
39
  interface BrowserActionsContextProviderProps {
@@ -22,9 +22,14 @@ export interface MetadataTemplateBrowserProps {
22
22
  * @default false
23
23
  */
24
24
  canCreateAtRoot?: boolean;
25
+ /**
26
+ * Set of template IDs that are already applied to the current item.
27
+ * Rows matching these IDs are rendered as disabled with a "Template is already applied." tooltip.
28
+ */
29
+ appliedTemplateIds?: ReadonlySet<string>;
25
30
  }
26
31
  /**
27
32
  * Public entry point for the metadata template browser.
28
33
  * Wraps the provider and controller into a single composable component.
29
34
  */
30
- export declare function MetadataTemplateBrowser({ enterpriseId, itemsService, eventService, isLoading, isDisabled, initialSelectedTemplateId, canCreateAtRoot, }: Readonly<MetadataTemplateBrowserProps>): import("react/jsx-runtime").JSX.Element;
35
+ export declare function MetadataTemplateBrowser({ enterpriseId, itemsService, eventService, isLoading, isDisabled, initialSelectedTemplateId, canCreateAtRoot, appliedTemplateIds, }: Readonly<MetadataTemplateBrowserProps>): import("react/jsx-runtime").JSX.Element;
@@ -100,6 +100,8 @@ export interface SelectionStateContextValue {
100
100
  export interface ConsumerStateContextValue {
101
101
  isLoading: boolean;
102
102
  isDisabled: boolean;
103
+ /** Set of template IDs that are already applied and should be shown as disabled with a tooltip. */
104
+ appliedTemplateIds: ReadonlySet<string>;
103
105
  }
104
106
  export interface BrowserActionsContextValue {
105
107
  /** Fetches the root level on mount: namespaces and templates under the enterprise FQN. */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@box/metadata-template-browser",
3
- "version": "1.22.19",
3
+ "version": "1.22.21",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "peerDependencies": {
6
6
  "@box/blueprint-web": "^14.33.0",