@box/metadata-editor 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/LICENSE +379 -0
  2. package/chunks/filter-dropdown-menu.module.js +18 -0
  3. package/chunks/types.js +6 -0
  4. package/esm/index.js +33 -0
  5. package/esm/lib/components/add-metadata-template-dropdown/add-metadata-template-dropdown.js +44 -0
  6. package/esm/lib/components/add-metadata-template-dropdown/index.js +4 -0
  7. package/esm/lib/components/add-metadata-template-dropdown/messages.js +18 -0
  8. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-content.js +19 -0
  9. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-empty-state.js +20 -0
  10. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-item.js +20 -0
  11. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-list.js +22 -0
  12. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-root.js +19 -0
  13. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-search.js +44 -0
  14. package/esm/lib/components/filter-dropdown-menu/filter-dropdown-menu-trigger.js +13 -0
  15. package/esm/lib/components/filter-dropdown-menu/index.js +19 -0
  16. package/esm/lib/components/filter-dropdown-menu/messages.js +14 -0
  17. package/esm/lib/components/interactive-text/interactive-text.js +22 -0
  18. package/esm/lib/components/metadata-editor-fields/components/constants.js +6 -0
  19. package/esm/lib/components/metadata-editor-fields/components/metadata-date-field/date-conversion-utils.js +16 -0
  20. package/esm/lib/components/metadata-editor-fields/components/metadata-date-field/metadata-date-field.js +60 -0
  21. package/esm/lib/components/metadata-editor-fields/components/metadata-date-field/use-date-internationalization.js +13 -0
  22. package/esm/lib/components/metadata-editor-fields/components/metadata-enum-field/metadata-enum-field.js +55 -0
  23. package/esm/lib/components/metadata-editor-fields/components/metadata-float-field/metadata-float-field.js +47 -0
  24. package/esm/lib/components/metadata-editor-fields/components/metadata-float-field/use-float-validation.js +15 -0
  25. package/esm/lib/components/metadata-editor-fields/components/metadata-multi-select-field/metadata-multi-select-field.js +51 -0
  26. package/esm/lib/components/metadata-editor-fields/components/metadata-string-field/metadata-string-field.js +35 -0
  27. package/esm/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/messages.js +30 -0
  28. package/esm/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/update-mode-field-wrapper.js +90 -0
  29. package/esm/lib/components/metadata-editor-fields/editor-field-types.js +26 -0
  30. package/esm/lib/components/metadata-editor-fields/metadata-editor-fields.js +52 -0
  31. package/esm/lib/components/metadata-empty-state/messages.js +46 -0
  32. package/esm/lib/components/metadata-empty-state/metadata-empty-state.js +63 -0
  33. package/esm/lib/components/metadata-instance-editor/index.js +10 -0
  34. package/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance/custom-instance.js +76 -0
  35. package/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance/messages.js +18 -0
  36. package/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/custom-instance-new-field.js +58 -0
  37. package/esm/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/messages.js +42 -0
  38. package/esm/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/delete-confirmation-modal.js +81 -0
  39. package/esm/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/messages.js +38 -0
  40. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/messages.js +1 -0
  41. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/metadata-instance-form.js +79 -0
  42. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/utils.js +33 -0
  43. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/messages.js +22 -0
  44. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/metadata-instance-form-footer.js +50 -0
  45. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/messages.js +18 -0
  46. package/esm/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/metadata-instance-form-header.js +40 -0
  47. package/esm/lib/components/metadata-instance-list/index.js +8 -0
  48. package/esm/lib/components/metadata-instance-list/metadata-instance-list.js +22 -0
  49. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance/metadata-instance.js +51 -0
  50. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-content/metadata-instance-content.js +26 -0
  51. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/convertDate.js +25 -0
  52. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/metadata-instance-entry.js +56 -0
  53. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/messages.js +14 -0
  54. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/metadata-instance-footer.js +30 -0
  55. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/messages.js +10 -0
  56. package/esm/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/metadata-instance-header.js +46 -0
  57. package/esm/lib/components/metadata-taxonomy-field/combobox-with-api-pagination.js +188 -0
  58. package/esm/lib/components/metadata-taxonomy-field/index.js +4 -0
  59. package/esm/lib/components/metadata-taxonomy-field/messages.js +34 -0
  60. package/esm/lib/components/metadata-taxonomy-field/request.js +6 -0
  61. package/esm/lib/components/metadata-taxonomy-field/single-level-taxonomy-field.js +19 -0
  62. package/esm/lib/components/metadata-taxonomy-field/use-async-list.js +124 -0
  63. package/esm/lib/components/metadata-taxonomy-field/utils/use-intersection-observer.js +87 -0
  64. package/esm/lib/components/unsaved-changes-modal/index.js +4 -0
  65. package/esm/lib/components/unsaved-changes-modal/messages.js +26 -0
  66. package/esm/lib/components/unsaved-changes-modal/unsaved-changes-modal.js +55 -0
  67. package/esm/lib/components/unsaved-changes-modal/utils.js +6 -0
  68. package/esm/lib/constants.js +4 -0
  69. package/esm/lib/defaults.js +18 -0
  70. package/esm/lib/mappers.js +28 -0
  71. package/esm/lib/messages.js +94 -0
  72. package/esm/lib/metadata-editor.js +15 -0
  73. package/esm/lib/test-utils/formik-wrapper.js +26 -0
  74. package/esm/lib/test-utils/index.js +31 -0
  75. package/esm/lib/test-utils/sample-data.js +281 -0
  76. package/esm/lib/test-utils/test-utils.js +13 -0
  77. package/i18n/bn-IN.js +88 -0
  78. package/i18n/bn-IN.properties +164 -0
  79. package/i18n/da-DK.js +88 -0
  80. package/i18n/da-DK.properties +164 -0
  81. package/i18n/de-DE.js +88 -0
  82. package/i18n/de-DE.properties +164 -0
  83. package/i18n/en-AU.js +88 -0
  84. package/i18n/en-AU.properties +164 -0
  85. package/i18n/en-CA.js +88 -0
  86. package/i18n/en-CA.properties +164 -0
  87. package/i18n/en-GB.js +88 -0
  88. package/i18n/en-GB.properties +164 -0
  89. package/i18n/en-US.js +87 -0
  90. package/i18n/en-US.properties +170 -0
  91. package/i18n/en-x-pseudo.js +88 -0
  92. package/i18n/en-x-pseudo.properties +164 -0
  93. package/i18n/es-419.js +88 -0
  94. package/i18n/es-419.properties +164 -0
  95. package/i18n/es-ES.js +88 -0
  96. package/i18n/es-ES.properties +164 -0
  97. package/i18n/fi-FI.js +88 -0
  98. package/i18n/fi-FI.properties +164 -0
  99. package/i18n/fr-CA.js +88 -0
  100. package/i18n/fr-CA.properties +164 -0
  101. package/i18n/fr-FR.js +88 -0
  102. package/i18n/fr-FR.properties +164 -0
  103. package/i18n/hi-IN.js +88 -0
  104. package/i18n/hi-IN.properties +164 -0
  105. package/i18n/it-IT.js +88 -0
  106. package/i18n/it-IT.properties +164 -0
  107. package/i18n/ja-JP.js +88 -0
  108. package/i18n/ja-JP.properties +164 -0
  109. package/i18n/json/src/lib/components/add-metadata-template-dropdown/messages.json +1 -0
  110. package/i18n/json/src/lib/components/filter-dropdown-menu/messages.json +1 -0
  111. package/i18n/json/src/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/messages.json +1 -0
  112. package/i18n/json/src/lib/components/metadata-empty-state/messages.json +1 -0
  113. package/i18n/json/src/lib/components/metadata-instance-editor/subcomponents/custom-instance/messages.json +1 -0
  114. package/i18n/json/src/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/messages.json +1 -0
  115. package/i18n/json/src/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/messages.json +1 -0
  116. package/i18n/json/src/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/messages.json +1 -0
  117. package/i18n/json/src/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/messages.json +1 -0
  118. package/i18n/json/src/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/messages.json +1 -0
  119. package/i18n/json/src/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/messages.json +1 -0
  120. package/i18n/json/src/lib/components/metadata-taxonomy-field/messages.json +1 -0
  121. package/i18n/json/src/lib/components/unsaved-changes-modal/messages.json +1 -0
  122. package/i18n/json/src/lib/messages.json +1 -0
  123. package/i18n/ko-KR.js +88 -0
  124. package/i18n/ko-KR.properties +164 -0
  125. package/i18n/nb-NO.js +88 -0
  126. package/i18n/nb-NO.properties +164 -0
  127. package/i18n/nl-NL.js +88 -0
  128. package/i18n/nl-NL.properties +164 -0
  129. package/i18n/pl-PL.js +88 -0
  130. package/i18n/pl-PL.properties +164 -0
  131. package/i18n/pt-BR.js +88 -0
  132. package/i18n/pt-BR.properties +164 -0
  133. package/i18n/ru-RU.js +88 -0
  134. package/i18n/ru-RU.properties +164 -0
  135. package/i18n/sv-SE.js +88 -0
  136. package/i18n/sv-SE.properties +164 -0
  137. package/i18n/tr-TR.js +88 -0
  138. package/i18n/tr-TR.properties +164 -0
  139. package/i18n/zh-CN.js +88 -0
  140. package/i18n/zh-CN.properties +164 -0
  141. package/i18n/zh-TW.js +88 -0
  142. package/i18n/zh-TW.properties +164 -0
  143. package/package.json +55 -0
  144. package/styles/combobox-with-api-pagination.css +1 -0
  145. package/styles/custom-instance-new-field.css +1 -0
  146. package/styles/custom-instance.css +1 -0
  147. package/styles/delete-confirmation-modal.css +1 -0
  148. package/styles/filter-dropdown-menu.css +1 -0
  149. package/styles/metadata-editor-fields.css +1 -0
  150. package/styles/metadata-editor.css +0 -0
  151. package/styles/metadata-instance-content.css +1 -0
  152. package/styles/metadata-instance-entry.css +1 -0
  153. package/styles/metadata-instance-footer.css +1 -0
  154. package/styles/metadata-instance-form-footer.css +1 -0
  155. package/styles/metadata-instance-form-header.css +1 -0
  156. package/styles/metadata-instance-form.css +1 -0
  157. package/styles/metadata-instance-header.css +1 -0
  158. package/styles/metadata-instance-list.css +1 -0
  159. package/styles/metadata-instance.css +1 -0
  160. package/styles/update-mode-field-wrapper.css +1 -0
  161. package/types/index.d.ts +10 -0
  162. package/types/lib/components/add-metadata-template-dropdown/add-metadata-template-dropdown.d.ts +2 -0
  163. package/types/lib/components/add-metadata-template-dropdown/index.d.ts +2 -0
  164. package/types/lib/components/add-metadata-template-dropdown/messages.d.ts +18 -0
  165. package/types/lib/components/add-metadata-template-dropdown/types.d.ts +6 -0
  166. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-content.d.ts +9 -0
  167. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-empty-state.d.ts +8 -0
  168. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-item.d.ts +9 -0
  169. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-list.d.ts +9 -0
  170. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-root.d.ts +9 -0
  171. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-search.d.ts +9 -0
  172. package/types/lib/components/filter-dropdown-menu/filter-dropdown-menu-trigger.d.ts +11 -0
  173. package/types/lib/components/filter-dropdown-menu/index.d.ts +36 -0
  174. package/types/lib/components/filter-dropdown-menu/messages.d.ts +13 -0
  175. package/types/lib/components/interactive-text/interactive-text.d.ts +10 -0
  176. package/types/lib/components/metadata-editor-fields/components/constants.d.ts +3 -0
  177. package/types/lib/components/metadata-editor-fields/components/metadata-date-field/date-conversion-utils.d.ts +3 -0
  178. package/types/lib/components/metadata-editor-fields/components/metadata-date-field/metadata-date-field.d.ts +3 -0
  179. package/types/lib/components/metadata-editor-fields/components/metadata-date-field/types.d.ts +4 -0
  180. package/types/lib/components/metadata-editor-fields/components/metadata-date-field/use-date-internationalization.d.ts +6 -0
  181. package/types/lib/components/metadata-editor-fields/components/metadata-enum-field/metadata-enum-field.d.ts +3 -0
  182. package/types/lib/components/metadata-editor-fields/components/metadata-float-field/metadata-float-field.d.ts +3 -0
  183. package/types/lib/components/metadata-editor-fields/components/metadata-float-field/use-float-validation.d.ts +4 -0
  184. package/types/lib/components/metadata-editor-fields/components/metadata-multi-select-field/metadata-multi-select-field.d.ts +3 -0
  185. package/types/lib/components/metadata-editor-fields/components/metadata-string-field/metadata-string-field.d.ts +6 -0
  186. package/types/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/messages.d.ts +32 -0
  187. package/types/lib/components/metadata-editor-fields/components/update-mode-field-wrapper/update-mode-field-wrapper.d.ts +12 -0
  188. package/types/lib/components/metadata-editor-fields/editor-field-types.d.ts +8 -0
  189. package/types/lib/components/metadata-editor-fields/metadata-editor-fields.d.ts +3 -0
  190. package/types/lib/components/metadata-editor-fields/types.d.ts +12 -0
  191. package/types/lib/components/metadata-empty-state/messages.d.ts +53 -0
  192. package/types/lib/components/metadata-empty-state/metadata-empty-state.d.ts +3 -0
  193. package/types/lib/components/metadata-instance-editor/index.d.ts +4 -0
  194. package/types/lib/components/metadata-instance-editor/subcomponents/custom-instance/custom-instance.d.ts +2 -0
  195. package/types/lib/components/metadata-instance-editor/subcomponents/custom-instance/messages.d.ts +18 -0
  196. package/types/lib/components/metadata-instance-editor/subcomponents/custom-instance/types.d.ts +3 -0
  197. package/types/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/custom-instance-new-field.d.ts +2 -0
  198. package/types/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/messages.d.ts +48 -0
  199. package/types/lib/components/metadata-instance-editor/subcomponents/custom-instance-new-field/types.d.ts +5 -0
  200. package/types/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/delete-confirmation-modal.d.ts +2 -0
  201. package/types/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/messages.d.ts +43 -0
  202. package/types/lib/components/metadata-instance-editor/subcomponents/delete-confirmation-modal/types.d.ts +6 -0
  203. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/messages.d.ts +0 -0
  204. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/metadata-instance-form.d.ts +2 -0
  205. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/types.d.ts +26 -0
  206. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form/utils.d.ts +12 -0
  207. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/messages.d.ts +23 -0
  208. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/metadata-instance-form-footer.d.ts +2 -0
  209. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-footer/types.d.ts +5 -0
  210. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/messages.d.ts +18 -0
  211. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/metadata-instance-form-header.d.ts +2 -0
  212. package/types/lib/components/metadata-instance-editor/subcomponents/metadata-instance-form-header/types.d.ts +6 -0
  213. package/types/lib/components/metadata-instance-editor/types.d.ts +6 -0
  214. package/types/lib/components/metadata-instance-list/index.d.ts +2 -0
  215. package/types/lib/components/metadata-instance-list/metadata-instance-list.d.ts +2 -0
  216. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance/metadata-instance.d.ts +2 -0
  217. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance/types.d.ts +7 -0
  218. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-content/metadata-instance-content.d.ts +2 -0
  219. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-content/types.d.ts +5 -0
  220. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/convertDate.d.ts +30 -0
  221. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/metadata-instance-entry.d.ts +2 -0
  222. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-entry/types.d.ts +8 -0
  223. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/messages.d.ts +13 -0
  224. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/metadata-instance-footer.d.ts +2 -0
  225. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-footer/types.d.ts +5 -0
  226. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/messages.d.ts +8 -0
  227. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/metadata-instance-header.d.ts +4 -0
  228. package/types/lib/components/metadata-instance-list/subcomponents/metadata-instance-header/types.d.ts +7 -0
  229. package/types/lib/components/metadata-instance-list/types.d.ts +7 -0
  230. package/types/lib/components/metadata-taxonomy-field/combobox-with-api-pagination.d.ts +15 -0
  231. package/types/lib/components/metadata-taxonomy-field/index.d.ts +2 -0
  232. package/types/lib/components/metadata-taxonomy-field/messages.d.ts +38 -0
  233. package/types/lib/components/metadata-taxonomy-field/request.d.ts +7 -0
  234. package/types/lib/components/metadata-taxonomy-field/single-level-taxonomy-field.d.ts +5 -0
  235. package/types/lib/components/metadata-taxonomy-field/types.d.ts +41 -0
  236. package/types/lib/components/metadata-taxonomy-field/use-async-list.d.ts +63 -0
  237. package/types/lib/components/metadata-taxonomy-field/utils/use-intersection-observer.d.ts +28 -0
  238. package/types/lib/components/unsaved-changes-modal/index.d.ts +1 -0
  239. package/types/lib/components/unsaved-changes-modal/messages.d.ts +28 -0
  240. package/types/lib/components/unsaved-changes-modal/types.d.ts +19 -0
  241. package/types/lib/components/unsaved-changes-modal/unsaved-changes-modal.d.ts +2 -0
  242. package/types/lib/components/unsaved-changes-modal/utils.d.ts +1 -0
  243. package/types/lib/constants.d.ts +1 -0
  244. package/types/lib/defaults.d.ts +13 -0
  245. package/types/lib/mappers.d.ts +16 -0
  246. package/types/lib/messages.d.ts +113 -0
  247. package/types/lib/metadata-editor.d.ts +4 -0
  248. package/types/lib/test-utils/formik-wrapper.d.ts +11 -0
  249. package/types/lib/test-utils/index.d.ts +3 -0
  250. package/types/lib/test-utils/sample-data.d.ts +24 -0
  251. package/types/lib/test-utils/test-utils.d.ts +3 -0
  252. package/types/lib/types.d.ts +63 -0
@@ -0,0 +1,63 @@
1
+ import { Text as n, EmptyState as f } from "@box/blueprint-web";
2
+ import { JobAnalyzeData as p } from "@box/blueprint-web-assets/illustrations/Small";
3
+ import { useCallback as l } from "react";
4
+ import { useIntl as d } from "react-intl";
5
+ import e from "./messages.js";
6
+ import { jsx as a } from "react/jsx-runtime";
7
+ function E({
8
+ isAnyEmptyValueHidden: m = !1,
9
+ isBoxAiSuggestionsFeatureEnabled: s = !1,
10
+ level: r,
11
+ onShowEmptyValues: i
12
+ }) {
13
+ const t = d(), c = l(() => {
14
+ if (r === "manager")
15
+ return /* @__PURE__ */ a(n, {
16
+ as: "p",
17
+ children: t.formatMessage(e.managerLevelEmptyStateBody)
18
+ });
19
+ if (r === "instance")
20
+ return m ? /* @__PURE__ */ a(f.PrimaryAction, {
21
+ onClick: i,
22
+ children: t.formatMessage(e.instanceLevelSeeEmptyValuesCTA)
23
+ }) : (
24
+ // EmptyState component requires body element so if level === "instance" && !isAnyEmptyValueHidden we pass heading as body and nothing as heading
25
+ /* @__PURE__ */ a(n, {
26
+ as: "h1",
27
+ variant: "titleSmall",
28
+ children: t.formatMessage(e.instanceLevelEmptyStateHeadingNoAttributes)
29
+ })
30
+ );
31
+ const o = s ? t.formatMessage(e.fileLevelEmptyStateBoxAiEnabledBody) : t.formatMessage(e.fileLevelEmptyStateDefaultBody);
32
+ return /* @__PURE__ */ a(n, {
33
+ as: "p",
34
+ children: o
35
+ });
36
+ }, [t, m, s, r, i]), g = l(() => {
37
+ if (r === "manager")
38
+ return /* @__PURE__ */ a(n, {
39
+ as: "h2",
40
+ children: t.formatMessage(e.managerLevelEmptyStateHeading)
41
+ });
42
+ if (r === "instance")
43
+ return m ? /* @__PURE__ */ a(n, {
44
+ as: "h2",
45
+ children: t.formatMessage(e.instanceLevelEmptyStateHeading)
46
+ }) : null;
47
+ const o = s ? t.formatMessage(e.fileLevelEmptyStateBoxAiEnabledHeading) : t.formatMessage(e.fileLevelEmptyStateDefaultHeading);
48
+ return /* @__PURE__ */ a(n, {
49
+ as: "h2",
50
+ children: o
51
+ });
52
+ }, [t, m, s, r]);
53
+ return /* @__PURE__ */ a(f, {
54
+ body: c(),
55
+ heading: g(),
56
+ illustration: p,
57
+ size: "small"
58
+ });
59
+ }
60
+ export {
61
+ E as MetadataEmptyState,
62
+ E as default
63
+ };
@@ -0,0 +1,10 @@
1
+ import { DeleteConfirmationModal as t } from "./subcomponents/delete-confirmation-modal/delete-confirmation-modal.js";
2
+ import { MetadataInstanceFormHeader as r } from "./subcomponents/metadata-instance-form-header/metadata-instance-form-header.js";
3
+ import { CustomInstanceNewField as n } from "./subcomponents/custom-instance-new-field/custom-instance-new-field.js";
4
+ import { MetadataInstanceForm as f } from "./subcomponents/metadata-instance-form/metadata-instance-form.js";
5
+ export {
6
+ n as CustomInstanceNewField,
7
+ t as DeleteConfirmationModal,
8
+ f as MetadataInstanceForm,
9
+ r as MetadataInstanceFormHeader
10
+ };
@@ -0,0 +1,76 @@
1
+ import "../../../../../../styles/custom-instance.css";
2
+ import { useFormikContext as F, FieldArray as _, Field as h } from "formik";
3
+ import { useState as x } from "react";
4
+ import { useIntl as b } from "react-intl";
5
+ import { TextInput as N, IconButton as g, TextButton as k } from "@box/blueprint-web";
6
+ import { Trash as y } from "@box/blueprint-web-assets/icons/Line";
7
+ import { CustomInstanceNewField as C } from "../custom-instance-new-field/custom-instance-new-field.js";
8
+ import { fieldDefaultProps as v } from "../../../metadata-editor-fields/components/constants.js";
9
+ import l from "./messages.js";
10
+ import { jsx as e, jsxs as r } from "react/jsx-runtime";
11
+ const q = "_customInstance_xq8r7_1", A = "_customInstanceField_xq8r7_7", w = "_customInstanceFieldInput_xq8r7_12", M = "_customInstanceFieldIcon_xq8r7_16", o = {
12
+ customInstance: q,
13
+ customInstanceField: A,
14
+ customInstanceFieldInput: w,
15
+ customInstanceFieldIcon: M
16
+ }, $ = (d) => {
17
+ const {
18
+ isLoading: a
19
+ } = d, {
20
+ values: s
21
+ } = F(), c = b(), [m, i] = x(!s.metadata.fields.length);
22
+ return /* @__PURE__ */ e("div", {
23
+ children: /* @__PURE__ */ e(_, {
24
+ name: "metadata.fields",
25
+ children: ({
26
+ remove: u,
27
+ push: I
28
+ }) => /* @__PURE__ */ r("div", {
29
+ className: o.customInstance,
30
+ children: [s == null ? void 0 : s.metadata.fields.map((t, n) => /* @__PURE__ */ r("div", {
31
+ className: o.customInstanceField,
32
+ children: [/* @__PURE__ */ e("div", {
33
+ className: o.customInstanceFieldInput,
34
+ children: /* @__PURE__ */ e(h, {
35
+ name: `metadata.fields[${n}].value`,
36
+ children: ({
37
+ field: f,
38
+ meta: p
39
+ }) => /* @__PURE__ */ e(N, {
40
+ ...v,
41
+ ...f,
42
+ disabled: a,
43
+ error: p.error,
44
+ label: t.key,
45
+ placeholder: c.formatMessage(l.setValuePlaceholder)
46
+ })
47
+ })
48
+ }), /* @__PURE__ */ e(g, {
49
+ "aria-label": c.formatMessage(l.removeAttribute),
50
+ className: o.customInstanceFieldIcon,
51
+ disabled: a,
52
+ icon: y,
53
+ onClick: () => u(n),
54
+ size: "x-small"
55
+ })]
56
+ }, t.key)), m && /* @__PURE__ */ e(C, {
57
+ formKeys: s.metadata.fields.map((t) => t.key),
58
+ onAdd: (t, n) => {
59
+ I({
60
+ key: t,
61
+ value: n
62
+ }), i(!1);
63
+ },
64
+ onCancel: () => i(!1)
65
+ }), !m && /* @__PURE__ */ e(k, {
66
+ disabled: a,
67
+ onClick: () => i(!0),
68
+ children: c.formatMessage(l.addAttribute)
69
+ })]
70
+ })
71
+ })
72
+ });
73
+ };
74
+ export {
75
+ $ as CustomInstance
76
+ };
@@ -0,0 +1,18 @@
1
+ import { defineMessages as t } from "react-intl";
2
+ const a = t({
3
+ addAttribute: {
4
+ id: "metadataEditor.metadataInstanceEditor.customInstance.addAttribute",
5
+ defaultMessage: "+ Add Attribute"
6
+ },
7
+ removeAttribute: {
8
+ id: "metadataEditor.metadataInstanceEditor.customInstance.removeAttribute",
9
+ defaultMessage: "Remove"
10
+ },
11
+ setValuePlaceholder: {
12
+ id: "metadataEditor.metadataInstanceEditor.customInstance.setValuePlaceholder",
13
+ defaultMessage: "Set value"
14
+ }
15
+ });
16
+ export {
17
+ a as default
18
+ };
@@ -0,0 +1,58 @@
1
+ import "../../../../../../styles/custom-instance-new-field.css";
2
+ import { Card as v, TextInput as m, Button as u } from "@box/blueprint-web";
3
+ import { useState as l } from "react";
4
+ import { useIntl as w } from "react-intl";
5
+ import t from "./messages.js";
6
+ import { jsxs as p, jsx as a } from "react/jsx-runtime";
7
+ const M = "_customInstanceNewFieldCard_1m7z1_1", _ = "_customInstanceNewFieldFooter_1m7z1_6", K = "_inputWrapper_1m7z1_13", n = {
8
+ customInstanceNewFieldCard: M,
9
+ customInstanceNewFieldFooter: _,
10
+ inputWrapper: K
11
+ }, z = (f) => {
12
+ const {
13
+ onAdd: h,
14
+ onCancel: g,
15
+ formKeys: c = []
16
+ } = f, e = w(), [s, F] = l(""), [i, C] = l(""), [d, o] = l(""), N = c.length !== 0, I = (r) => {
17
+ F(r), d && o("");
18
+ }, y = () => {
19
+ s ? s.startsWith("$") ? o(e.formatMessage(t.customErrorInternalKey)) : c.includes(s) ? o(e.formatMessage(t.customErrorDuplicateKey)) : h(s, i) : o(e.formatMessage(t.keyFieldRequiredError));
20
+ };
21
+ return /* @__PURE__ */ p(v, {
22
+ className: n.customInstanceNewFieldCard,
23
+ "data-testid": "customInstanceNewField",
24
+ children: [/* @__PURE__ */ a("div", {
25
+ className: n.inputWrapper,
26
+ children: /* @__PURE__ */ a(m, {
27
+ error: d,
28
+ label: e.formatMessage(t.customKeyLabel),
29
+ onChange: (r) => I(r.target.value),
30
+ placeholder: e.formatMessage(t.customKeyPlaceholder),
31
+ required: !0,
32
+ value: s
33
+ })
34
+ }), /* @__PURE__ */ a("div", {
35
+ className: n.inputWrapper,
36
+ children: /* @__PURE__ */ a(m, {
37
+ label: e.formatMessage(t.valueLabel),
38
+ onChange: (r) => C(r.target.value),
39
+ placeholder: e.formatMessage(t.valuePlaceholder),
40
+ value: i
41
+ })
42
+ }), /* @__PURE__ */ p("div", {
43
+ className: n.customInstanceNewFieldFooter,
44
+ children: [N && /* @__PURE__ */ a(u, {
45
+ onClick: g,
46
+ variant: "secondary",
47
+ children: e.formatMessage(t.cancelCTA)
48
+ }), /* @__PURE__ */ a(u, {
49
+ onClick: y,
50
+ variant: "primary",
51
+ children: e.formatMessage(t.addNewFieldCTA)
52
+ })]
53
+ })]
54
+ });
55
+ };
56
+ export {
57
+ z as CustomInstanceNewField
58
+ };
@@ -0,0 +1,42 @@
1
+ import { defineMessages as e } from "react-intl";
2
+ const t = e({
3
+ addNewFieldCTA: {
4
+ id: "metadataEditor.metadataEditor.customIntanceNewField.addNewFieldCTA",
5
+ defaultMessage: "Add"
6
+ },
7
+ cancelCTA: {
8
+ id: "metadataEditor.metadataEditor.customIntanceNewField.cancelCTA",
9
+ defaultMessage: "Cancel"
10
+ },
11
+ customErrorInternalKey: {
12
+ id: "metadataEditor.metadataEditor.customIntanceNewField.customErrorInternalKey",
13
+ defaultMessage: "Keys cannot begin with a $."
14
+ },
15
+ customErrorDuplicateKey: {
16
+ id: "metadataEditor.metadataEditor.customIntanceNewField.customErrorDuplicateKey",
17
+ defaultMessage: "Key already exists."
18
+ },
19
+ customKeyLabel: {
20
+ id: "metadataEditor.metadataEditor.customIntanceNewField.attributeNameLabel",
21
+ defaultMessage: "Attribute Name"
22
+ },
23
+ customKeyPlaceholder: {
24
+ id: "metadataEditor.metadataEditor.customIntanceNewField.customKeyPlaceholder",
25
+ defaultMessage: "e.g. Order Number"
26
+ },
27
+ keyFieldRequiredError: {
28
+ id: "metadataEditor.metadataEditor.customIntanceNewField.keyFieldRequired",
29
+ defaultMessage: "Key is required"
30
+ },
31
+ valueLabel: {
32
+ id: "metadataEditor.metadataEditor.customIntanceNewField.valueLabel",
33
+ defaultMessage: "Value"
34
+ },
35
+ valuePlaceholder: {
36
+ id: "metadataEditor.metadataEditor.customIntanceNewField.valuePlaceholder",
37
+ defaultMessage: "e.g. 42"
38
+ }
39
+ });
40
+ export {
41
+ t as default
42
+ };
@@ -0,0 +1,81 @@
1
+ import "../../../../../../styles/delete-confirmation-modal.css";
2
+ import { Modal as a, Text as c, TextInput as b } from "@box/blueprint-web";
3
+ import { useIntl as F, FormattedMessage as s } from "react-intl";
4
+ import { useState as f, useEffect as I } from "react";
5
+ import o from "./messages.js";
6
+ import { jsx as e, jsxs as d } from "react/jsx-runtime";
7
+ const x = "_modalBody_yiat3_1", N = {
8
+ modalBody: x
9
+ }, V = ({
10
+ onConfirm: u,
11
+ templateName: p,
12
+ onDismiss: C,
13
+ open: h
14
+ }) => {
15
+ const l = F(), [r, m] = f(""), [M, g] = f(!0), i = (n) => {
16
+ n || (C(), m(""));
17
+ }, t = p || l.formatMessage(o.deleteConfirmationModalCustomMetadata), B = (n) => {
18
+ m(n);
19
+ }, y = () => {
20
+ u(), i(!1);
21
+ };
22
+ return I(() => {
23
+ g(r !== t);
24
+ }, [r, t]), /* @__PURE__ */ e(a, {
25
+ onOpenChange: i,
26
+ open: h,
27
+ children: /* @__PURE__ */ d(a.Content, {
28
+ size: "small",
29
+ children: [/* @__PURE__ */ e(a.Header, {
30
+ children: /* @__PURE__ */ e(s, {
31
+ ...o.deleteConfirmationModalHeader,
32
+ values: {
33
+ templateName: t
34
+ }
35
+ })
36
+ }), /* @__PURE__ */ e(a.ScrollableContainer, {
37
+ children: /* @__PURE__ */ d(a.Body, {
38
+ className: N.modalBody,
39
+ children: [/* @__PURE__ */ e(c, {
40
+ as: "p",
41
+ children: /* @__PURE__ */ e(s, {
42
+ ...o.deleteConfirmationModalBodyFirstParagraph,
43
+ values: {
44
+ templateName: t
45
+ }
46
+ })
47
+ }), /* @__PURE__ */ e(c, {
48
+ as: "p",
49
+ children: /* @__PURE__ */ e(s, {
50
+ ...o.deleteConfirmationModalBodySecondParagraph
51
+ })
52
+ }), /* @__PURE__ */ e(b, {
53
+ label: l.formatMessage(o.deleteConfirmationModalBodyInputFieldLabel, {
54
+ templateName: t
55
+ }),
56
+ onChange: (n) => B(n.target.value),
57
+ placeholder: t,
58
+ required: !0,
59
+ value: r
60
+ })]
61
+ })
62
+ }), /* @__PURE__ */ d(a.Footer, {
63
+ children: [/* @__PURE__ */ e(a.Footer.SecondaryButton, {
64
+ onClick: () => i(!1),
65
+ size: "large",
66
+ children: l.formatMessage(o.deleteConfirmationModalCancelButton)
67
+ }), /* @__PURE__ */ e(a.Footer.PrimaryButton, {
68
+ disabled: M,
69
+ onClick: y,
70
+ size: "large",
71
+ children: l.formatMessage(o.deleteConfirmationModalConfirmButton)
72
+ })]
73
+ }), /* @__PURE__ */ e(a.Close, {
74
+ "aria-label": l.formatMessage(o.deleteConfirmationModalDismissButton)
75
+ })]
76
+ })
77
+ });
78
+ };
79
+ export {
80
+ V as DeleteConfirmationModal
81
+ };
@@ -0,0 +1,38 @@
1
+ import { defineMessages as e } from "react-intl";
2
+ const a = e({
3
+ deleteConfirmationModalCustomMetadata: {
4
+ id: "metadataEditor.editInstance.deleteConfirmationModal.customMedatata",
5
+ defaultMessage: "Custom Metadata"
6
+ },
7
+ deleteConfirmationModalHeader: {
8
+ id: "metadataEditor.editInstance.deleteConfirmationModal.header",
9
+ defaultMessage: 'Delete "{templateName}"'
10
+ },
11
+ deleteConfirmationModalBodyFirstParagraph: {
12
+ id: "metadataEditor.editInstance.deleteConfirmationModal.body.firstParagraph",
13
+ defaultMessage: 'Are you sure you want to delete the "{templateName}" Metadata template, and all of its values from this file?'
14
+ },
15
+ deleteConfirmationModalBodySecondParagraph: {
16
+ id: "metadataEditor.editInstance.deleteConfirmationModal.body.secondParagraph",
17
+ defaultMessage: "Once deleted, Metadata values cannot be restored."
18
+ },
19
+ deleteConfirmationModalBodyInputFieldLabel: {
20
+ id: "metadataEditor.editInstance.deleteConfirmationModal.body.inputFieldLabel",
21
+ defaultMessage: 'Type "{templateName}" to confirm'
22
+ },
23
+ deleteConfirmationModalCancelButton: {
24
+ id: "metadataEditor.editInstance.deleteConfirmationModal.cancelButton",
25
+ defaultMessage: "Cancel"
26
+ },
27
+ deleteConfirmationModalConfirmButton: {
28
+ id: "metadataEditor.editInstance.deleteConfirmationModal.confirmButton",
29
+ defaultMessage: "Confirm"
30
+ },
31
+ deleteConfirmationModalDismissButton: {
32
+ id: "metadataEditor.editInstance.deleteConfirmationModal.dismissButton",
33
+ defaultMessage: "Dismiss"
34
+ }
35
+ });
36
+ export {
37
+ a as default
38
+ };
@@ -0,0 +1,79 @@
1
+ import "../../../../../../styles/metadata-instance-form.css";
2
+ import { useState as l, useMemo as S } from "react";
3
+ import { Formik as D } from "formik";
4
+ import { Card as E } from "@box/blueprint-web";
5
+ import { CustomInstance as y } from "../custom-instance/custom-instance.js";
6
+ import { DeleteConfirmationModal as O } from "../delete-confirmation-modal/delete-confirmation-modal.js";
7
+ import { MetadataEmptyState as b } from "../../../metadata-empty-state/metadata-empty-state.js";
8
+ import { MetadataInstanceFormFooter as N } from "../metadata-instance-form-footer/metadata-instance-form-footer.js";
9
+ import { MetadataInstanceFormHeader as T } from "../metadata-instance-form-header/metadata-instance-form-header.js";
10
+ import { UnsavedChangesModal as v } from "../../../unsaved-changes-modal/unsaved-changes-modal.js";
11
+ import { TemplateInstance as _ } from "../../../metadata-editor-fields/metadata-editor-fields.js";
12
+ import { TEMPLATE_CUSTOM_PROPERTIES as x } from "../../../../constants.js";
13
+ import { createJSONPatch as A } from "./utils.js";
14
+ import { jsx as t, jsxs as d, Fragment as P } from "react/jsx-runtime";
15
+ const U = "_metadataInstanceForm_1hu4u_1", j = {
16
+ metadataInstanceForm: U
17
+ }, X = (c) => {
18
+ const {
19
+ isAiSuggestionsFeatureEnabled: o,
20
+ isLoading: n,
21
+ onCancel: p,
22
+ onDelete: f,
23
+ onSubmit: u,
24
+ selectedTemplateInstance: e
25
+ } = c, [C, m] = l(!1), [M, r] = l(!1), i = (a) => {
26
+ u(e.id, A(a, e));
27
+ }, h = (a) => {
28
+ a ? m(!0) : p();
29
+ }, F = () => {
30
+ r(!0);
31
+ }, I = {
32
+ metadata: {
33
+ ...e
34
+ }
35
+ }, g = S(() => {
36
+ const a = e.templateKey === x, s = e.fields.length === 0;
37
+ return a ? /* @__PURE__ */ t(y, {
38
+ isLoading: n
39
+ }) : s ? /* @__PURE__ */ t(b, {
40
+ isBoxAiSuggestionsFeatureEnabled: o,
41
+ level: "instance"
42
+ }) : /* @__PURE__ */ t(_, {
43
+ disableForm: n
44
+ });
45
+ }, [e.templateKey, e.fields.length, n, o]);
46
+ return /* @__PURE__ */ t(D, {
47
+ initialValues: I,
48
+ onSubmit: i,
49
+ children: ({
50
+ values: a,
51
+ dirty: s
52
+ }) => /* @__PURE__ */ d(P, {
53
+ children: [/* @__PURE__ */ d(E, {
54
+ className: j.metadataInstanceForm,
55
+ children: [/* @__PURE__ */ t(T, {
56
+ isAiSuggestionsFeatureEnabled: o,
57
+ isLoading: n,
58
+ templateName: e.displayName
59
+ }), g, /* @__PURE__ */ t(N, {
60
+ isLoading: n,
61
+ onCancel: () => h(s),
62
+ onDelete: F
63
+ })]
64
+ }), /* @__PURE__ */ t(v, {
65
+ onDismiss: () => m(!1),
66
+ onSaveAndContinue: () => i(a),
67
+ open: C
68
+ }), /* @__PURE__ */ t(O, {
69
+ onConfirm: () => f(e.id),
70
+ onDismiss: () => r(!1),
71
+ open: M,
72
+ templateName: e.displayName
73
+ })]
74
+ })
75
+ });
76
+ };
77
+ export {
78
+ X as MetadataInstanceForm
79
+ };
@@ -0,0 +1,33 @@
1
+ const p = {
2
+ ADD: "add",
3
+ REMOVE: "remove",
4
+ REPLACE: "replace",
5
+ TEST: "test"
6
+ }, f = (a, s) => {
7
+ const u = [], o = a.metadata.fields, c = new Map(s.fields.map((e) => [e.key, e])), l = new Map(o.map((e) => [e.key, e]));
8
+ return o.forEach((e) => {
9
+ const t = c.get(e.key);
10
+ t ? JSON.stringify(e) === JSON.stringify(t) || (t.value === null && e.value !== null ? u.push(r(e.key, e.value)) : e.value !== t.value && e.value !== null && t.value !== null && (u.push(n(t.key, t.value)), u.push(h(e.key, e.value)))) : u.push(r(e.key, e.value));
11
+ }), s.fields.forEach((e) => {
12
+ const t = l.get(e.key);
13
+ (!t || t.value === null && e.value !== null) && (u.push(n(e.key, e.value)), u.push(v(e.key)));
14
+ }), u;
15
+ }, n = (a, s) => ({
16
+ op: p.TEST,
17
+ path: `/${a}`,
18
+ value: s
19
+ }), r = (a, s) => ({
20
+ op: p.ADD,
21
+ path: `/${a}`,
22
+ value: s
23
+ }), v = (a) => ({
24
+ op: p.REMOVE,
25
+ path: `/${a}`
26
+ }), h = (a, s) => ({
27
+ op: p.REPLACE,
28
+ path: `/${a}`,
29
+ value: s
30
+ });
31
+ export {
32
+ f as createJSONPatch
33
+ };
@@ -0,0 +1,22 @@
1
+ import { defineMessages as a } from "react-intl";
2
+ const e = a({
3
+ cancelButton: {
4
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormFooter.cancelButton",
5
+ defaultMessage: "Cancel"
6
+ },
7
+ deleteButton: {
8
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormFooter.deleteButton",
9
+ defaultMessage: "Delete"
10
+ },
11
+ loadingAriaLabel: {
12
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormFooter.loadingAriaLabel",
13
+ defaultMessage: "Loading..."
14
+ },
15
+ saveButton: {
16
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormFooter.saveButton",
17
+ defaultMessage: "Save"
18
+ }
19
+ });
20
+ export {
21
+ e as default
22
+ };
@@ -0,0 +1,50 @@
1
+ import "../../../../../../styles/metadata-instance-form-footer.css";
2
+ import { TextButton as u, Button as r } from "@box/blueprint-web";
3
+ import { useFormikContext as b } from "formik";
4
+ import { useIntl as F } from "react-intl";
5
+ import o from "./messages.js";
6
+ import { jsx as e, jsxs as i } from "react/jsx-runtime";
7
+ const g = "_metadataInstanceFormFooter_17478_1", f = "_buttonsContainer_17478_8", _ = "_buttons_17478_8", a = {
8
+ metadataInstanceFormFooter: g,
9
+ buttonsContainer: f,
10
+ buttons: _
11
+ }, x = ({
12
+ isLoading: m,
13
+ onCancel: c,
14
+ onDelete: l
15
+ }) => {
16
+ const t = F(), {
17
+ isSubmitting: s,
18
+ submitForm: d
19
+ } = b(), n = m || s;
20
+ return /* @__PURE__ */ e("div", {
21
+ className: a.metadataInstanceFormFooter,
22
+ children: /* @__PURE__ */ i("div", {
23
+ className: a.buttonsContainer,
24
+ children: [/* @__PURE__ */ e(u, {
25
+ disabled: n,
26
+ onClick: l,
27
+ children: t.formatMessage(o.deleteButton)
28
+ }), /* @__PURE__ */ i("div", {
29
+ className: a.buttons,
30
+ children: [/* @__PURE__ */ e(r, {
31
+ disabled: n,
32
+ onClick: c,
33
+ size: "large",
34
+ variant: "secondary",
35
+ children: t.formatMessage(o.cancelButton)
36
+ }), /* @__PURE__ */ e(r, {
37
+ disabled: n,
38
+ loading: s,
39
+ loadingAriaLabel: t.formatMessage(o.loadingAriaLabel),
40
+ onClick: d,
41
+ size: "large",
42
+ children: t.formatMessage(o.saveButton)
43
+ })]
44
+ })]
45
+ })
46
+ });
47
+ };
48
+ export {
49
+ x as MetadataInstanceFormFooter
50
+ };
@@ -0,0 +1,18 @@
1
+ import { defineMessages as a } from "react-intl";
2
+ const e = a({
3
+ autofillButton: {
4
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormHeader.autofillButton",
5
+ defaultMessage: "Autofill"
6
+ },
7
+ customInstanceTitle: {
8
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormHeader.customInstanceTitle",
9
+ defaultMessage: "Custom Metadata"
10
+ },
11
+ loadingButtonAriaLabel: {
12
+ id: "metadataEditor.metadataInstanceEditor.metadataInstanceFormHeader.loadingButtonAriaLabel",
13
+ defaultMessage: "Loading..."
14
+ }
15
+ });
16
+ export {
17
+ e as default
18
+ };
@@ -0,0 +1,40 @@
1
+ import "../../../../../../styles/metadata-instance-form-header.css";
2
+ import { Text as l, Button as d } from "@box/blueprint-web";
3
+ import { BoxAiLogo as f } from "@box/blueprint-web-assets/icons/Logo";
4
+ import { useFormikContext as u } from "formik";
5
+ import { useIntl as g } from "react-intl";
6
+ import e from "./messages.js";
7
+ import { jsxs as p, jsx as a } from "react/jsx-runtime";
8
+ const I = "_metadataInstanceFormHeader_1b2cc_1", b = "_title_1b2cc_8", o = {
9
+ metadataInstanceFormHeader: I,
10
+ title: b
11
+ }, v = ({
12
+ isAiSuggestionsFeatureEnabled: n,
13
+ isLoading: r,
14
+ onAutofill: s,
15
+ templateName: i
16
+ }) => {
17
+ const {
18
+ isSubmitting: m
19
+ } = u(), t = g(), c = i ?? t.formatMessage(e.customInstanceTitle);
20
+ return /* @__PURE__ */ p("div", {
21
+ className: o.metadataInstanceFormHeader,
22
+ children: [/* @__PURE__ */ a(l, {
23
+ as: "h1",
24
+ className: o.title,
25
+ variant: "titleMedium",
26
+ children: c
27
+ }), n && /* @__PURE__ */ a(d, {
28
+ disabled: m,
29
+ icon: f,
30
+ loading: r,
31
+ loadingAriaLabel: t.formatMessage(e.loadingButtonAriaLabel),
32
+ onClick: s,
33
+ variant: "secondary",
34
+ children: t.formatMessage(e.autofillButton)
35
+ })]
36
+ });
37
+ };
38
+ export {
39
+ v as MetadataInstanceFormHeader
40
+ };
@@ -0,0 +1,8 @@
1
+ import { MetadataInstanceList as e } from "./metadata-instance-list.js";
2
+ import { MetadataInstanceHeader as r, autofillButtonAriaLabel as n, editButtonAriaLabel as i } from "./subcomponents/metadata-instance-header/metadata-instance-header.js";
3
+ export {
4
+ r as MetadataInstanceHeader,
5
+ e as MetadataInstanceList,
6
+ n as autofillButtonAriaLabel,
7
+ i as editButtonAriaLabel
8
+ };
@@ -0,0 +1,22 @@
1
+ import "../../../../styles/metadata-instance-list.css";
2
+ import { MetadataInstance as c } from "./subcomponents/metadata-instance/metadata-instance.js";
3
+ import { jsx as a } from "react/jsx-runtime";
4
+ const d = "_metadataInstanceList_bd83w_1", m = {
5
+ metadataInstanceList: d
6
+ }, L = ({
7
+ isAiSuggestionsFeatureEnabled: s,
8
+ onEdit: n,
9
+ onEditWithAutofill: e,
10
+ templateInstances: i
11
+ }) => /* @__PURE__ */ a("div", {
12
+ className: m.metadataInstanceList,
13
+ children: i.map((t) => /* @__PURE__ */ a(c, {
14
+ isAiSuggestionsFeatureEnabled: s,
15
+ onEdit: n,
16
+ onEditWithAutofill: e,
17
+ templateInstance: t
18
+ }, t.id))
19
+ });
20
+ export {
21
+ L as MetadataInstanceList
22
+ };