@box/metadata-editor 2.3.9 → 2.3.10

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 (158) hide show
  1. package/dist/chunks/add-metadata-template-dropdown-with-browser.js +1 -34
  2. package/dist/chunks/ai-suggestion-field.js +1 -100
  3. package/dist/chunks/autofill-overlay.js +1 -63
  4. package/dist/chunks/combobox-with-api-pagination.js +1 -161
  5. package/dist/chunks/custom-instance-new-field.js +1 -60
  6. package/dist/chunks/custom-instance.js +1 -74
  7. package/dist/chunks/delete-confirmation-modal.js +1 -76
  8. package/dist/chunks/field-action-bar.module.js +1 -7
  9. package/dist/chunks/filter-dropdown-menu.module.js +1 -12
  10. package/dist/chunks/filter-instances-dropdown.js +1 -84
  11. package/dist/chunks/interactive-header-text.js +1 -19
  12. package/dist/chunks/interactive-text.module.js +1 -5
  13. package/dist/chunks/metadata-editor.js +1 -9
  14. package/dist/chunks/metadata-instance-content.js +1 -43
  15. package/dist/chunks/metadata-instance-entry.js +1 -104
  16. package/dist/chunks/metadata-instance-footer.js +1 -25
  17. package/dist/chunks/metadata-instance-form-ai-disclaimer.js +1 -28
  18. package/dist/chunks/metadata-instance-form-autofill-button.js +1 -113
  19. package/dist/chunks/metadata-instance-form-card-wrapper.js +1 -54
  20. package/dist/chunks/metadata-instance-form-footer.js +1 -43
  21. package/dist/chunks/metadata-instance-form-header.js +1 -45
  22. package/dist/chunks/metadata-instance-header.js +1 -52
  23. package/dist/chunks/metadata-instance-list.js +1 -20
  24. package/dist/chunks/metadata-instance.js +1 -60
  25. package/dist/chunks/shared-field-styles.module.js +1 -6
  26. package/dist/chunks/taxonomy-ancestor-status-pill.js +1 -90
  27. package/dist/chunks/types.js +1 -8
  28. package/dist/chunks/update-mode-field-wrapper.js +1 -80
  29. package/dist/chunks/utils.js +1 -88
  30. package/dist/chunks/utils2.js +1 -53
  31. package/dist/esm/index.js +1 -25
  32. package/dist/esm/lib/components/add-metadata-template-dropdown/add-metadata-template-dropdown-with-browser.js +1 -2
  33. package/dist/esm/lib/components/add-metadata-template-dropdown/add-metadata-template-dropdown.js +1 -24
  34. package/dist/esm/lib/components/add-metadata-template-dropdown/index.js +1 -3
  35. package/dist/esm/lib/components/add-metadata-template-dropdown/messages.js +1 -20
  36. package/dist/esm/lib/components/add-metadata-template-dropdown/shared/dropdown-trigger.js +1 -16
  37. package/dist/esm/lib/components/combobox-with-api-pagination/combobox-with-api-pagination.js +1 -2
  38. package/dist/esm/lib/components/combobox-with-api-pagination/index.js +1 -2
  39. package/dist/esm/lib/components/combobox-with-api-pagination/messages.js +1 -32
  40. package/dist/esm/lib/components/combobox-with-api-pagination/request.js +1 -4
  41. package/dist/esm/lib/components/combobox-with-api-pagination/use-async-list.js +1 -118
  42. package/dist/esm/lib/components/combobox-with-api-pagination/utils/is-abort-error.js +1 -11
  43. package/dist/esm/lib/components/combobox-with-api-pagination/utils/use-controllable-state.js +1 -35
  44. package/dist/esm/lib/components/combobox-with-api-pagination/utils/use-intersection-observer.js +1 -75
  45. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-content.js +1 -14
  46. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-empty-state.js +1 -17
  47. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-item.js +1 -15
  48. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-list.js +1 -17
  49. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-root.js +1 -14
  50. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-search.js +1 -37
  51. package/dist/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-trigger.js +1 -8
  52. package/dist/esm/lib/components/filter-dropdown-menu/index.js +1 -17
  53. package/dist/esm/lib/components/filter-dropdown-menu/messages.js +1 -12
  54. package/dist/esm/lib/components/filter-instances-dropdown/filter-instances-dropdown.js +1 -2
  55. package/dist/esm/lib/components/filter-instances-dropdown/index.js +1 -2
  56. package/dist/esm/lib/components/filter-instances-dropdown/messages.js +1 -20
  57. package/dist/esm/lib/components/interactive-header-text/interactive-header-text.js +1 -2
  58. package/dist/esm/lib/components/interactive-text/interactive-text.js +1 -18
  59. package/dist/esm/lib/components/metadata-editor-fields/components/ai-logo-badge/ai-logo-badge.js +1 -36
  60. package/dist/esm/lib/components/metadata-editor-fields/components/ai-logo-badge/index.js +1 -2
  61. package/dist/esm/lib/components/metadata-editor-fields/components/ai-suggestion-field/ai-suggestion-field.js +1 -2
  62. package/dist/esm/lib/components/metadata-editor-fields/components/ai-suggestion-field/index.js +1 -2
  63. package/dist/esm/lib/components/metadata-editor-fields/components/ai-suggestion-field/messages.js +1 -52
  64. package/dist/esm/lib/components/metadata-editor-fields/components/ai-suggestion-field/utils.js +1 -13
  65. package/dist/esm/lib/components/metadata-editor-fields/components/constants.js +1 -2
  66. package/dist/esm/lib/components/metadata-editor-fields/components/low-confidence-badge/index.js +1 -2
  67. package/dist/esm/lib/components/metadata-editor-fields/components/low-confidence-badge/low-confidence-badge.js +1 -24
  68. package/dist/esm/lib/components/metadata-editor-fields/components/low-confidence-suggestion-field/index.js +1 -2
  69. package/dist/esm/lib/components/metadata-editor-fields/components/low-confidence-suggestion-field/low-confidence-suggestion-field.js +1 -68
  70. package/dist/esm/lib/components/metadata-editor-fields/components/low-confidence-suggestion-field/messages.js +1 -32
  71. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-date-field/metadata-date-field.js +1 -44
  72. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-enum-field/metadata-enum-field.js +1 -48
  73. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-float-field/metadata-float-field.js +1 -34
  74. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-float-field/use-float-validation.js +1 -9
  75. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-multi-select-field/metadata-multi-select-field.js +1 -41
  76. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-string-field/metadata-string-field.js +1 -29
  77. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-taxonomy-field/legacy-metadata-taxonomy-field.js +1 -67
  78. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-taxonomy-field/metadata-taxonomy-field.js +1 -16
  79. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-taxonomy-field/metadata-taxonomy-picker-field/metadata-taxonomy-picker-field.js +1 -53
  80. package/dist/esm/lib/components/metadata-editor-fields/components/metadata-taxonomy-field/metadata-taxonomy-picker-field/value-mapping.js +1 -30
  81. package/dist/esm/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/messages.js +1 -32
  82. package/dist/esm/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/mulitple-values-utils.js +1 -8
  83. package/dist/esm/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/update-mode-field-wrapper.js +1 -2
  84. package/dist/esm/lib/components/metadata-editor-fields/editor-field-types.js +1 -32
  85. package/dist/esm/lib/components/metadata-editor-fields/hooks/use-memoized-field-label.js +1 -12
  86. package/dist/esm/lib/components/metadata-editor-fields/hooks/use-review-field-filter.js +1 -36
  87. package/dist/esm/lib/components/metadata-editor-fields/hooks/use-view-reference-tooltip.js +1 -41
  88. package/dist/esm/lib/components/metadata-editor-fields/messages.js +1 -12
  89. package/dist/esm/lib/components/metadata-editor-fields/metadata-editor-field-wrapper.js +1 -189
  90. package/dist/esm/lib/components/metadata-editor-fields/metadata-editor-fields.js +1 -31
  91. package/dist/esm/lib/components/metadata-editor-fields/utils.js +1 -2
  92. package/dist/esm/lib/components/metadata-empty-state/messages.js +1 -44
  93. package/dist/esm/lib/components/metadata-empty-state/metadata-empty-state.js +1 -47
  94. package/dist/esm/lib/components/metadata-instance-editor/index.js +1 -9
  95. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/autofill-overlay/autofill-overlay.js +1 -2
  96. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/autofill-overlay/messages.js +1 -40
  97. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/autofill-overlay/useErrorMessaging.js +1 -23
  98. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance/custom-instance.js +1 -2
  99. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance/messages.js +1 -16
  100. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/custom-instance-new-field.js +1 -2
  101. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/messages.js +1 -44
  102. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/delete-confirmation-modal.js +1 -2
  103. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/messages.js +1 -52
  104. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/constants.js +1 -2
  105. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/metadata-instance-form-card-wrapper.js +1 -2
  106. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/metadata-instance-form.js +1 -136
  107. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/utils.js +1 -2
  108. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-ai-disclaimer/metadata-instance-form-ai-disclaimer.js +1 -2
  109. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-autofill-button/messages.js +1 -24
  110. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-autofill-button/metadata-instance-form-autofill-button.js +1 -2
  111. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/messages.js +1 -20
  112. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/metadata-instance-form-footer.js +1 -2
  113. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/messages.js +1 -6
  114. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/metadata-instance-form-header.js +1 -2
  115. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-inline-notice/messages.js +1 -20
  116. package/dist/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-inline-notice/metadata-instance-form-inline-notice.js +1 -31
  117. package/dist/esm/lib/components/metadata-instance-list/index.js +1 -6
  118. package/dist/esm/lib/components/metadata-instance-list/metadata-instance-list.js +1 -2
  119. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance/metadata-instance.js +1 -2
  120. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-content/metadata-instance-content.js +1 -2
  121. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/messages.js +1 -6
  122. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/metadata-entry-display.js +1 -15
  123. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/metadata-instance-entry.js +1 -2
  124. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/taxonomy-entry/messages.js +1 -24
  125. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/taxonomy-entry/taxonomy-ancestor-status-pill.js +1 -2
  126. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/taxonomy-entry/taxonomy-value.js +1 -25
  127. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/messages.js +1 -12
  128. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/metadata-instance-footer.js +1 -2
  129. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/messages.js +1 -16
  130. package/dist/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/metadata-instance-header.js +1 -2
  131. package/dist/esm/lib/components/metadata-instance-review-notice/messages.js +1 -32
  132. package/dist/esm/lib/components/metadata-instance-review-notice/metadata-instance-review-notice.js +1 -24
  133. package/dist/esm/lib/components/unsaved-changes-modal/index.js +1 -2
  134. package/dist/esm/lib/components/unsaved-changes-modal/messages.js +1 -24
  135. package/dist/esm/lib/components/unsaved-changes-modal/unsaved-changes-modal.js +1 -45
  136. package/dist/esm/lib/components/unsaved-changes-modal/utils.js +1 -4
  137. package/dist/esm/lib/constants.js +1 -15
  138. package/dist/esm/lib/defaults.js +1 -16
  139. package/dist/esm/lib/mappers.js +1 -23
  140. package/dist/esm/lib/messages.js +1 -129
  141. package/dist/esm/lib/metadata-editor.js +1 -2
  142. package/dist/esm/lib/utils/analytics/analytics-context.js +1 -11
  143. package/dist/esm/lib/utils/analytics/events.js +1 -9
  144. package/dist/esm/lib/utils/analytics/index.js +1 -4
  145. package/dist/esm/lib/utils/analytics/with-analytics.js +1 -11
  146. package/dist/esm/lib/utils/api-wrapper.js +1 -13
  147. package/dist/esm/lib/utils/autofill-context.js +1 -66
  148. package/dist/esm/lib/utils/check-if-has-bounding-boxes.js +1 -2
  149. package/dist/esm/lib/utils/confidence-score/format-confidence-score-percent.js +1 -4
  150. package/dist/esm/lib/utils/confidence-score/get-confidence-score-tooltip.js +1 -13
  151. package/dist/esm/lib/utils/confidence-score/get-fields-needing-review.js +1 -6
  152. package/dist/esm/lib/utils/confidence-score/index.js +1 -5
  153. package/dist/esm/lib/utils/confidence-score/is-confidence-score-needing-review.js +1 -5
  154. package/dist/esm/lib/utils/confidence-score/messages.js +1 -16
  155. package/dist/esm/lib/utils/convertDate.js +1 -24
  156. package/dist/esm/lib/utils/is-interactive-form-element.js +1 -2
  157. package/dist/esm/lib/utils/utils.js +1 -4
  158. package/package.json +13 -13
@@ -1,25 +1 @@
1
- import "../../../../metadata-editor-fields/components/update-mode-field-wrapper/mulitple-values-utils.js";
2
- import { messages as e } from "../../../../metadata-editor-fields/components/update-mode-field-wrapper/messages.js";
3
- import { n as t, t as n } from "../../../../../../../chunks/taxonomy-ancestor-status-pill.js";
4
- import { useIntl as r } from "react-intl";
5
- import { jsx as i } from "react/jsx-runtime";
6
- import { FilterChip as a } from "@box/blueprint-web";
7
- var o = ({ value: o, taxonomyNodeFetcher: s, taxonomyKey: c, scope: l, isExternallyOwned: u }) => {
8
- let d = r();
9
- if (!o || !Array.isArray(o) || !o.length) return null;
10
- let f = d.formatMessage(e.multipleValues);
11
- return /* @__PURE__ */ i(a.Group, {
12
- className: t.taxonomyValueGroup,
13
- disabled: u,
14
- name: void 0,
15
- type: "single",
16
- children: o.map((e) => /* @__PURE__ */ i(n, {
17
- displayValue: e.displayValue === "Multiple values" ? f : e.displayValue,
18
- scope: l,
19
- taxonomyKey: c,
20
- taxonomyNodeFetcher: s,
21
- value: e.value
22
- }, e.value))
23
- });
24
- };
25
- export { o as TaxonomyValue };
1
+ import"../../../../metadata-editor-fields/components/update-mode-field-wrapper/mulitple-values-utils.js";import{messages}from"../../../../metadata-editor-fields/components/update-mode-field-wrapper/messages.js";import{n as taxonomy_value_module_default,t as TaxonomyAncestorStatusPill}from"../../../../../../../chunks/taxonomy-ancestor-status-pill.js";import{useIntl}from"react-intl";import{jsx}from"react/jsx-runtime";import{FilterChip}from"@box/blueprint-web";var TaxonomyValue=({value,taxonomyNodeFetcher,taxonomyKey,scope,isExternallyOwned})=>{let intl=useIntl();if(!value||!Array.isArray(value)||!value.length)return null;let translatedLabel=intl.formatMessage(messages.multipleValues);return jsx(FilterChip.Group,{className:taxonomy_value_module_default.taxonomyValueGroup,disabled:isExternallyOwned,name:void 0,type:`single`,children:value.map(item=>jsx(TaxonomyAncestorStatusPill,{displayValue:item.displayValue===`Multiple values`?translatedLabel:item.displayValue,scope,taxonomyKey,taxonomyNodeFetcher,value:item.value},item.value))})};export{TaxonomyValue};
@@ -1,12 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({
3
- showEmptyValuesCTA: {
4
- id: "metadataEditor.viewInstance.metadataInstanceFooter.showEmptyValuesCTA",
5
- defaultMessage: "Show empty values"
6
- },
7
- hideEmptyValuesCTA: {
8
- id: "metadataEditor.viewInstance.metadataInstanceFooter.hideEmptyValuesCTA",
9
- defaultMessage: "Hide empty values"
10
- }
11
- });
12
- export { t as default };
1
+ import{defineMessages}from"react-intl";var messages=defineMessages({showEmptyValuesCTA:{id:`metadataEditor.viewInstance.metadataInstanceFooter.showEmptyValuesCTA`,defaultMessage:`Show empty values`},hideEmptyValuesCTA:{id:`metadataEditor.viewInstance.metadataInstanceFooter.hideEmptyValuesCTA`,defaultMessage:`Hide empty values`}});export{messages as default};
@@ -1,2 +1 @@
1
- import { t as e } from "../../../../../../chunks/metadata-instance-footer.js";
2
- export { e as MetadataInstanceFooter };
1
+ import{t as MetadataInstanceFooter}from"../../../../../../chunks/metadata-instance-footer.js";export{MetadataInstanceFooter};
@@ -1,16 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({
3
- customInstanceTitle: {
4
- id: "metadataEditor.viewInstance.metadataInstanceHeader.customMetadataTitle",
5
- defaultMessage: "Custom Metadata"
6
- },
7
- editButtonTooltip: {
8
- id: "metadataEditor.viewInstance.metadataInstanceHeader.editButtonTooltip",
9
- defaultMessage: "Edit"
10
- },
11
- editButtonAriaLabel: {
12
- id: "metadataEditor.viewInstance.metadataInstanceHeader.editButtonAriaLabel",
13
- defaultMessage: "Edit {templateName}"
14
- }
15
- });
16
- export { t as default };
1
+ import{defineMessages}from"react-intl";var messages=defineMessages({customInstanceTitle:{id:`metadataEditor.viewInstance.metadataInstanceHeader.customMetadataTitle`,defaultMessage:`Custom Metadata`},editButtonTooltip:{id:`metadataEditor.viewInstance.metadataInstanceHeader.editButtonTooltip`,defaultMessage:`Edit`},editButtonAriaLabel:{id:`metadataEditor.viewInstance.metadataInstanceHeader.editButtonAriaLabel`,defaultMessage:`Edit {templateName}`}});export{messages as default};
@@ -1,2 +1 @@
1
- import { t as e } from "../../../../../../chunks/metadata-instance-header.js";
2
- export { e as MetadataInstanceHeader };
1
+ import{t as MetadataInstanceHeader}from"../../../../../../chunks/metadata-instance-header.js";export{MetadataInstanceHeader};
@@ -1,32 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({
3
- reviewFieldsNoticeHeader: {
4
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.reviewFieldsNoticeHeader",
5
- defaultMessage: "{count, plural, one {# field needs} other {# fields need}} review"
6
- },
7
- viewReviewFieldsCTA: {
8
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.viewReviewFieldsCTA",
9
- defaultMessage: "View"
10
- },
11
- hideReviewFieldsCTA: {
12
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.hideReviewFieldsCTA",
13
- defaultMessage: "Hide"
14
- },
15
- showingReviewFields: {
16
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.showingReviewFields",
17
- defaultMessage: "Showing fields needing review"
18
- },
19
- viewButtonTooltip: {
20
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.viewButtonTooltip",
21
- defaultMessage: "{count, plural, one {# field needs} other {# fields need}} review as Box AI returned low confidence. Click to start reviewing."
22
- },
23
- hideButtonTooltip: {
24
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.hideButtonTooltip",
25
- defaultMessage: "Close review mode"
26
- },
27
- iconAriaLabel: {
28
- id: "groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.iconAriaLabel",
29
- defaultMessage: "Review alert"
30
- }
31
- });
32
- export { t as default };
1
+ import{defineMessages}from"react-intl";var messages=defineMessages({reviewFieldsNoticeHeader:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.reviewFieldsNoticeHeader`,defaultMessage:`{count, plural, one {# field needs} other {# fields need}} review`},viewReviewFieldsCTA:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.viewReviewFieldsCTA`,defaultMessage:`View`},hideReviewFieldsCTA:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.hideReviewFieldsCTA`,defaultMessage:`Hide`},showingReviewFields:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.showingReviewFields`,defaultMessage:`Showing fields needing review`},viewButtonTooltip:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.viewButtonTooltip`,defaultMessage:`{count, plural, one {# field needs} other {# fields need}} review as Box AI returned low confidence. Click to start reviewing.`},hideButtonTooltip:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.hideButtonTooltip`,defaultMessage:`Close review mode`},iconAriaLabel:{id:`groupSharedFeatures.metadataEditor.metadataInstanceReviewNotice.iconAriaLabel`,defaultMessage:`Review alert`}});export{messages as default};
@@ -1,24 +1 @@
1
- import e from "./messages.js";
2
- import { useIntl as t } from "react-intl";
3
- import { jsx as n } from "react/jsx-runtime";
4
- import { ActionableInlineNotice as r, TextToggleButton as i, Tooltip as a } from "@box/blueprint-web";
5
- import { AlertCircle as o } from "@box/blueprint-web-assets/icons/Medium";
6
- var s = ({ fieldsNeedingReviewCount: s, isLowScoreFilteringEnabled: c = !1, onTextToggleClick: l }) => {
7
- let u = t(), d = c ? u.formatMessage(e.showingReviewFields) : u.formatMessage(e.reviewFieldsNoticeHeader, { count: s }), f = c ? u.formatMessage(e.hideButtonTooltip) : u.formatMessage(e.viewButtonTooltip, { count: s });
8
- return /* @__PURE__ */ n(r, {
9
- backgroundColor: "backgroundGray",
10
- iconAriaLabel: u.formatMessage(e.iconAriaLabel),
11
- text: d,
12
- icon: o,
13
- children: /* @__PURE__ */ n(a, {
14
- content: f,
15
- children: /* @__PURE__ */ n(i, {
16
- "data-target-id": c ? "TextToggleButton-metadataEditorReviewFilterHide" : "TextToggleButton-metadataEditorReviewFilterView",
17
- onPressedChange: l,
18
- pressed: c,
19
- children: c ? u.formatMessage(e.hideReviewFieldsCTA) : u.formatMessage(e.viewReviewFieldsCTA)
20
- })
21
- })
22
- });
23
- };
24
- export { s as MetadataInstanceReviewNotice };
1
+ import messages from"./messages.js";import{useIntl}from"react-intl";import{jsx}from"react/jsx-runtime";import{ActionableInlineNotice,TextToggleButton,Tooltip}from"@box/blueprint-web";import{AlertCircle}from"@box/blueprint-web-assets/icons/Medium";var MetadataInstanceReviewNotice=({fieldsNeedingReviewCount,isLowScoreFilteringEnabled=!1,onTextToggleClick})=>{let intl=useIntl(),noticeText=isLowScoreFilteringEnabled?intl.formatMessage(messages.showingReviewFields):intl.formatMessage(messages.reviewFieldsNoticeHeader,{count:fieldsNeedingReviewCount}),tooltipContent=isLowScoreFilteringEnabled?intl.formatMessage(messages.hideButtonTooltip):intl.formatMessage(messages.viewButtonTooltip,{count:fieldsNeedingReviewCount});return jsx(ActionableInlineNotice,{backgroundColor:`backgroundGray`,iconAriaLabel:intl.formatMessage(messages.iconAriaLabel),text:noticeText,icon:AlertCircle,children:jsx(Tooltip,{content:tooltipContent,children:jsx(TextToggleButton,{"data-target-id":isLowScoreFilteringEnabled?`TextToggleButton-metadataEditorReviewFilterHide`:`TextToggleButton-metadataEditorReviewFilterView`,onPressedChange:onTextToggleClick,pressed:isLowScoreFilteringEnabled,children:isLowScoreFilteringEnabled?intl.formatMessage(messages.hideReviewFieldsCTA):intl.formatMessage(messages.viewReviewFieldsCTA)})})})};export{MetadataInstanceReviewNotice};
@@ -1,2 +1 @@
1
- import { UnsavedChangesModal as e } from "./unsaved-changes-modal.js";
2
- export { e as UnsavedChangesModal };
1
+ import{UnsavedChangesModal}from"./unsaved-changes-modal.js";export{UnsavedChangesModal};
@@ -1,24 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({
3
- unsavedChangesModalHeader: {
4
- id: "metadataEditor.unsavedChangesModal.header",
5
- defaultMessage: "Unsaved Changes"
6
- },
7
- unsavedChangesModalBody: {
8
- id: "metadataEditor.unsavedChangesModal.body",
9
- defaultMessage: "Metadata template(s) have unsaved changes. How would you like to proceed?"
10
- },
11
- unsavedChangesModalDiscardChangesCTA: {
12
- id: "metadataEditor.unsavedChangesModal.discardChangesCTA",
13
- defaultMessage: "Discard Changes"
14
- },
15
- unsavedChangesModalContinueEditingCTA: {
16
- id: "metadataEditor.unsavedChangesModal.continueEditingCTA",
17
- defaultMessage: "Continue Editing"
18
- },
19
- unsavedChangesModalCloseLabel: {
20
- id: "metadataEditor.unsavedChangesModal.closeLabel",
21
- defaultMessage: "Close"
22
- }
23
- });
24
- export { t as default };
1
+ import{defineMessages}from"react-intl";var messages_default=defineMessages({unsavedChangesModalHeader:{id:`metadataEditor.unsavedChangesModal.header`,defaultMessage:`Unsaved Changes`},unsavedChangesModalBody:{id:`metadataEditor.unsavedChangesModal.body`,defaultMessage:`Metadata template(s) have unsaved changes. How would you like to proceed?`},unsavedChangesModalDiscardChangesCTA:{id:`metadataEditor.unsavedChangesModal.discardChangesCTA`,defaultMessage:`Discard Changes`},unsavedChangesModalContinueEditingCTA:{id:`metadataEditor.unsavedChangesModal.continueEditingCTA`,defaultMessage:`Continue Editing`},unsavedChangesModalCloseLabel:{id:`metadataEditor.unsavedChangesModal.closeLabel`,defaultMessage:`Close`}});export{messages_default as default};
@@ -1,45 +1 @@
1
- import { EVENT_NAMES as e } from "../../utils/analytics/events.js";
2
- import t from "./messages.js";
3
- import { useCallback as n, useEffect as r, useState as i } from "react";
4
- import { FormattedMessage as a, useIntl as o } from "react-intl";
5
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
6
- import { Modal as l } from "@box/blueprint-web";
7
- function u({ onBackToEdit: u, onDiscardChanges: d, defaultOpen: f = !0, open: p = f, trackEvent: m }) {
8
- let h = o(), [g, _] = i(p);
9
- r(() => _(p), [p]), r(() => {
10
- g && m?.(e.UNSAVED_MODAL_SHOWN);
11
- }, [g, m]);
12
- let v = n(() => {
13
- u(), _(!1);
14
- }, [u]), y = n(() => {
15
- m?.(e.UNSAVED_MODAL_DISCARD), d(), _(!1);
16
- }, [d, m]);
17
- return /* @__PURE__ */ s(l, {
18
- modal: !0,
19
- onOpenChange: n((e) => {
20
- _(e), e || v();
21
- }, [v]),
22
- open: g,
23
- children: /* @__PURE__ */ c(l.Content, {
24
- onEscapeKeyDown: (e) => e.stopPropagation(),
25
- size: "small",
26
- children: [
27
- /* @__PURE__ */ s(l.Header, { children: /* @__PURE__ */ s(a, { ...t.unsavedChangesModalHeader }) }),
28
- /* @__PURE__ */ s(l.ScrollableContainer, { children: /* @__PURE__ */ s(l.Body, { children: /* @__PURE__ */ s(a, { ...t.unsavedChangesModalBody }) }) }),
29
- /* @__PURE__ */ c(l.Footer, { children: [/* @__PURE__ */ s(l.Footer.SecondaryButton, {
30
- "data-target-id": "Modal.Footer.SecondaryButton-metadataEditorUnsavedDiscard",
31
- onClick: y,
32
- size: "large",
33
- children: h.formatMessage(t.unsavedChangesModalDiscardChangesCTA)
34
- }), /* @__PURE__ */ s(l.Footer.PrimaryButton, {
35
- "data-target-id": "Modal.Footer.PrimaryButton-metadataEditorUnsavedBackToEdit",
36
- onClick: v,
37
- size: "large",
38
- children: h.formatMessage(t.unsavedChangesModalContinueEditingCTA)
39
- })] }),
40
- /* @__PURE__ */ s(l.Close, { "aria-label": h.formatMessage(t.unsavedChangesModalCloseLabel) })
41
- ]
42
- })
43
- });
44
- }
45
- export { u as UnsavedChangesModal };
1
+ import{EVENT_NAMES}from"../../utils/analytics/events.js";import messages_default from"./messages.js";import{useCallback,useEffect,useState}from"react";import{FormattedMessage,useIntl}from"react-intl";import{jsx,jsxs}from"react/jsx-runtime";import{Modal}from"@box/blueprint-web";function UnsavedChangesModal({onBackToEdit,onDiscardChanges,defaultOpen=!0,open:propsOpen=defaultOpen,trackEvent}){let intl=useIntl(),[open,setOpen]=useState(propsOpen);useEffect(()=>setOpen(propsOpen),[propsOpen]),useEffect(()=>{open&&trackEvent?.(EVENT_NAMES.UNSAVED_MODAL_SHOWN)},[open,trackEvent]);let handleBackToEdit=useCallback(()=>{onBackToEdit(),setOpen(!1)},[onBackToEdit]),handleDiscardChanges=useCallback(()=>{trackEvent?.(EVENT_NAMES.UNSAVED_MODAL_DISCARD),onDiscardChanges(),setOpen(!1)},[onDiscardChanges,trackEvent]);return jsx(Modal,{modal:!0,onOpenChange:useCallback(isOpen=>{setOpen(isOpen),isOpen||handleBackToEdit()},[handleBackToEdit]),open,children:jsxs(Modal.Content,{onEscapeKeyDown:e=>e.stopPropagation(),size:`small`,children:[jsx(Modal.Header,{children:jsx(FormattedMessage,{...messages_default.unsavedChangesModalHeader})}),jsx(Modal.ScrollableContainer,{children:jsx(Modal.Body,{children:jsx(FormattedMessage,{...messages_default.unsavedChangesModalBody})})}),jsxs(Modal.Footer,{children:[jsx(Modal.Footer.SecondaryButton,{"data-target-id":`Modal.Footer.SecondaryButton-metadataEditorUnsavedDiscard`,onClick:handleDiscardChanges,size:`large`,children:intl.formatMessage(messages_default.unsavedChangesModalDiscardChangesCTA)}),jsx(Modal.Footer.PrimaryButton,{"data-target-id":`Modal.Footer.PrimaryButton-metadataEditorUnsavedBackToEdit`,onClick:handleBackToEdit,size:`large`,children:intl.formatMessage(messages_default.unsavedChangesModalContinueEditingCTA)})]}),jsx(Modal.Close,{"aria-label":intl.formatMessage(messages_default.unsavedChangesModalCloseLabel)})]})})}export{UnsavedChangesModal};
@@ -1,4 +1 @@
1
- async function e(e) {
2
- await new Promise((t) => setTimeout(t, e));
3
- }
4
- export { e as delay };
1
+ async function delay(ms){await new Promise(resolve=>setTimeout(resolve,ms))}export{delay};
@@ -1,15 +1 @@
1
- import { BoxAiAdvancedLogo24 as e, BoxAiLogo24 as t } from "@box/blueprint-web-assets/icons/Logo";
2
- var n = "properties", r = "extractAgent", i = {
3
- standard: {
4
- AGENT_TYPE: "standard",
5
- DISPLAY_MSG: "standardExtractAgent",
6
- ICON: t
7
- },
8
- enhanced: {
9
- AGENT_TYPE: "enhanced",
10
- DISPLAY_MSG: "enhancedExtractAgent",
11
- ICON: e,
12
- AGENT_ID: "enhanced_extract_agent"
13
- }
14
- };
15
- export { i as EXTRACT_AGENTS_MAP, r as EXTRACT_AI_AGENT_LOCAL_STORAGE_KEY, n as TEMPLATE_CUSTOM_PROPERTIES };
1
+ import{BoxAiAdvancedLogo24,BoxAiLogo24}from"@box/blueprint-web-assets/icons/Logo";var TEMPLATE_CUSTOM_PROPERTIES=`properties`,EXTRACT_AI_AGENT_LOCAL_STORAGE_KEY=`extractAgent`,EXTRACT_AGENTS_MAP={standard:{AGENT_TYPE:`standard`,DISPLAY_MSG:`standardExtractAgent`,ICON:BoxAiLogo24},enhanced:{AGENT_TYPE:`enhanced`,DISPLAY_MSG:`enhancedExtractAgent`,ICON:BoxAiAdvancedLogo24,AGENT_ID:`enhanced_extract_agent`}};export{EXTRACT_AGENTS_MAP,EXTRACT_AI_AGENT_LOCAL_STORAGE_KEY,TEMPLATE_CUSTOM_PROPERTIES};
@@ -1,16 +1 @@
1
- var e = {
2
- scope: "",
3
- templateKey: "",
4
- type: "",
5
- id: "",
6
- hidden: !1,
7
- fields: []
8
- }, t = {
9
- string: "",
10
- enum: "",
11
- multiSelect: [],
12
- float: "",
13
- date: "",
14
- taxonomy: []
15
- };
16
- export { e as defaultInitialValues, t as defaultMetadataValueMap };
1
+ var defaultInitialValues={scope:``,templateKey:``,type:``,id:``,hidden:!1,fields:[]},defaultMetadataValueMap={string:``,enum:``,multiSelect:[],float:``,date:``,taxonomy:[]};export{defaultInitialValues,defaultMetadataValueMap};
@@ -1,23 +1 @@
1
- import { r as e } from "../../chunks/types.js";
2
- import { defaultMetadataValueMap as t } from "./defaults.js";
3
- var n = (n, r = !1) => ({
4
- scope: n.scope,
5
- templateKey: n.templateKey,
6
- type: n.type,
7
- id: n.id,
8
- hidden: n.hidden,
9
- fields: n.fields.map((n) => {
10
- let { type: i, value: a = t[i] } = n;
11
- return n.value = a, r && !n.updateMode && (n.updateMode = {
12
- mode: e.ClearAndReplace,
13
- value: t[i],
14
- isOpened: !1
15
- }), n;
16
- })
17
- }), r = (e) => e.map((e) => ({
18
- displayName: e.displayName,
19
- id: e.id,
20
- scope: e.scope,
21
- hidden: e.hidden
22
- }));
23
- export { n as mapDataFromTemplate, r as mapTemplateOptionsFromTemplates };
1
+ import{r as UpdateMode}from"../../chunks/types.js";import{defaultMetadataValueMap}from"./defaults.js";var mapDataFromTemplate=(template,withUpdateMode=!1)=>({scope:template.scope,templateKey:template.templateKey,type:template.type,id:template.id,hidden:template.hidden,fields:template.fields.map(field=>{let{type,value=defaultMetadataValueMap[type]}=field;return field.value=value,withUpdateMode&&!field.updateMode&&(field.updateMode={mode:UpdateMode.ClearAndReplace,value:defaultMetadataValueMap[type],isOpened:!1}),field})}),mapTemplateOptionsFromTemplates=templates=>templates.map(template=>({displayName:template.displayName,id:template.id,scope:template.scope,hidden:template.hidden}));export{mapDataFromTemplate,mapTemplateOptionsFromTemplates};
@@ -1,129 +1 @@
1
- import { defineMessages as e } from "react-intl";
2
- var t = e({
3
- afterDateValidationError: {
4
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.afterDateValidationError",
5
- defaultMessage: "Enter a date after {date}"
6
- },
7
- beforeDateValidationError: {
8
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.beforeDateValidationError",
9
- defaultMessage: "Enter a date before {date}"
10
- },
11
- clearSelectedDate: {
12
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.clearSelectedDate",
13
- defaultMessage: "Clear selected date"
14
- },
15
- floatFieldInvalidValue: {
16
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.floatFieldInvalidValue",
17
- defaultMessage: "Invalid field value"
18
- },
19
- loading: {
20
- id: "groupSharedFeatures.metadataEditor.loading",
21
- defaultMessage: "loading"
22
- },
23
- multiselectPlaceholder: {
24
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.multiselectPlaceholder",
25
- defaultMessage: "Select value(s)"
26
- },
27
- noTemplateAtributesError: {
28
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.noTemplateAtributesError",
29
- defaultMessage: "There are no attributes in this template."
30
- },
31
- openCalendar: {
32
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.openCalendarLabel",
33
- defaultMessage: "Open calendar to pick a date"
34
- },
35
- selectDate: {
36
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.selectDate",
37
- defaultMessage: "Select the date"
38
- },
39
- selectTemplate: {
40
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.selectTemplate",
41
- defaultMessage: "Select a Template"
42
- },
43
- selectTemplateError: {
44
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.selectTemplateError",
45
- defaultMessage: "Could not load templates. Try again later"
46
- },
47
- selectValuePlaceholder: {
48
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.selectValuePlaceholder",
49
- defaultMessage: "Select a value"
50
- },
51
- setValuePlaceholder: {
52
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.setValuePlaceholder",
53
- defaultMessage: "Set Value"
54
- },
55
- switchToNextMonth: {
56
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.switchToNextMonth",
57
- defaultMessage: "Switch to next month"
58
- },
59
- switchToPreviousMonth: {
60
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.switchToPreviousMonth",
61
- defaultMessage: "Switch to previous month"
62
- },
63
- taxonomyPlaceholder: {
64
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.taxonomyPlaceholder",
65
- defaultMessage: "Select an option"
66
- },
67
- templateSelectorModalHeader: {
68
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.header",
69
- defaultMessage: "Select Metadata Template"
70
- },
71
- templateSelectorSearchInputPlaceholder: {
72
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.searchInputPlaceholder",
73
- defaultMessage: "Search all templates"
74
- },
75
- templateSelectorSearchInputIconAriaLabel: {
76
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.searchInputIconAriaLabel",
77
- defaultMessage: "Search all templates"
78
- },
79
- templateSelectorSearchInpuClearAriaLabel: {
80
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.searchInputClearAriaLabel",
81
- defaultMessage: "Clear"
82
- },
83
- templateSelectorCancel: {
84
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.cancel",
85
- defaultMessage: "Cancel"
86
- },
87
- templateSelectorAdd: {
88
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.add",
89
- defaultMessage: "Add"
90
- },
91
- templateSelectorClose: {
92
- id: "groupSharedFeatures.metadataEditor.metadataTemplateSelector.close",
93
- defaultMessage: "Close"
94
- },
95
- taxonomyExternallyOwned: {
96
- id: "groupSharedFeatures.metadataEditor.metadataEditorFields.taxonomyExternallyOwned",
97
- defaultMessage: "Edit functionality for Taxonomy shared externally is not available"
98
- },
99
- viewOnDocument: {
100
- id: "groupSharedFeatures.metadataEditor.viewOnDocument",
101
- defaultMessage: "View on document"
102
- },
103
- aiDisclaimer: {
104
- id: "groupSharedFeatures.metadataEditor.aiDisclaimer",
105
- defaultMessage: "Box AI outputs should be reviewed and verified before use."
106
- }
107
- }), n = e({
108
- autofillButtonTooltipGA: {
109
- id: "metadataEditor.autofillButton.tooltip.ga",
110
- defaultMessage: "Autofill with Box AI"
111
- },
112
- autofillButtonTooltipStandard: {
113
- id: "metadataEditor.autofillButton.tooltip.standard",
114
- defaultMessage: "Autofill with Box AI (Standard)"
115
- },
116
- autofillButtonTooltipEnhanced: {
117
- id: "metadataEditor.autofillButton.tooltip.enhanced",
118
- defaultMessage: "Autofill with Box AI (Enhanced)"
119
- },
120
- autofillButtonAriaLabelWithTemplateName: {
121
- id: "metadataEditor.autofillButton.ariaLabelWithTemplateName",
122
- defaultMessage: "Autofill {templateName} with Box AI"
123
- },
124
- autofillButtonAriaLabel: {
125
- id: "metadataEditor.autofillButton.ariaLabel",
126
- defaultMessage: "Autofill with Box AI"
127
- }
128
- });
129
- export { n as autofillMessages, t as default };
1
+ import{defineMessages}from"react-intl";var messages=defineMessages({afterDateValidationError:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.afterDateValidationError`,defaultMessage:`Enter a date after {date}`},beforeDateValidationError:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.beforeDateValidationError`,defaultMessage:`Enter a date before {date}`},clearSelectedDate:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.clearSelectedDate`,defaultMessage:`Clear selected date`},floatFieldInvalidValue:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.floatFieldInvalidValue`,defaultMessage:`Invalid field value`},loading:{id:`groupSharedFeatures.metadataEditor.loading`,defaultMessage:`loading`},multiselectPlaceholder:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.multiselectPlaceholder`,defaultMessage:`Select value(s)`},noTemplateAtributesError:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.noTemplateAtributesError`,defaultMessage:`There are no attributes in this template.`},openCalendar:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.openCalendarLabel`,defaultMessage:`Open calendar to pick a date`},selectDate:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.selectDate`,defaultMessage:`Select the date`},selectTemplate:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.selectTemplate`,defaultMessage:`Select a Template`},selectTemplateError:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.selectTemplateError`,defaultMessage:`Could not load templates. Try again later`},selectValuePlaceholder:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.selectValuePlaceholder`,defaultMessage:`Select a value`},setValuePlaceholder:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.setValuePlaceholder`,defaultMessage:`Set Value`},switchToNextMonth:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.switchToNextMonth`,defaultMessage:`Switch to next month`},switchToPreviousMonth:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.switchToPreviousMonth`,defaultMessage:`Switch to previous month`},taxonomyPlaceholder:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.taxonomyPlaceholder`,defaultMessage:`Select an option`},templateSelectorModalHeader:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.header`,defaultMessage:`Select Metadata Template`},templateSelectorSearchInputPlaceholder:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.searchInputPlaceholder`,defaultMessage:`Search all templates`},templateSelectorSearchInputIconAriaLabel:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.searchInputIconAriaLabel`,defaultMessage:`Search all templates`},templateSelectorSearchInpuClearAriaLabel:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.searchInputClearAriaLabel`,defaultMessage:`Clear`},templateSelectorCancel:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.cancel`,defaultMessage:`Cancel`},templateSelectorAdd:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.add`,defaultMessage:`Add`},templateSelectorClose:{id:`groupSharedFeatures.metadataEditor.metadataTemplateSelector.close`,defaultMessage:`Close`},taxonomyExternallyOwned:{id:`groupSharedFeatures.metadataEditor.metadataEditorFields.taxonomyExternallyOwned`,defaultMessage:`Edit functionality for Taxonomy shared externally is not available`},viewOnDocument:{id:`groupSharedFeatures.metadataEditor.viewOnDocument`,defaultMessage:`View on document`},aiDisclaimer:{id:`groupSharedFeatures.metadataEditor.aiDisclaimer`,defaultMessage:`Box AI outputs should be reviewed and verified before use.`}}),autofillMessages=defineMessages({autofillButtonTooltipGA:{id:`metadataEditor.autofillButton.tooltip.ga`,defaultMessage:`Autofill with Box AI`},autofillButtonTooltipStandard:{id:`metadataEditor.autofillButton.tooltip.standard`,defaultMessage:`Autofill with Box AI (Standard)`},autofillButtonTooltipEnhanced:{id:`metadataEditor.autofillButton.tooltip.enhanced`,defaultMessage:`Autofill with Box AI (Enhanced)`},autofillButtonAriaLabelWithTemplateName:{id:`metadataEditor.autofillButton.ariaLabelWithTemplateName`,defaultMessage:`Autofill {templateName} with Box AI`},autofillButtonAriaLabel:{id:`metadataEditor.autofillButton.ariaLabel`,defaultMessage:`Autofill with Box AI`}});export{autofillMessages,messages as default};
@@ -1,2 +1 @@
1
- import { t as e } from "../../chunks/metadata-editor.js";
2
- export { e as MetadataEditor, e as default };
1
+ import{t as MetadataEditor}from"../../chunks/metadata-editor.js";export{MetadataEditor,MetadataEditor as default};
@@ -1,11 +1 @@
1
- import { createContext as e, useContext as t, useMemo as n } from "react";
2
- import { jsx as r } from "react/jsx-runtime";
3
- import i from "lodash/noop";
4
- var a = /*#__PURE__*/ e({ trackEvent: i }), o = ({ children: e, trackEvent: t }) => {
5
- let o = n(() => ({ trackEvent: t ?? i }), [t]);
6
- return /* @__PURE__ */ r(a.Provider, {
7
- value: o,
8
- children: e
9
- });
10
- }, s = () => t(a);
11
- export { a as AnalyticsContext, o as AnalyticsContextProvider, s as useMetadataEditorAnalytics };
1
+ import{createContext,useContext,useMemo}from"react";import{jsx}from"react/jsx-runtime";import noop from"lodash/noop";var AnalyticsContext=createContext({trackEvent:noop}),AnalyticsContextProvider=({children,trackEvent})=>{let value=useMemo(()=>({trackEvent:trackEvent??noop}),[trackEvent]);return jsx(AnalyticsContext.Provider,{value,children})},useMetadataEditorAnalytics=()=>useContext(AnalyticsContext);export{AnalyticsContext,AnalyticsContextProvider,useMetadataEditorAnalytics};
@@ -1,9 +1 @@
1
- var e = {
2
- LOW_CONF_BADGE_HOVER: "metadata_editor_low_conf_badge_hover",
3
- LOW_CONF_ICON_HOVER_READ_MODE: "metadata_editor_low_conf_icon_hover_read_mode",
4
- AI_SUGGESTION_SHOWN: "metadata_editor_ai_suggestion_shown",
5
- UNSAVED_MODAL_SHOWN: "metadata_editor_unsaved_modal_shown",
6
- UNSAVED_MODAL_DISCARD: "metadata_editor_unsaved_modal_discard",
7
- AI_LOGO_BADGE_HOVER: "metadata_editor_conf_score_icon_hover"
8
- };
9
- export { e as EVENT_NAMES };
1
+ var EVENT_NAMES={LOW_CONF_BADGE_HOVER:`metadata_editor_low_conf_badge_hover`,LOW_CONF_ICON_HOVER_READ_MODE:`metadata_editor_low_conf_icon_hover_read_mode`,AI_SUGGESTION_SHOWN:`metadata_editor_ai_suggestion_shown`,UNSAVED_MODAL_SHOWN:`metadata_editor_unsaved_modal_shown`,UNSAVED_MODAL_DISCARD:`metadata_editor_unsaved_modal_discard`,AI_LOGO_BADGE_HOVER:`metadata_editor_conf_score_icon_hover`};export{EVENT_NAMES};
@@ -1,4 +1 @@
1
- import { EVENT_NAMES as e } from "./events.js";
2
- import { AnalyticsContext as t, AnalyticsContextProvider as n, useMetadataEditorAnalytics as r } from "./analytics-context.js";
3
- import { withAnalytics as i } from "./with-analytics.js";
4
- export { t as AnalyticsContext, n as AnalyticsContextProvider, e as EVENT_NAMES, r as useMetadataEditorAnalytics, i as withAnalytics };
1
+ import{EVENT_NAMES}from"./events.js";import{AnalyticsContext,AnalyticsContextProvider,useMetadataEditorAnalytics}from"./analytics-context.js";import{withAnalytics}from"./with-analytics.js";export{AnalyticsContext,AnalyticsContextProvider,EVENT_NAMES,useMetadataEditorAnalytics,withAnalytics};
@@ -1,11 +1 @@
1
- import { AnalyticsContextProvider as e } from "./analytics-context.js";
2
- import "react";
3
- import { jsx as t } from "react/jsx-runtime";
4
- function n(n) {
5
- let r = ({ trackEvent: r, ...i }) => /* @__PURE__ */ t(e, {
6
- trackEvent: r,
7
- children: /* @__PURE__ */ t(n, { ...i })
8
- });
9
- return r.displayName = `withAnalytics(${n.displayName || n.name || "Component"})`, r;
10
- }
11
- export { n as withAnalytics };
1
+ import{AnalyticsContextProvider}from"./analytics-context.js";import"react";import{jsx}from"react/jsx-runtime";function withAnalytics(Component){let Wrapped=({trackEvent,...rest})=>jsx(AnalyticsContextProvider,{trackEvent,children:jsx(Component,{...rest})});return Wrapped.displayName=`withAnalytics(${Component.displayName||Component.name||`Component`})`,Wrapped}export{withAnalytics};
@@ -1,13 +1 @@
1
- import { AutofillContextProvider as e } from "./autofill-context.js";
2
- import { jsx as t } from "react/jsx-runtime";
3
- function n(n) {
4
- return ({ isAiSuggestionsFeatureEnabled: r, fetchSuggestions: i, ...a }) => /* @__PURE__ */ t(e, {
5
- fetchSuggestions: i,
6
- isAiSuggestionsFeatureEnabled: r,
7
- children: /* @__PURE__ */ t(n, {
8
- isAiSuggestionsFeatureEnabled: r,
9
- ...a
10
- })
11
- });
12
- }
13
- export { n as withApiWrapper };
1
+ import{AutofillContextProvider}from"./autofill-context.js";import{jsx}from"react/jsx-runtime";function withApiWrapper(WrappedComponent){return({isAiSuggestionsFeatureEnabled,fetchSuggestions,...props})=>jsx(AutofillContextProvider,{fetchSuggestions,isAiSuggestionsFeatureEnabled,children:jsx(WrappedComponent,{isAiSuggestionsFeatureEnabled,...props})})}export{withApiWrapper};
@@ -1,66 +1 @@
1
- import "../constants.js";
2
- import e, { createContext as t, useCallback as n, useContext as r, useMemo as i, useState as a } from "react";
3
- import { jsx as o } from "react/jsx-runtime";
4
- var s = 1e4, c = /*#__PURE__*/ t(null), l = ({ children: t, isAiSuggestionsFeatureEnabled: r, fetchSuggestions: l }) => {
5
- let [u, d] = a({}), [f, p] = a({}), [m, h] = a({}), [g, _] = a(!1), [v, y] = a(!1);
6
- e.useEffect(() => {
7
- let e;
8
- return g ? e = setTimeout(() => {
9
- y(!0);
10
- }, s) : (y(!1), clearTimeout(e)), () => clearTimeout(e);
11
- }, [g]);
12
- let b = n(async (e, t, n) => {
13
- let i = [];
14
- if (!r) throw Error("AI Suggestions feature not available.");
15
- if (e === "properties") throw Error("Can't fetch suggestions for Custom Metadata instance");
16
- _(!0);
17
- try {
18
- i = await l(e, t, n || void 0), d({
19
- ...u,
20
- [e]: { ...Object.fromEntries(i.map((e) => [e.key, e.aiSuggestion])) }
21
- }), p((t) => ({
22
- ...t,
23
- [e]: Object.fromEntries(i.filter((e) => e.aiSuggestionConfidenceScore).map((e) => [e.key, e.aiSuggestionConfidenceScore]))
24
- })), h((t) => ({
25
- ...t,
26
- [e]: Object.fromEntries(i.filter((e) => e.targetLocation).map((e) => [e.key, e.targetLocation]))
27
- }));
28
- } catch {} finally {
29
- _(!1);
30
- }
31
- return i;
32
- }, [
33
- r,
34
- u,
35
- l
36
- ]), x = n(() => {
37
- d({}), p({}), h({}), _(!1), y(!1);
38
- }, []), S = i(() => ({
39
- clearState: x,
40
- confidenceScores: f,
41
- getAiSuggestions: b,
42
- isAiSuggestionsFeatureEnabled: r,
43
- isFetchingSuggestions: g,
44
- isLongLoading: v,
45
- suggestions: u,
46
- targetLocations: m
47
- }), [
48
- x,
49
- f,
50
- b,
51
- r,
52
- g,
53
- v,
54
- u,
55
- m
56
- ]);
57
- return /* @__PURE__ */ o(c.Provider, {
58
- value: S,
59
- children: t
60
- });
61
- }, u = () => {
62
- let e = r(c);
63
- if (!e) throw Error("useAutofill should be wrapped inside AutofillProvider");
64
- return e;
65
- };
66
- export { c as AutofillContext, l as AutofillContextProvider, s as TIMEOUT_10_SECONDS, u as useAutofill };
1
+ import"../constants.js";import React,{createContext,useCallback,useContext,useMemo,useState}from"react";import{jsx}from"react/jsx-runtime";var TIMEOUT_10_SECONDS=1e4,AutofillContext=createContext(null),AutofillContextProvider=({children,isAiSuggestionsFeatureEnabled,fetchSuggestions})=>{let[suggestions,setSuggestions]=useState({}),[confidenceScores,setConfidenceScores]=useState({}),[targetLocations,setTargetLocations]=useState({}),[isFetchingSuggestions,setIsFetchingSuggestions]=useState(!1),[isLongLoading,setIsLongLoading]=useState(!1);React.useEffect(()=>{let timer;return isFetchingSuggestions?timer=setTimeout(()=>{setIsLongLoading(!0)},TIMEOUT_10_SECONDS):(setIsLongLoading(!1),clearTimeout(timer)),()=>clearTimeout(timer)},[isFetchingSuggestions]);let getAiSuggestions=useCallback(async(templateKey,scope,agentId)=>{let fieldsWithAiSuggestions=[];if(!isAiSuggestionsFeatureEnabled)throw Error(`AI Suggestions feature not available.`);if(templateKey===`properties`)throw Error(`Can't fetch suggestions for Custom Metadata instance`);setIsFetchingSuggestions(!0);try{fieldsWithAiSuggestions=await fetchSuggestions(templateKey,scope,agentId||void 0),setSuggestions({...suggestions,[templateKey]:{...Object.fromEntries(fieldsWithAiSuggestions.map(field=>[field.key,field.aiSuggestion]))}}),setConfidenceScores(prev=>({...prev,[templateKey]:Object.fromEntries(fieldsWithAiSuggestions.filter(field=>field.aiSuggestionConfidenceScore).map(field=>[field.key,field.aiSuggestionConfidenceScore]))})),setTargetLocations(prev=>({...prev,[templateKey]:Object.fromEntries(fieldsWithAiSuggestions.filter(field=>field.targetLocation).map(field=>[field.key,field.targetLocation]))}))}catch{}finally{setIsFetchingSuggestions(!1)}return fieldsWithAiSuggestions},[isAiSuggestionsFeatureEnabled,suggestions,fetchSuggestions]),clearState=useCallback(()=>{setSuggestions({}),setConfidenceScores({}),setTargetLocations({}),setIsFetchingSuggestions(!1),setIsLongLoading(!1)},[]),value=useMemo(()=>({clearState,confidenceScores,getAiSuggestions,isAiSuggestionsFeatureEnabled,isFetchingSuggestions,isLongLoading,suggestions,targetLocations}),[clearState,confidenceScores,getAiSuggestions,isAiSuggestionsFeatureEnabled,isFetchingSuggestions,isLongLoading,suggestions,targetLocations]);return jsx(AutofillContext.Provider,{value,children})},useAutofill=()=>{let value=useContext(AutofillContext);if(!value)throw Error(`useAutofill should be wrapped inside AutofillProvider`);return value};export{AutofillContext,AutofillContextProvider,TIMEOUT_10_SECONDS,useAutofill};
@@ -1,2 +1 @@
1
- var e = (e) => e ? e.some((e) => !!e.boundingBox) : !1;
2
- export { e as checkIfHasBoundingBoxes };
1
+ var checkIfHasBoundingBoxes=targetLocation=>targetLocation?targetLocation.some(entry=>!!entry.boundingBox):!1;export{checkIfHasBoundingBoxes};
@@ -1,4 +1 @@
1
- function e(e) {
2
- return `${Math.floor(e * 100)}%`;
3
- }
4
- export { e as formatConfidenceScorePercent };
1
+ function formatConfidenceScorePercent(value){return`${Math.floor(value*100)}%`}export{formatConfidenceScorePercent};
@@ -1,13 +1 @@
1
- import { n as e } from "../../../../chunks/types.js";
2
- import t from "./messages.js";
3
- function n(n, r) {
4
- if (r.isAccepted && r.level === e.High) return n(t.tooltipHighConfidence);
5
- if (r.isAccepted) return n(t.tooltipReviewedAndAccepted);
6
- switch (r.level) {
7
- case e.Low:
8
- case e.Medium: return n(t.tooltipLowConfidence);
9
- case e.High: return n(t.tooltipHighConfidence);
10
- default: return null;
11
- }
12
- }
13
- export { n as getConfidenceScoreTooltip };
1
+ import{n as ConfidenceLevel}from"../../../../chunks/types.js";import messages from"./messages.js";function getConfidenceScoreTooltip(formatMessage,confidenceScore){if(confidenceScore.isAccepted&&confidenceScore.level===ConfidenceLevel.High)return formatMessage(messages.tooltipHighConfidence);if(confidenceScore.isAccepted)return formatMessage(messages.tooltipReviewedAndAccepted);switch(confidenceScore.level){case ConfidenceLevel.Low:case ConfidenceLevel.Medium:return formatMessage(messages.tooltipLowConfidence);case ConfidenceLevel.High:return formatMessage(messages.tooltipHighConfidence);default:return null}}export{getConfidenceScoreTooltip};
@@ -1,6 +1 @@
1
- import { t as e } from "../../../../chunks/types.js";
2
- import { isConfidenceScoreNeedingReview as t } from "./is-confidence-score-needing-review.js";
3
- function n(n) {
4
- return n.filter((n) => n.hidden ? !1 : n.aiSuggestionConfidenceScore && n.aiSuggestionState === e.Pending ? !0 : !!n.confidenceScore && t(n.confidenceScore));
5
- }
6
- export { n as getFieldsNeedingReview };
1
+ import{t as AiSuggestionState}from"../../../../chunks/types.js";import{isConfidenceScoreNeedingReview}from"./is-confidence-score-needing-review.js";function getFieldsNeedingReview(fields){return fields.filter(field=>field.hidden?!1:field.aiSuggestionConfidenceScore&&field.aiSuggestionState===AiSuggestionState.Pending?!0:!!field.confidenceScore&&isConfidenceScoreNeedingReview(field.confidenceScore))}export{getFieldsNeedingReview};
@@ -1,5 +1 @@
1
- import { formatConfidenceScorePercent as e } from "./format-confidence-score-percent.js";
2
- import { getConfidenceScoreTooltip as t } from "./get-confidence-score-tooltip.js";
3
- import { isConfidenceScoreNeedingReview as n } from "./is-confidence-score-needing-review.js";
4
- import { getFieldsNeedingReview as r } from "./get-fields-needing-review.js";
5
- export { e as formatConfidenceScorePercent, t as getConfidenceScoreTooltip, r as getFieldsNeedingReview, n as isConfidenceScoreNeedingReview };
1
+ import{formatConfidenceScorePercent}from"./format-confidence-score-percent.js";import{getConfidenceScoreTooltip}from"./get-confidence-score-tooltip.js";import{isConfidenceScoreNeedingReview}from"./is-confidence-score-needing-review.js";import{getFieldsNeedingReview}from"./get-fields-needing-review.js";export{formatConfidenceScorePercent,getConfidenceScoreTooltip,getFieldsNeedingReview,isConfidenceScoreNeedingReview};
@@ -1,5 +1 @@
1
- import { n as e } from "../../../../chunks/types.js";
2
- function t(t) {
3
- return t.level !== e.High && !t.isAccepted;
4
- }
5
- export { t as isConfidenceScoreNeedingReview };
1
+ import{n as ConfidenceLevel}from"../../../../chunks/types.js";function isConfidenceScoreNeedingReview(confidenceScore){return confidenceScore.level!==ConfidenceLevel.High&&!confidenceScore.isAccepted}export{isConfidenceScoreNeedingReview};