@plumile/ui-backoffice 0.1.53 → 0.1.55

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 (83) hide show
  1. package/lib/esm/backoffice/molecules/backoffice_detail_layout/BackofficeDetailLayout.js +26 -0
  2. package/lib/esm/backoffice/molecules/backoffice_detail_layout/BackofficeDetailLayout.js.map +1 -0
  3. package/lib/esm/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.js +11 -0
  4. package/lib/esm/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.js.map +1 -0
  5. package/lib/esm/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.ts.vanilla-D0P3CDXC.css +1 -0
  6. package/lib/esm/backoffice/molecules/backoffice_empty_state/BackofficeEmptyState.js +26 -19
  7. package/lib/esm/backoffice/molecules/backoffice_empty_state/BackofficeEmptyState.js.map +1 -0
  8. package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.js +10 -36
  9. package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.js.map +1 -0
  10. package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.ts.vanilla-Bk-T2B_H.css +1 -0
  11. package/lib/esm/backoffice/molecules/backoffice_form_section/BackofficeFormSection.js +23 -0
  12. package/lib/esm/backoffice/molecules/backoffice_form_section/BackofficeFormSection.js.map +1 -0
  13. package/lib/esm/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.js +9 -0
  14. package/lib/esm/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.js.map +1 -0
  15. package/lib/esm/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.ts.vanilla-B2riteFJ.css +1 -0
  16. package/lib/esm/backoffice/molecules/backoffice_key_value_list/BackofficeKeyValueList.js +13 -9
  17. package/lib/esm/backoffice/molecules/backoffice_key_value_list/BackofficeKeyValueList.js.map +1 -0
  18. package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.js +11 -35
  19. package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.js.map +1 -0
  20. package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.ts.vanilla-DBpaSjsF.css +1 -0
  21. package/lib/esm/backoffice/molecules/backoffice_page_header/BackofficePageHeader.js +23 -8
  22. package/lib/esm/backoffice/molecules/backoffice_page_header/BackofficePageHeader.js.map +1 -0
  23. package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.js +12 -45
  24. package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.js.map +1 -0
  25. package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.ts.vanilla-wuFX6NZS.css +1 -0
  26. package/lib/esm/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.js +71 -49
  27. package/lib/esm/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.js.map +1 -0
  28. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.js +12 -63
  29. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.js.map +1 -0
  30. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.ts.vanilla-CYh03qtn.css +1 -0
  31. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/BackofficeTableToolbar.js +33 -0
  32. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/BackofficeTableToolbar.js.map +1 -0
  33. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.js +10 -0
  34. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.js.map +1 -0
  35. package/lib/esm/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.ts.vanilla-Cn8nymLF.css +1 -0
  36. package/lib/esm/index.js +26 -5
  37. package/lib/esm/index.js.map +1 -0
  38. package/lib/esm/shared/agentJobRequestFormatting.js +36 -0
  39. package/lib/esm/shared/agentJobRequestFormatting.js.map +1 -0
  40. package/lib/esm/shared/agentText.js +13 -0
  41. package/lib/esm/shared/agentText.js.map +1 -0
  42. package/lib/types/backoffice/molecules/backoffice_detail_layout/BackofficeDetailLayout.d.ts +10 -0
  43. package/lib/types/backoffice/molecules/backoffice_detail_layout/BackofficeDetailLayout.d.ts.map +1 -0
  44. package/lib/types/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.d.ts +7 -0
  45. package/lib/types/backoffice/molecules/backoffice_detail_layout/backofficeDetailLayout.css.d.ts.map +1 -0
  46. package/lib/types/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.d.ts.map +1 -1
  47. package/lib/types/backoffice/molecules/backoffice_form_section/BackofficeFormSection.d.ts +10 -0
  48. package/lib/types/backoffice/molecules/backoffice_form_section/BackofficeFormSection.d.ts.map +1 -0
  49. package/lib/types/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.d.ts +5 -0
  50. package/lib/types/backoffice/molecules/backoffice_form_section/backofficeFormSection.css.d.ts.map +1 -0
  51. package/lib/types/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.d.ts.map +1 -1
  52. package/lib/types/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.d.ts.map +1 -1
  53. package/lib/types/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.d.ts.map +1 -1
  54. package/lib/types/backoffice/molecules/backoffice_table_toolbar/BackofficeTableToolbar.d.ts +13 -0
  55. package/lib/types/backoffice/molecules/backoffice_table_toolbar/BackofficeTableToolbar.d.ts.map +1 -0
  56. package/lib/types/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.d.ts +6 -0
  57. package/lib/types/backoffice/molecules/backoffice_table_toolbar/backofficeTableToolbar.css.d.ts.map +1 -0
  58. package/lib/types/index.d.ts +5 -0
  59. package/lib/types/index.d.ts.map +1 -1
  60. package/lib/types/shared/agentJobRequestFormatting.d.ts +6 -0
  61. package/lib/types/shared/agentJobRequestFormatting.d.ts.map +1 -0
  62. package/lib/types/shared/agentText.d.ts +3 -0
  63. package/lib/types/shared/agentText.d.ts.map +1 -0
  64. package/package.json +9 -4
  65. package/lib/esm/backoffice/molecules/backoffice_empty_state/BackofficeEmptyState.d.ts +0 -11
  66. package/lib/esm/backoffice/molecules/backoffice_empty_state/BackofficeEmptyState.d.ts.map +0 -1
  67. package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.d.ts +0 -6
  68. package/lib/esm/backoffice/molecules/backoffice_empty_state/backofficeEmptyState.css.d.ts.map +0 -1
  69. package/lib/esm/backoffice/molecules/backoffice_key_value_list/BackofficeKeyValueList.d.ts +0 -12
  70. package/lib/esm/backoffice/molecules/backoffice_key_value_list/BackofficeKeyValueList.d.ts.map +0 -1
  71. package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.d.ts +0 -7
  72. package/lib/esm/backoffice/molecules/backoffice_key_value_list/backofficeKeyValueList.css.d.ts.map +0 -1
  73. package/lib/esm/backoffice/molecules/backoffice_page_header/BackofficePageHeader.d.ts +0 -11
  74. package/lib/esm/backoffice/molecules/backoffice_page_header/BackofficePageHeader.d.ts.map +0 -1
  75. package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.d.ts +0 -8
  76. package/lib/esm/backoffice/molecules/backoffice_page_header/backofficePageHeader.css.d.ts.map +0 -1
  77. package/lib/esm/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.d.ts +0 -15
  78. package/lib/esm/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.d.ts.map +0 -1
  79. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.d.ts +0 -8
  80. package/lib/esm/backoffice/molecules/backoffice_relations_menu/backofficeRelationsMenu.css.d.ts.map +0 -1
  81. package/lib/esm/index.d.ts +0 -5
  82. package/lib/esm/index.d.ts.map +0 -1
  83. package/lib/tsconfig.esm.tsbuildinfo +0 -1
@@ -0,0 +1,26 @@
1
+ import { jsxs as r, jsx as e } from "react/jsx-runtime";
2
+ import { cx as s } from "@plumile/ui";
3
+ import { stacked as m, container as n, layout as o, primary as t, secondary as h, header as f } from "./backofficeDetailLayout.css.js";
4
+ const p = ({
5
+ header: l,
6
+ content: i,
7
+ aside: c,
8
+ className: d
9
+ }) => {
10
+ let a = null;
11
+ return l != null && (a = /* @__PURE__ */ e("div", { className: f, children: l })), c == null ? /* @__PURE__ */ r("div", { className: s(n, d), children: [
12
+ a,
13
+ /* @__PURE__ */ e("div", { className: m, children: i })
14
+ ] }) : /* @__PURE__ */ r("div", { className: s(n, d), children: [
15
+ a,
16
+ /* @__PURE__ */ r("div", { className: o, children: [
17
+ /* @__PURE__ */ e("div", { className: t, children: i }),
18
+ /* @__PURE__ */ e("aside", { className: h, children: c })
19
+ ] })
20
+ ] });
21
+ };
22
+ export {
23
+ p as BackofficeDetailLayout,
24
+ p as default
25
+ };
26
+ //# sourceMappingURL=BackofficeDetailLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackofficeDetailLayout.js","sources":["../../../../../src/backoffice/molecules/backoffice_detail_layout/BackofficeDetailLayout.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\nimport { cx } from '@plumile/ui';\n\nimport * as styles from './backofficeDetailLayout.css.js';\n\nexport type BackofficeDetailLayoutProps = {\n header: ReactNode;\n content: ReactNode;\n aside?: ReactNode;\n className?: string;\n};\n\nexport const BackofficeDetailLayout = ({\n header,\n content,\n aside,\n className,\n}: BackofficeDetailLayoutProps): JSX.Element => {\n let headerNode: JSX.Element | null = null;\n if (header != null) {\n headerNode = <div className={styles.header}>{header}</div>;\n }\n\n if (aside == null) {\n return (\n <div className={cx(styles.container, className)}>\n {headerNode}\n <div className={styles.stacked}>{content}</div>\n </div>\n );\n }\n\n return (\n <div className={cx(styles.container, className)}>\n {headerNode}\n <div className={styles.layout}>\n <div className={styles.primary}>{content}</div>\n <aside className={styles.secondary}>{aside}</aside>\n </div>\n </div>\n );\n};\n\nexport default BackofficeDetailLayout;\n"],"names":["BackofficeDetailLayout","header","content","aside","className","headerNode","jsx","styles.header","cx","styles.container","styles.stacked","jsxs","styles.layout","styles.primary","styles.secondary"],"mappings":";;;AAYO,MAAMA,IAAyB,CAAC;AAAA,EAAA,QACrCC;AAAAA,EACA,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AACF,MAAgD;AAC9C,MAAIC,IAAiC;AAKrC,SAJIJ,KAAU,SACZI,IAAa,gBAAAC,EAAC,OAAA,EAAI,WAAWC,GAAgB,UAAAN,GAAO,IAGlDE,KAAS,yBAER,OAAA,EAAI,WAAWK,EAAGC,GAAkBL,CAAS,GAC3C,UAAA;AAAA,IAAAC;AAAA,IACD,gBAAAC,EAAC,OAAA,EAAI,WAAWI,GAAiB,UAAAR,EAAA,CAAQ;AAAA,EAAA,GAC3C,sBAKD,OAAA,EAAI,WAAWM,EAAGC,GAAkBL,CAAS,GAC3C,UAAA;AAAA,IAAAC;AAAA,IACD,gBAAAM,EAAC,OAAA,EAAI,WAAWC,GACd,UAAA;AAAA,MAAA,gBAAAN,EAAC,OAAA,EAAI,WAAWO,GAAiB,UAAAX,GAAQ;AAAA,MACzC,gBAAAI,EAAC,SAAA,EAAM,WAAWQ,GAAmB,UAAAX,EAAA,CAAM;AAAA,IAAA,EAAA,CAC7C;AAAA,EAAA,GACF;AAEJ;"}
@@ -0,0 +1,11 @@
1
+ /* empty css */
2
+ var a = "_1who7yn0", o = "_1who7yn1", n = "_1who7yn2", y = "_1who7yn3", h = "_1who7yn4", e = "_1who7yn5";
3
+ export {
4
+ a as container,
5
+ o as header,
6
+ n as layout,
7
+ y as primary,
8
+ h as secondary,
9
+ e as stacked
10
+ };
11
+ //# sourceMappingURL=backofficeDetailLayout.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backofficeDetailLayout.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1 @@
1
+ ._1who7yn0{display:flex;flex-direction:column;gap:var(--kronex-spacing-4)}._1who7yn1{display:flex;flex-direction:column;gap:var(--kronex-spacing-2)}._1who7yn2{display:grid;grid-template-columns:var(--kronex-gridTemplateColumns-detailAside320);align-items:flex-start;gap:var(--kronex-spacing-4)}._1who7yn3{display:flex;flex-direction:column;gap:var(--kronex-spacing-4);min-width:0}._1who7yn4{display:flex;flex-direction:column;gap:var(--kronex-spacing-3)}._1who7yn5{display:flex;flex-direction:column;gap:var(--kronex-spacing-4)}@media screen and (max-width:1024px){._1who7yn2{grid-template-columns:var(--kronex-gridTemplateColumns-detailSingle)}}
@@ -1,20 +1,27 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { cx } from '@plumile/ui';
3
- import * as styles from './backofficeEmptyState.css.js';
4
- export const BackofficeEmptyState = ({ title, description, actions, icon, className, }) => {
5
- let descriptionNode = null;
6
- if (description != null) {
7
- descriptionNode = _jsx("div", { className: styles.description, children: description });
8
- }
9
- let actionsNode = null;
10
- if (actions != null) {
11
- actionsNode = _jsx("div", { className: styles.actions, children: actions });
12
- }
13
- let iconNode = null;
14
- if (icon != null) {
15
- iconNode = _jsx("div", { className: styles.icon, children: icon });
16
- }
17
- return (_jsxs("div", { className: cx(styles.container, className), children: [iconNode, _jsx("div", { className: styles.title, children: title }), descriptionNode, actionsNode] }));
1
+ import { jsxs as r, jsx as i } from "react/jsx-runtime";
2
+ import { cx as d } from "@plumile/ui";
3
+ import { title as m, container as f, description as u, actions as N, icon as p } from "./backofficeEmptyState.css.js";
4
+ const j = ({
5
+ title: s,
6
+ description: l,
7
+ actions: e,
8
+ icon: t,
9
+ className: a
10
+ }) => {
11
+ let c = null;
12
+ l != null && (c = /* @__PURE__ */ i("div", { className: u, children: l }));
13
+ let n = null;
14
+ e != null && (n = /* @__PURE__ */ i("div", { className: N, children: e }));
15
+ let o = null;
16
+ return t != null && (o = /* @__PURE__ */ i("div", { className: p, children: t })), /* @__PURE__ */ r("div", { className: d(f, a), children: [
17
+ o,
18
+ /* @__PURE__ */ i("div", { className: m, children: s }),
19
+ c,
20
+ n
21
+ ] });
18
22
  };
19
- export default BackofficeEmptyState;
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFja29mZmljZUVtcHR5U3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFja29mZmljZS9tb2xlY3VsZXMvYmFja29mZmljZV9lbXB0eV9zdGF0ZS9CYWNrb2ZmaWNlRW1wdHlTdGF0ZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFakMsT0FBTyxLQUFLLE1BQU0sTUFBTSwrQkFBK0IsQ0FBQztBQVV4RCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLEVBQ25DLEtBQUssRUFDTCxXQUFXLEVBQ1gsT0FBTyxFQUNQLElBQUksRUFDSixTQUFTLEdBQ2lCLEVBQWUsRUFBRTtJQUMzQyxJQUFJLGVBQWUsR0FBdUIsSUFBSSxDQUFDO0lBQy9DLElBQUksV0FBVyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3hCLGVBQWUsR0FBRyxjQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMsV0FBVyxZQUFHLFdBQVcsR0FBTyxDQUFDO0lBQzVFLENBQUM7SUFFRCxJQUFJLFdBQVcsR0FBdUIsSUFBSSxDQUFDO0lBQzNDLElBQUksT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3BCLFdBQVcsR0FBRyxjQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMsT0FBTyxZQUFHLE9BQU8sR0FBTyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFJLFFBQVEsR0FBdUIsSUFBSSxDQUFDO0lBQ3hDLElBQUksSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2pCLFFBQVEsR0FBRyxjQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMsSUFBSSxZQUFHLElBQUksR0FBTyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxPQUFPLENBQ0wsZUFBSyxTQUFTLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLGFBQzVDLFFBQVEsRUFDVCxjQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMsS0FBSyxZQUFHLEtBQUssR0FBTyxFQUMxQyxlQUFlLEVBQ2YsV0FBVyxJQUNSLENBQ1AsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLGVBQWUsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEpTWCwgdHlwZSBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjeCB9IGZyb20gJ0BwbHVtaWxlL3VpJztcblxuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gJy4vYmFja29mZmljZUVtcHR5U3RhdGUuY3NzLmpzJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVtcHR5U3RhdGVQcm9wcyA9IHtcbiAgdGl0bGU6IFJlYWN0Tm9kZTtcbiAgZGVzY3JpcHRpb24/OiBSZWFjdE5vZGU7XG4gIGFjdGlvbnM/OiBSZWFjdE5vZGU7XG4gIGljb24/OiBSZWFjdE5vZGU7XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCBjb25zdCBCYWNrb2ZmaWNlRW1wdHlTdGF0ZSA9ICh7XG4gIHRpdGxlLFxuICBkZXNjcmlwdGlvbixcbiAgYWN0aW9ucyxcbiAgaWNvbixcbiAgY2xhc3NOYW1lLFxufTogQmFja29mZmljZUVtcHR5U3RhdGVQcm9wcyk6IEpTWC5FbGVtZW50ID0+IHtcbiAgbGV0IGRlc2NyaXB0aW9uTm9kZTogSlNYLkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgaWYgKGRlc2NyaXB0aW9uICE9IG51bGwpIHtcbiAgICBkZXNjcmlwdGlvbk5vZGUgPSA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmRlc2NyaXB0aW9ufT57ZGVzY3JpcHRpb259PC9kaXY+O1xuICB9XG5cbiAgbGV0IGFjdGlvbnNOb2RlOiBKU1guRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBpZiAoYWN0aW9ucyAhPSBudWxsKSB7XG4gICAgYWN0aW9uc05vZGUgPSA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmFjdGlvbnN9PnthY3Rpb25zfTwvZGl2PjtcbiAgfVxuXG4gIGxldCBpY29uTm9kZTogSlNYLkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgaWYgKGljb24gIT0gbnVsbCkge1xuICAgIGljb25Ob2RlID0gPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5pY29ufT57aWNvbn08L2Rpdj47XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjeChzdHlsZXMuY29udGFpbmVyLCBjbGFzc05hbWUpfT5cbiAgICAgIHtpY29uTm9kZX1cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMudGl0bGV9Pnt0aXRsZX08L2Rpdj5cbiAgICAgIHtkZXNjcmlwdGlvbk5vZGV9XG4gICAgICB7YWN0aW9uc05vZGV9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBCYWNrb2ZmaWNlRW1wdHlTdGF0ZTtcbiJdfQ==
23
+ export {
24
+ j as BackofficeEmptyState,
25
+ j as default
26
+ };
27
+ //# sourceMappingURL=BackofficeEmptyState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackofficeEmptyState.js","sources":["../../../../../src/backoffice/molecules/backoffice_empty_state/BackofficeEmptyState.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\nimport { cx } from '@plumile/ui';\n\nimport * as styles from './backofficeEmptyState.css.js';\n\nexport type BackofficeEmptyStateProps = {\n title: ReactNode;\n description?: ReactNode;\n actions?: ReactNode;\n icon?: ReactNode;\n className?: string;\n};\n\nexport const BackofficeEmptyState = ({\n title,\n description,\n actions,\n icon,\n className,\n}: BackofficeEmptyStateProps): JSX.Element => {\n let descriptionNode: JSX.Element | null = null;\n if (description != null) {\n descriptionNode = <div className={styles.description}>{description}</div>;\n }\n\n let actionsNode: JSX.Element | null = null;\n if (actions != null) {\n actionsNode = <div className={styles.actions}>{actions}</div>;\n }\n\n let iconNode: JSX.Element | null = null;\n if (icon != null) {\n iconNode = <div className={styles.icon}>{icon}</div>;\n }\n\n return (\n <div className={cx(styles.container, className)}>\n {iconNode}\n <div className={styles.title}>{title}</div>\n {descriptionNode}\n {actionsNode}\n </div>\n );\n};\n\nexport default BackofficeEmptyState;\n"],"names":["BackofficeEmptyState","title","description","actions","icon","className","descriptionNode","jsx","styles.description","actionsNode","styles.actions","iconNode","styles.icon","cx","styles.container","styles.title"],"mappings":";;;AAaO,MAAMA,IAAuB,CAAC;AAAA,EAAA,OACnCC;AAAAA,EAAA,aACAC;AAAAA,EAAA,SACAC;AAAAA,EAAA,MACAC;AAAAA,EACA,WAAAC;AACF,MAA8C;AAC5C,MAAIC,IAAsC;AAC1C,EAAIJ,KAAe,SACjBI,IAAkB,gBAAAC,EAAC,OAAA,EAAI,WAAWC,GAAqB,UAAAN,GAAY;AAGrE,MAAIO,IAAkC;AACtC,EAAIN,KAAW,SACbM,IAAc,gBAAAF,EAAC,OAAA,EAAI,WAAWG,GAAiB,UAAAP,GAAQ;AAGzD,MAAIQ,IAA+B;AACnC,SAAIP,KAAQ,SACVO,IAAW,gBAAAJ,EAAC,OAAA,EAAI,WAAWK,GAAc,UAAAR,GAAK,sBAI7C,OAAA,EAAI,WAAWS,EAAGC,GAAkBT,CAAS,GAC3C,UAAA;AAAA,IAAAM;AAAA,IACD,gBAAAJ,EAAC,OAAA,EAAI,WAAWQ,GAAe,UAAAd,GAAM;AAAA,IACpCK;AAAA,IACAG;AAAA,EAAA,GACH;AAEJ;"}
@@ -1,36 +1,10 @@
1
- import { sprinkles } from '@plumile/ui';
2
- export const container = sprinkles({
3
- display: 'flex',
4
- flexDirection: 'column',
5
- alignItems: 'center',
6
- justifyContent: 'center',
7
- textAlign: 'center',
8
- paddingY: 6,
9
- paddingX: 4,
10
- gap: 2,
11
- color: 'textSecondary',
12
- });
13
- export const icon = sprinkles({
14
- display: 'flex',
15
- alignItems: 'center',
16
- justifyContent: 'center',
17
- color: 'textSecondary',
18
- });
19
- export const title = sprinkles({
20
- fontSize: 'base',
21
- fontWeight: 'semibold',
22
- color: 'text',
23
- });
24
- export const description = sprinkles({
25
- fontSize: 'sm',
26
- color: 'textSecondary',
27
- });
28
- export const actions = sprinkles({
29
- marginTop: 2,
30
- display: 'flex',
31
- alignItems: 'center',
32
- gap: 2,
33
- flexWrap: 'wrap',
34
- justifyContent: 'center',
35
- });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja29mZmljZUVtcHR5U3RhdGUuY3NzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2JhY2tvZmZpY2UvbW9sZWN1bGVzL2JhY2tvZmZpY2VfZW1wdHlfc3RhdGUvYmFja29mZmljZUVtcHR5U3RhdGUuY3NzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUNqQyxPQUFPLEVBQUUsTUFBTTtJQUNmLGFBQWEsRUFBRSxRQUFRO0lBQ3ZCLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLGNBQWMsRUFBRSxRQUFRO0lBQ3hCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLFFBQVEsRUFBRSxDQUFDO0lBQ1gsUUFBUSxFQUFFLENBQUM7SUFDWCxHQUFHLEVBQUUsQ0FBQztJQUNOLEtBQUssRUFBRSxlQUFlO0NBQ3ZCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxTQUFTLENBQUM7SUFDNUIsT0FBTyxFQUFFLE1BQU07SUFDZixVQUFVLEVBQUUsUUFBUTtJQUNwQixjQUFjLEVBQUUsUUFBUTtJQUN4QixLQUFLLEVBQUUsZUFBZTtDQUN2QixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDO0lBQzdCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLFVBQVUsRUFBRSxVQUFVO0lBQ3RCLEtBQUssRUFBRSxNQUFNO0NBQ2QsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQztJQUNuQyxRQUFRLEVBQUUsSUFBSTtJQUNkLEtBQUssRUFBRSxlQUFlO0NBQ3ZCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDL0IsU0FBUyxFQUFFLENBQUM7SUFDWixPQUFPLEVBQUUsTUFBTTtJQUNmLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLEdBQUcsRUFBRSxDQUFDO0lBQ04sUUFBUSxFQUFFLE1BQU07SUFDaEIsY0FBYyxFQUFFLFFBQVE7Q0FDekIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3ByaW5rbGVzIH0gZnJvbSAnQHBsdW1pbGUvdWknO1xuXG5leHBvcnQgY29uc3QgY29udGFpbmVyID0gc3ByaW5rbGVzKHtcbiAgZGlzcGxheTogJ2ZsZXgnLFxuICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgdGV4dEFsaWduOiAnY2VudGVyJyxcbiAgcGFkZGluZ1k6IDYsXG4gIHBhZGRpbmdYOiA0LFxuICBnYXA6IDIsXG4gIGNvbG9yOiAndGV4dFNlY29uZGFyeScsXG59KTtcblxuZXhwb3J0IGNvbnN0IGljb24gPSBzcHJpbmtsZXMoe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gIGNvbG9yOiAndGV4dFNlY29uZGFyeScsXG59KTtcblxuZXhwb3J0IGNvbnN0IHRpdGxlID0gc3ByaW5rbGVzKHtcbiAgZm9udFNpemU6ICdiYXNlJyxcbiAgZm9udFdlaWdodDogJ3NlbWlib2xkJyxcbiAgY29sb3I6ICd0ZXh0Jyxcbn0pO1xuXG5leHBvcnQgY29uc3QgZGVzY3JpcHRpb24gPSBzcHJpbmtsZXMoe1xuICBmb250U2l6ZTogJ3NtJyxcbiAgY29sb3I6ICd0ZXh0U2Vjb25kYXJ5Jyxcbn0pO1xuXG5leHBvcnQgY29uc3QgYWN0aW9ucyA9IHNwcmlua2xlcyh7XG4gIG1hcmdpblRvcDogMixcbiAgZGlzcGxheTogJ2ZsZXgnLFxuICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgZ2FwOiAyLFxuICBmbGV4V3JhcDogJ3dyYXAnLFxuICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG59KTtcbiJdfQ==
1
+ /* empty css */
2
+ var i = "z8zris0", z = "z8zris1", a = "z8zris2", s = "z8zris3", t = "z8zris4";
3
+ export {
4
+ t as actions,
5
+ i as container,
6
+ s as description,
7
+ z as icon,
8
+ a as title
9
+ };
10
+ //# sourceMappingURL=backofficeEmptyState.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backofficeEmptyState.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1 @@
1
+ .z8zris0{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:var(--kronex-spacing-6);padding-bottom:var(--kronex-spacing-6);padding-left:var(--kronex-spacing-4);padding-right:var(--kronex-spacing-4);gap:var(--kronex-spacing-2);color:var(--kronex-colors-textSecondary)}.z8zris1{display:flex;align-items:center;justify-content:center;color:var(--kronex-colors-textSecondary)}.z8zris2{font-size:var(--kronex-fontSize-base);line-height:var(--kronex-lineHeight-base);font-weight:var(--kronex-fontWeight-semibold);color:var(--kronex-colors-text)}.z8zris3{font-size:var(--kronex-fontSize-sm);line-height:var(--kronex-lineHeight-sm);color:var(--kronex-colors-textSecondary)}.z8zris4{margin-top:var(--kronex-spacing-2);display:flex;align-items:center;gap:var(--kronex-spacing-2);flex-wrap:wrap;justify-content:center}
@@ -0,0 +1,23 @@
1
+ import { jsxs as e, jsx as l } from "react/jsx-runtime";
2
+ import { cx as n } from "@plumile/ui";
3
+ import { header as o, title as i, description as t, container as h } from "./backofficeFormSection.css.js";
4
+ const x = ({
5
+ title: r,
6
+ description: a,
7
+ children: m,
8
+ className: c
9
+ }) => {
10
+ const s = r != null && r.trim() !== "" || a != null && a.trim() !== "";
11
+ return /* @__PURE__ */ e("section", { className: n(h, c), children: [
12
+ s && /* @__PURE__ */ e("div", { className: o, children: [
13
+ r != null && r.trim() !== "" && /* @__PURE__ */ l("h3", { className: i, children: r }),
14
+ a != null && a.trim() !== "" && /* @__PURE__ */ l("p", { className: t, children: a })
15
+ ] }),
16
+ m
17
+ ] });
18
+ };
19
+ export {
20
+ x as BackofficeFormSection,
21
+ x as default
22
+ };
23
+ //# sourceMappingURL=BackofficeFormSection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackofficeFormSection.js","sources":["../../../../../src/backoffice/molecules/backoffice_form_section/BackofficeFormSection.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\nimport { cx } from '@plumile/ui';\n\nimport * as styles from './backofficeFormSection.css.js';\n\nexport type BackofficeFormSectionProps = {\n title?: string;\n description?: string;\n children: ReactNode;\n className?: string;\n};\n\nexport const BackofficeFormSection = ({\n title,\n description,\n children,\n className,\n}: BackofficeFormSectionProps): JSX.Element => {\n const hasHeader =\n (title != null && title.trim() !== '') ||\n (description != null && description.trim() !== '');\n\n return (\n <section className={cx(styles.container, className)}>\n {hasHeader && (\n <div className={styles.header}>\n {title != null && title.trim() !== '' && (\n <h3 className={styles.title}>{title}</h3>\n )}\n {description != null && description.trim() !== '' && (\n <p className={styles.description}>{description}</p>\n )}\n </div>\n )}\n {children}\n </section>\n );\n};\n\nexport default BackofficeFormSection;\n"],"names":["BackofficeFormSection","title","description","children","className","hasHeader","cx","styles.container","jsxs","styles.header","styles.title","jsx","styles.description"],"mappings":";;;AAYO,MAAMA,IAAwB,CAAC;AAAA,EAAA,OACpCC;AAAAA,EAAA,aACAC;AAAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AACF,MAA+C;AAC7C,QAAMC,IACHJ,KAAS,QAAQA,EAAM,KAAA,MAAW,MAClCC,KAAe,QAAQA,EAAY,KAAA,MAAW;AAEjD,2BACG,WAAA,EAAQ,WAAWI,EAAGC,GAAkBH,CAAS,GAC/C,UAAA;AAAA,IAAAC,KACC,gBAAAG,EAAC,OAAA,EAAI,WAAWC,GACb,UAAA;AAAA,MAAAR,KAAS,QAAQA,EAAM,KAAA,MAAW,wBAChC,MAAA,EAAG,WAAWS,GAAe,UAAAT,EAAA,CAAM;AAAA,MAErCC,KAAe,QAAQA,EAAY,KAAA,MAAW,MAC7C,gBAAAS,EAAC,KAAA,EAAE,WAAWC,GAAqB,UAAAV,EAAA,CAAY;AAAA,IAAA,GAEnD;AAAA,IAEDC;AAAA,EAAA,GACH;AAEJ;"}
@@ -0,0 +1,9 @@
1
+ /* empty css */
2
+ var n = "w9nf050", a = "w9nf051", e = "w9nf052", t = "w9nf053";
3
+ export {
4
+ n as container,
5
+ t as description,
6
+ a as header,
7
+ e as title
8
+ };
9
+ //# sourceMappingURL=backofficeFormSection.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backofficeFormSection.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1 @@
1
+ .w9nf050{display:flex;flex-direction:column;gap:var(--kronex-spacing-3);padding:var(--kronex-spacing-4);border-radius:var(--kronex-borderRadius-lg);border-width:var(--kronex-borderWidth-default);border-style:solid;border-color:var(--kronex-colors-borderSubtle);background-color:var(--kronex-colors-surface)}.w9nf051{display:flex;flex-direction:column;gap:var(--kronex-spacing-1)}.w9nf052{font-size:var(--kronex-fontSize-base);font-weight:var(--kronex-fontWeight-semibold);color:var(--kronex-colors-text);margin:0}.w9nf053{font-size:var(--kronex-fontSize-sm);color:var(--kronex-colors-textSecondary);margin:0}
@@ -1,10 +1,14 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as styles from './backofficeKeyValueList.css.js';
3
- import { cx } from '@plumile/ui';
4
- export const BackofficeKeyValueList = ({ items, }) => {
5
- return (_jsx("dl", { className: styles.list, children: items.map((item) => {
6
- return (_jsxs("div", { className: cx(styles.item, styles.itemSurface), children: [_jsx("dt", { className: cx(styles.label, styles.labelSize), children: item.label }), _jsx("dd", { className: styles.value, children: item.value })] }, item.id));
7
- }) }));
1
+ import { jsx as l, jsxs as s } from "react/jsx-runtime";
2
+ import { list as c, label as i, labelSize as d, value as m, item as t, itemSurface as o } from "./backofficeKeyValueList.css.js";
3
+ import { cx as a } from "@plumile/ui";
4
+ const p = ({
5
+ items: r
6
+ }) => /* @__PURE__ */ l("dl", { className: c, children: r.map((e) => /* @__PURE__ */ s("div", { className: a(t, o), children: [
7
+ /* @__PURE__ */ l("dt", { className: a(i, d), children: e.label }),
8
+ /* @__PURE__ */ l("dd", { className: m, children: e.value })
9
+ ] }, e.id)) });
10
+ export {
11
+ p as BackofficeKeyValueList,
12
+ p as default
8
13
  };
9
- export default BackofficeKeyValueList;
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFja29mZmljZUtleVZhbHVlTGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9iYWNrb2ZmaWNlL21vbGVjdWxlcy9iYWNrb2ZmaWNlX2tleV92YWx1ZV9saXN0L0JhY2tvZmZpY2VLZXlWYWx1ZUxpc3QudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPLEtBQUssTUFBTSxNQUFNLGlDQUFpQyxDQUFDO0FBQzFELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFZakMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxFQUNyQyxLQUFLLEdBQ3VCLEVBQWUsRUFBRTtJQUM3QyxPQUFPLENBQ0wsYUFBSSxTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUksWUFDdkIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2xCLE9BQU8sQ0FDTCxlQUFtQixTQUFTLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxhQUMvRCxhQUFJLFNBQVMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQUcsSUFBSSxDQUFDLEtBQUssR0FBTSxFQUNwRSxhQUFJLFNBQVMsRUFBRSxNQUFNLENBQUMsS0FBSyxZQUFHLElBQUksQ0FBQyxLQUFLLEdBQU0sS0FGdEMsSUFBSSxDQUFDLEVBQUUsQ0FHWCxDQUNQLENBQUM7UUFDSixDQUFDLENBQUMsR0FDQyxDQUNOLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixlQUFlLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBKU1gsIHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgKiBhcyBzdHlsZXMgZnJvbSAnLi9iYWNrb2ZmaWNlS2V5VmFsdWVMaXN0LmNzcy5qcyc7XG5pbXBvcnQgeyBjeCB9IGZyb20gJ0BwbHVtaWxlL3VpJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUtleVZhbHVlSXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IFJlYWN0Tm9kZTtcbiAgdmFsdWU6IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VLZXlWYWx1ZUxpc3RQcm9wcyA9IHtcbiAgaXRlbXM6IHJlYWRvbmx5IEJhY2tvZmZpY2VLZXlWYWx1ZUl0ZW1bXTtcbn07XG5cbmV4cG9ydCBjb25zdCBCYWNrb2ZmaWNlS2V5VmFsdWVMaXN0ID0gKHtcbiAgaXRlbXMsXG59OiBCYWNrb2ZmaWNlS2V5VmFsdWVMaXN0UHJvcHMpOiBKU1guRWxlbWVudCA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRsIGNsYXNzTmFtZT17c3R5bGVzLmxpc3R9PlxuICAgICAge2l0ZW1zLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxkaXYga2V5PXtpdGVtLmlkfSBjbGFzc05hbWU9e2N4KHN0eWxlcy5pdGVtLCBzdHlsZXMuaXRlbVN1cmZhY2UpfT5cbiAgICAgICAgICAgIDxkdCBjbGFzc05hbWU9e2N4KHN0eWxlcy5sYWJlbCwgc3R5bGVzLmxhYmVsU2l6ZSl9PntpdGVtLmxhYmVsfTwvZHQ+XG4gICAgICAgICAgICA8ZGQgY2xhc3NOYW1lPXtzdHlsZXMudmFsdWV9PntpdGVtLnZhbHVlfTwvZGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICk7XG4gICAgICB9KX1cbiAgICA8L2RsPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQmFja29mZmljZUtleVZhbHVlTGlzdDtcbiJdfQ==
14
+ //# sourceMappingURL=BackofficeKeyValueList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackofficeKeyValueList.js","sources":["../../../../../src/backoffice/molecules/backoffice_key_value_list/BackofficeKeyValueList.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\n\nimport * as styles from './backofficeKeyValueList.css.js';\nimport { cx } from '@plumile/ui';\n\nexport type BackofficeKeyValueItem = {\n id: string;\n label: ReactNode;\n value: ReactNode;\n};\n\nexport type BackofficeKeyValueListProps = {\n items: readonly BackofficeKeyValueItem[];\n};\n\nexport const BackofficeKeyValueList = ({\n items,\n}: BackofficeKeyValueListProps): JSX.Element => {\n return (\n <dl className={styles.list}>\n {items.map((item) => {\n return (\n <div key={item.id} className={cx(styles.item, styles.itemSurface)}>\n <dt className={cx(styles.label, styles.labelSize)}>{item.label}</dt>\n <dd className={styles.value}>{item.value}</dd>\n </div>\n );\n })}\n </dl>\n );\n};\n\nexport default BackofficeKeyValueList;\n"],"names":["BackofficeKeyValueList","items","jsx","styles.list","item","jsxs","cx","styles.item","styles.itemSurface","styles.label","styles.labelSize","styles.value"],"mappings":";;;AAeO,MAAMA,IAAyB,CAAC;AAAA,EACrC,OAAAC;AACF,MAEI,gBAAAC,EAAC,QAAG,WAAWC,GACZ,UAAAF,EAAM,IAAI,CAACG,MAER,gBAAAC,EAAC,SAAkB,WAAWC,EAAGC,GAAaC,CAAkB,GAC9D,UAAA;AAAA,EAAA,gBAAAN,EAAC,MAAA,EAAG,WAAWI,EAAGG,GAAcC,CAAgB,GAAI,UAAAN,EAAK,OAAM;AAAA,oBAC9D,MAAA,EAAG,WAAWO,GAAe,YAAK,MAAA,CAAM;AAAA,EAAA,GAFjCP,EAAK,EAGf,CAEH,EAAA,CACH;"}
@@ -1,35 +1,11 @@
1
- import { sprinkles } from '@plumile/ui';
2
- export const list = sprinkles({
3
- display: 'grid',
4
- gap: 2,
5
- });
6
- export const item = sprinkles({
7
- display: 'grid',
8
- gridTemplateColumns: 'keyValueSplit',
9
- gap: 2,
10
- alignItems: 'center',
11
- paddingY: 2,
12
- paddingX: 3,
13
- borderRadius: 'lg',
14
- backgroundColor: 'surfaceMuted',
15
- });
16
- export const itemSurface = sprinkles({
17
- borderWidth: 'default',
18
- borderStyle: 'solid',
19
- borderColor: 'borderSubtle',
20
- });
21
- export const label = sprinkles({
22
- color: 'textMuted',
23
- textTransform: 'uppercase',
24
- letterSpacing: 'caps',
25
- fontWeight: 'semibold',
26
- });
27
- export const labelSize = sprinkles({
28
- fontSize: 'xs',
29
- });
30
- export const value = sprinkles({
31
- fontSize: 'base',
32
- color: 'text',
33
- margin: 0,
34
- });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja29mZmljZUtleVZhbHVlTGlzdC5jc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFja29mZmljZS9tb2xlY3VsZXMvYmFja29mZmljZV9rZXlfdmFsdWVfbGlzdC9iYWNrb2ZmaWNlS2V5VmFsdWVMaXN0LmNzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhDLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxTQUFTLENBQUM7SUFDNUIsT0FBTyxFQUFFLE1BQU07SUFDZixHQUFHLEVBQUUsQ0FBQztDQUNQLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxTQUFTLENBQUM7SUFDNUIsT0FBTyxFQUFFLE1BQU07SUFDZixtQkFBbUIsRUFBRSxlQUFlO0lBQ3BDLEdBQUcsRUFBRSxDQUFDO0lBQ04sVUFBVSxFQUFFLFFBQVE7SUFDcEIsUUFBUSxFQUFFLENBQUM7SUFDWCxRQUFRLEVBQUUsQ0FBQztJQUNYLFlBQVksRUFBRSxJQUFJO0lBQ2xCLGVBQWUsRUFBRSxjQUFjO0NBQ2hDLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUM7SUFDbkMsV0FBVyxFQUFFLFNBQVM7SUFDdEIsV0FBVyxFQUFFLE9BQU87SUFDcEIsV0FBVyxFQUFFLGNBQWM7Q0FDNUIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQztJQUM3QixLQUFLLEVBQUUsV0FBVztJQUNsQixhQUFhLEVBQUUsV0FBVztJQUMxQixhQUFhLEVBQUUsTUFBTTtJQUNyQixVQUFVLEVBQUUsVUFBVTtDQUN2QixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQ2pDLFFBQVEsRUFBRSxJQUFJO0NBQ2YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQztJQUM3QixRQUFRLEVBQUUsTUFBTTtJQUNoQixLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxDQUFDO0NBQ1YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc3ByaW5rbGVzIH0gZnJvbSAnQHBsdW1pbGUvdWknO1xuXG5leHBvcnQgY29uc3QgbGlzdCA9IHNwcmlua2xlcyh7XG4gIGRpc3BsYXk6ICdncmlkJyxcbiAgZ2FwOiAyLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpdGVtID0gc3ByaW5rbGVzKHtcbiAgZGlzcGxheTogJ2dyaWQnLFxuICBncmlkVGVtcGxhdGVDb2x1bW5zOiAna2V5VmFsdWVTcGxpdCcsXG4gIGdhcDogMixcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIHBhZGRpbmdZOiAyLFxuICBwYWRkaW5nWDogMyxcbiAgYm9yZGVyUmFkaXVzOiAnbGcnLFxuICBiYWNrZ3JvdW5kQ29sb3I6ICdzdXJmYWNlTXV0ZWQnLFxufSk7XG5cbmV4cG9ydCBjb25zdCBpdGVtU3VyZmFjZSA9IHNwcmlua2xlcyh7XG4gIGJvcmRlcldpZHRoOiAnZGVmYXVsdCcsXG4gIGJvcmRlclN0eWxlOiAnc29saWQnLFxuICBib3JkZXJDb2xvcjogJ2JvcmRlclN1YnRsZScsXG59KTtcblxuZXhwb3J0IGNvbnN0IGxhYmVsID0gc3ByaW5rbGVzKHtcbiAgY29sb3I6ICd0ZXh0TXV0ZWQnLFxuICB0ZXh0VHJhbnNmb3JtOiAndXBwZXJjYXNlJyxcbiAgbGV0dGVyU3BhY2luZzogJ2NhcHMnLFxuICBmb250V2VpZ2h0OiAnc2VtaWJvbGQnLFxufSk7XG5cbmV4cG9ydCBjb25zdCBsYWJlbFNpemUgPSBzcHJpbmtsZXMoe1xuICBmb250U2l6ZTogJ3hzJyxcbn0pO1xuXG5leHBvcnQgY29uc3QgdmFsdWUgPSBzcHJpbmtsZXMoe1xuICBmb250U2l6ZTogJ2Jhc2UnLFxuICBjb2xvcjogJ3RleHQnLFxuICBtYXJnaW46IDAsXG59KTtcbiJdfQ==
1
+ /* empty css */
2
+ var a = "pujmv10", m = "pujmv11", r = "pujmv12", e = "pujmv13", p = "pujmv14", u = "pujmv15";
3
+ export {
4
+ m as item,
5
+ r as itemSurface,
6
+ e as label,
7
+ p as labelSize,
8
+ a as list,
9
+ u as value
10
+ };
11
+ //# sourceMappingURL=backofficeKeyValueList.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backofficeKeyValueList.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1 @@
1
+ .pujmv10{display:grid;gap:var(--kronex-spacing-2)}.pujmv11{display:grid;grid-template-columns:var(--kronex-gridTemplateColumns-keyValueSplit);gap:var(--kronex-spacing-2);align-items:center;padding-top:var(--kronex-spacing-2);padding-bottom:var(--kronex-spacing-2);padding-left:var(--kronex-spacing-3);padding-right:var(--kronex-spacing-3);border-radius:var(--kronex-borderRadius-lg);background-color:var(--kronex-colors-surfaceMuted)}.pujmv12{border-width:var(--kronex-borderWidth-default);border-style:solid;border-color:var(--kronex-colors-borderSubtle)}.pujmv13{color:var(--kronex-colors-textMuted);text-transform:uppercase;letter-spacing:var(--kronex-letterSpacing-caps);font-weight:var(--kronex-fontWeight-semibold)}.pujmv14{font-size:var(--kronex-fontSize-xs);line-height:var(--kronex-lineHeight-xs)}.pujmv15{font-size:var(--kronex-fontSize-base);line-height:var(--kronex-lineHeight-base);color:var(--kronex-colors-text);margin:0}
@@ -1,9 +1,24 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { cx } from '@plumile/ui';
3
- import * as styles from './backofficePageHeader.css.js';
4
- export const BackofficePageHeader = ({ title, subtitle, actions, meta, className, }) => {
5
- return (_jsxs("div", { className: cx(styles.container, className), children: [_jsxs("div", { className: styles.left, children: [_jsxs("div", { className: styles.titleRow, children: [_jsx("h1", { className: styles.title, children: title }), meta != null && _jsx("div", { className: styles.metaRow, children: meta })] }), subtitle != null &&
6
- (typeof subtitle !== 'string' || subtitle.trim() !== '') && (_jsx("p", { className: styles.subtitle, children: subtitle }))] }), actions != null && _jsx("div", { className: styles.actions, children: actions })] }));
1
+ import { jsxs as i, jsx as l } from "react/jsx-runtime";
2
+ import { cx as t } from "@plumile/ui";
3
+ import { left as n, titleRow as d, title as m, metaRow as o, subtitle as f, actions as h, container as N } from "./backofficePageHeader.css.js";
4
+ const x = ({
5
+ title: r,
6
+ subtitle: e,
7
+ actions: a,
8
+ meta: c,
9
+ className: s
10
+ }) => /* @__PURE__ */ i("div", { className: t(N, s), children: [
11
+ /* @__PURE__ */ i("div", { className: n, children: [
12
+ /* @__PURE__ */ i("div", { className: d, children: [
13
+ /* @__PURE__ */ l("h1", { className: m, children: r }),
14
+ c != null && /* @__PURE__ */ l("div", { className: o, children: c })
15
+ ] }),
16
+ e != null && (typeof e != "string" || e.trim() !== "") && /* @__PURE__ */ l("p", { className: f, children: e })
17
+ ] }),
18
+ a != null && /* @__PURE__ */ l("div", { className: h, children: a })
19
+ ] });
20
+ export {
21
+ x as BackofficePageHeader,
22
+ x as default
7
23
  };
8
- export default BackofficePageHeader;
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFja29mZmljZVBhZ2VIZWFkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFja29mZmljZS9tb2xlY3VsZXMvYmFja29mZmljZV9wYWdlX2hlYWRlci9CYWNrb2ZmaWNlUGFnZUhlYWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFakMsT0FBTyxLQUFLLE1BQU0sTUFBTSwrQkFBK0IsQ0FBQztBQVV4RCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLEVBQ25DLEtBQUssRUFDTCxRQUFRLEVBQ1IsT0FBTyxFQUNQLElBQUksRUFDSixTQUFTLEdBQ2lCLEVBQWUsRUFBRTtJQUMzQyxPQUFPLENBQ0wsZUFBSyxTQUFTLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLGFBQzdDLGVBQUssU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLGFBQ3pCLGVBQUssU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLGFBQzdCLGFBQUksU0FBUyxFQUFFLE1BQU0sQ0FBQyxLQUFLLFlBQUcsS0FBSyxHQUFNLEVBQ3hDLElBQUksSUFBSSxJQUFJLElBQUksY0FBSyxTQUFTLEVBQUUsTUFBTSxDQUFDLE9BQU8sWUFBRyxJQUFJLEdBQU8sSUFDekQsRUFDTCxRQUFRLElBQUksSUFBSTt3QkFDZixDQUFDLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLElBQUksQ0FDMUQsWUFBRyxTQUFTLEVBQUUsTUFBTSxDQUFDLFFBQVEsWUFBRyxRQUFRLEdBQUssQ0FDOUMsSUFDQyxFQUNMLE9BQU8sSUFBSSxJQUFJLElBQUksY0FBSyxTQUFTLEVBQUUsTUFBTSxDQUFDLE9BQU8sWUFBRyxPQUFPLEdBQU8sSUFDL0QsQ0FDUCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsZUFBZSxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgSlNYLCB0eXBlIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0JztcblxuaW1wb3J0IHsgY3ggfSBmcm9tICdAcGx1bWlsZS91aSc7XG5cbmltcG9ydCAqIGFzIHN0eWxlcyBmcm9tICcuL2JhY2tvZmZpY2VQYWdlSGVhZGVyLmNzcy5qcyc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQYWdlSGVhZGVyUHJvcHMgPSB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHN1YnRpdGxlPzogUmVhY3ROb2RlO1xuICBhY3Rpb25zPzogUmVhY3ROb2RlO1xuICBtZXRhPzogUmVhY3ROb2RlO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgY29uc3QgQmFja29mZmljZVBhZ2VIZWFkZXIgPSAoe1xuICB0aXRsZSxcbiAgc3VidGl0bGUsXG4gIGFjdGlvbnMsXG4gIG1ldGEsXG4gIGNsYXNzTmFtZSxcbn06IEJhY2tvZmZpY2VQYWdlSGVhZGVyUHJvcHMpOiBKU1guRWxlbWVudCA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2N4KHN0eWxlcy5jb250YWluZXIsIGNsYXNzTmFtZSl9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5sZWZ0fT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy50aXRsZVJvd30+XG4gICAgICAgICAgPGgxIGNsYXNzTmFtZT17c3R5bGVzLnRpdGxlfT57dGl0bGV9PC9oMT5cbiAgICAgICAgICB7bWV0YSAhPSBudWxsICYmIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMubWV0YVJvd30+e21ldGF9PC9kaXY+fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAge3N1YnRpdGxlICE9IG51bGwgJiZcbiAgICAgICAgICAodHlwZW9mIHN1YnRpdGxlICE9PSAnc3RyaW5nJyB8fCBzdWJ0aXRsZS50cmltKCkgIT09ICcnKSAmJiAoXG4gICAgICAgICAgICA8cCBjbGFzc05hbWU9e3N0eWxlcy5zdWJ0aXRsZX0+e3N1YnRpdGxlfTwvcD5cbiAgICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICB7YWN0aW9ucyAhPSBudWxsICYmIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuYWN0aW9uc30+e2FjdGlvbnN9PC9kaXY+fVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQmFja29mZmljZVBhZ2VIZWFkZXI7XG4iXX0=
24
+ //# sourceMappingURL=BackofficePageHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackofficePageHeader.js","sources":["../../../../../src/backoffice/molecules/backoffice_page_header/BackofficePageHeader.tsx"],"sourcesContent":["import { type JSX, type ReactNode } from 'react';\n\nimport { cx } from '@plumile/ui';\n\nimport * as styles from './backofficePageHeader.css.js';\n\nexport type BackofficePageHeaderProps = {\n title: string;\n subtitle?: ReactNode;\n actions?: ReactNode;\n meta?: ReactNode;\n className?: string;\n};\n\nexport const BackofficePageHeader = ({\n title,\n subtitle,\n actions,\n meta,\n className,\n}: BackofficePageHeaderProps): JSX.Element => {\n return (\n <div className={cx(styles.container, className)}>\n <div className={styles.left}>\n <div className={styles.titleRow}>\n <h1 className={styles.title}>{title}</h1>\n {meta != null && <div className={styles.metaRow}>{meta}</div>}\n </div>\n {subtitle != null &&\n (typeof subtitle !== 'string' || subtitle.trim() !== '') && (\n <p className={styles.subtitle}>{subtitle}</p>\n )}\n </div>\n {actions != null && <div className={styles.actions}>{actions}</div>}\n </div>\n );\n};\n\nexport default BackofficePageHeader;\n"],"names":["BackofficePageHeader","title","subtitle","actions","meta","className","cx","styles.container","jsxs","styles.left","styles.titleRow","jsx","styles.title","styles.metaRow","styles.subtitle","styles.actions"],"mappings":";;;AAcO,MAAMA,IAAuB,CAAC;AAAA,EAAA,OACnCC;AAAAA,EAAA,UACAC;AAAAA,EAAA,SACAC;AAAAA,EACA,MAAAC;AAAA,EACA,WAAAC;AACF,wBAEK,OAAA,EAAI,WAAWC,EAAGC,GAAkBF,CAAS,GAC5C,UAAA;AAAA,EAAA,gBAAAG,EAAC,OAAA,EAAI,WAAWC,GACd,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EAAI,WAAWE,GACd,UAAA;AAAA,MAAA,gBAAAC,EAAC,MAAA,EAAG,WAAWC,GAAe,UAAAX,GAAM;AAAA,MACnCG,KAAQ,QAAQ,gBAAAO,EAAC,SAAI,WAAWE,GAAiB,UAAAT,EAAA,CAAK;AAAA,IAAA,GACzD;AAAA,IACCF,KAAY,SACV,OAAOA,KAAa,YAAYA,EAAS,KAAA,MAAW,OACnD,gBAAAS,EAAC,KAAA,EAAE,WAAWG,GAAkB,UAAAZ,EAAA,CAAS;AAAA,EAAA,GAE/C;AAAA,EACCC,KAAW,QAAQ,gBAAAQ,EAAC,SAAI,WAAWI,GAAiB,UAAAZ,EAAA,CAAQ;AAAA,GAC/D;"}
@@ -1,45 +1,12 @@
1
- import { sprinkles } from '@plumile/ui';
2
- export const container = sprinkles({
3
- display: 'flex',
4
- alignItems: 'flex-start',
5
- justifyContent: 'space-between',
6
- gap: 4,
7
- flexWrap: 'wrap',
8
- });
9
- export const left = sprinkles({
10
- display: 'flex',
11
- flexDirection: 'column',
12
- gap: 2,
13
- minWidth: 0,
14
- flex: 1,
15
- });
16
- export const titleRow = sprinkles({
17
- display: 'flex',
18
- alignItems: 'center',
19
- gap: 2,
20
- flexWrap: 'wrap',
21
- });
22
- export const title = sprinkles({
23
- fontSize: '2xl',
24
- fontWeight: 'semibold',
25
- color: 'text',
26
- margin: 0,
27
- });
28
- export const subtitle = sprinkles({
29
- margin: 0,
30
- fontSize: 'base',
31
- color: 'textSecondary',
32
- });
33
- export const metaRow = sprinkles({
34
- display: 'flex',
35
- alignItems: 'center',
36
- gap: 2,
37
- flexWrap: 'wrap',
38
- });
39
- export const actions = sprinkles({
40
- display: 'flex',
41
- alignItems: 'center',
42
- gap: 2,
43
- flexWrap: 'wrap',
44
- });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja29mZmljZVBhZ2VIZWFkZXIuY3NzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2JhY2tvZmZpY2UvbW9sZWN1bGVzL2JhY2tvZmZpY2VfcGFnZV9oZWFkZXIvYmFja29mZmljZVBhZ2VIZWFkZXIuY3NzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUNqQyxPQUFPLEVBQUUsTUFBTTtJQUNmLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLGNBQWMsRUFBRSxlQUFlO0lBQy9CLEdBQUcsRUFBRSxDQUFDO0lBQ04sUUFBUSxFQUFFLE1BQU07Q0FDakIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQztJQUM1QixPQUFPLEVBQUUsTUFBTTtJQUNmLGFBQWEsRUFBRSxRQUFRO0lBQ3ZCLEdBQUcsRUFBRSxDQUFDO0lBQ04sUUFBUSxFQUFFLENBQUM7SUFDWCxJQUFJLEVBQUUsQ0FBQztDQUNSLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUM7SUFDaEMsT0FBTyxFQUFFLE1BQU07SUFDZixVQUFVLEVBQUUsUUFBUTtJQUNwQixHQUFHLEVBQUUsQ0FBQztJQUNOLFFBQVEsRUFBRSxNQUFNO0NBQ2pCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUM7SUFDN0IsUUFBUSxFQUFFLEtBQUs7SUFDZixVQUFVLEVBQUUsVUFBVTtJQUN0QixLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxDQUFDO0NBQ1YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQztJQUNoQyxNQUFNLEVBQUUsQ0FBQztJQUNULFFBQVEsRUFBRSxNQUFNO0lBQ2hCLEtBQUssRUFBRSxlQUFlO0NBQ3ZCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDL0IsT0FBTyxFQUFFLE1BQU07SUFDZixVQUFVLEVBQUUsUUFBUTtJQUNwQixHQUFHLEVBQUUsQ0FBQztJQUNOLFFBQVEsRUFBRSxNQUFNO0NBQ2pCLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDL0IsT0FBTyxFQUFFLE1BQU07SUFDZixVQUFVLEVBQUUsUUFBUTtJQUNwQixHQUFHLEVBQUUsQ0FBQztJQUNOLFFBQVEsRUFBRSxNQUFNO0NBQ2pCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNwcmlua2xlcyB9IGZyb20gJ0BwbHVtaWxlL3VpJztcblxuZXhwb3J0IGNvbnN0IGNvbnRhaW5lciA9IHNwcmlua2xlcyh7XG4gIGRpc3BsYXk6ICdmbGV4JyxcbiAgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnLFxuICBqdXN0aWZ5Q29udGVudDogJ3NwYWNlLWJldHdlZW4nLFxuICBnYXA6IDQsXG4gIGZsZXhXcmFwOiAnd3JhcCcsXG59KTtcblxuZXhwb3J0IGNvbnN0IGxlZnQgPSBzcHJpbmtsZXMoe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICBnYXA6IDIsXG4gIG1pbldpZHRoOiAwLFxuICBmbGV4OiAxLFxufSk7XG5cbmV4cG9ydCBjb25zdCB0aXRsZVJvdyA9IHNwcmlua2xlcyh7XG4gIGRpc3BsYXk6ICdmbGV4JyxcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGdhcDogMixcbiAgZmxleFdyYXA6ICd3cmFwJyxcbn0pO1xuXG5leHBvcnQgY29uc3QgdGl0bGUgPSBzcHJpbmtsZXMoe1xuICBmb250U2l6ZTogJzJ4bCcsXG4gIGZvbnRXZWlnaHQ6ICdzZW1pYm9sZCcsXG4gIGNvbG9yOiAndGV4dCcsXG4gIG1hcmdpbjogMCxcbn0pO1xuXG5leHBvcnQgY29uc3Qgc3VidGl0bGUgPSBzcHJpbmtsZXMoe1xuICBtYXJnaW46IDAsXG4gIGZvbnRTaXplOiAnYmFzZScsXG4gIGNvbG9yOiAndGV4dFNlY29uZGFyeScsXG59KTtcblxuZXhwb3J0IGNvbnN0IG1ldGFSb3cgPSBzcHJpbmtsZXMoe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICBnYXA6IDIsXG4gIGZsZXhXcmFwOiAnd3JhcCcsXG59KTtcblxuZXhwb3J0IGNvbnN0IGFjdGlvbnMgPSBzcHJpbmtsZXMoe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICBnYXA6IDIsXG4gIGZsZXhXcmFwOiAnd3JhcCcsXG59KTtcbiJdfQ==
1
+ /* empty css */
2
+ var t = "gxd70g0", a = "gxd70g1", r = "gxd70g2", x = "gxd70g3", d = "gxd70g4", e = "gxd70g5", v = "gxd70g6";
3
+ export {
4
+ v as actions,
5
+ t as container,
6
+ a as left,
7
+ e as metaRow,
8
+ d as subtitle,
9
+ x as title,
10
+ r as titleRow
11
+ };
12
+ //# sourceMappingURL=backofficePageHeader.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backofficePageHeader.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1 @@
1
+ .gxd70g0{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--kronex-spacing-4);flex-wrap:wrap}.gxd70g1{display:flex;flex-direction:column;gap:var(--kronex-spacing-2);min-width:0;flex:1}.gxd70g2{display:flex;align-items:center;gap:var(--kronex-spacing-2);flex-wrap:wrap}.gxd70g3{font-size:var(--kronex-fontSize-2xl);line-height:var(--kronex-lineHeight-2xl);font-weight:var(--kronex-fontWeight-semibold);color:var(--kronex-colors-text);margin:0}.gxd70g4{margin:0;font-size:var(--kronex-fontSize-base);line-height:var(--kronex-lineHeight-base);color:var(--kronex-colors-textSecondary)}.gxd70g5,.gxd70g6{display:flex;align-items:center;gap:var(--kronex-spacing-2);flex-wrap:wrap}
@@ -1,51 +1,73 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, useRef, useState, } from 'react';
3
- import { Link } from '@plumile/router';
4
- import { Button, ChevronDownIcon, cx } from '@plumile/ui';
5
- import * as styles from './backofficeRelationsMenu.css.js';
6
- export const BackofficeRelationsMenu = ({ label = 'Relations', items, }) => {
7
- const [isOpen, setIsOpen] = useState(false);
8
- const containerRef = useRef(null);
9
- useEffect(() => {
10
- if (!isOpen) {
11
- return undefined;
12
- }
13
- const handleClick = (event) => {
14
- if (!(event.target instanceof Node)) {
15
- return;
1
+ import { jsx as t, jsxs as a } from "react/jsx-runtime";
2
+ import { useState as f, useRef as m, useEffect as p } from "react";
3
+ import { Link as h } from "@plumile/router";
4
+ import { Button as u, ChevronDownIcon as v, cx as g } from "@plumile/ui";
5
+ import { container as N, triggerIcon as k, triggerIconOpen as b, menu as x, menuItem as y, itemLabel as C, count as I } from "./backofficeRelationsMenu.css.js";
6
+ const O = ({
7
+ label: s = "Relations",
8
+ items: c
9
+ }) => {
10
+ const [r, o] = f(!1), i = m(null);
11
+ return p(() => {
12
+ if (!r)
13
+ return;
14
+ const e = (n) => {
15
+ n.target instanceof Node && (i.current?.contains(n.target) || o(!1));
16
+ };
17
+ return document.addEventListener("pointerdown", e), () => {
18
+ document.removeEventListener("pointerdown", e);
19
+ };
20
+ }, [r]), c.length === 0 ? /* @__PURE__ */ t(u, { type: "button", variant: "secondary", size: "small", disabled: !0, children: s }) : /* @__PURE__ */ a("div", { className: N, ref: i, children: [
21
+ /* @__PURE__ */ a(
22
+ u,
23
+ {
24
+ type: "button",
25
+ variant: "secondary",
26
+ size: "small",
27
+ onClick: () => {
28
+ o((e) => !e);
29
+ },
30
+ "aria-expanded": r,
31
+ "aria-haspopup": "menu",
32
+ children: [
33
+ s,
34
+ /* @__PURE__ */ t(
35
+ v,
36
+ {
37
+ size: 14,
38
+ className: g(k, {
39
+ [b]: r
40
+ })
16
41
  }
17
- if (containerRef.current?.contains(event.target)) {
18
- return;
19
- }
20
- setIsOpen(false);
21
- };
22
- document.addEventListener('pointerdown', handleClick);
23
- return () => {
24
- document.removeEventListener('pointerdown', handleClick);
25
- };
26
- }, [isOpen]);
27
- if (items.length === 0) {
28
- return (_jsx(Button, { type: "button", variant: "secondary", size: "small", disabled: true, children: label }));
29
- }
30
- return (_jsxs("div", { className: styles.container, ref: containerRef, children: [_jsxs(Button, { type: "button", variant: "secondary", size: "small", onClick: () => {
31
- setIsOpen((prev) => {
32
- return !prev;
33
- });
34
- }, "aria-expanded": isOpen, "aria-haspopup": "menu", children: [label, _jsx(ChevronDownIcon, { size: 14, className: cx(styles.triggerIcon, {
35
- [styles.triggerIconOpen]: isOpen,
36
- }) })] }), isOpen && (_jsx("div", { className: styles.menu, role: "menu", children: items.map((item) => {
37
- let countValue = null;
38
- if (typeof item.count === 'number') {
39
- countValue = item.count;
40
- }
41
- return (_jsxs(Link, { to: item.href, className: styles.menuItem, onClick: (event) => {
42
- setIsOpen(false);
43
- const result = item.onClick?.(event);
44
- if (result != null) {
45
- result.catch(() => { });
46
- }
47
- }, children: [_jsx("span", { className: styles.itemLabel, children: item.label }), countValue != null && (_jsx("span", { className: styles.count, children: countValue }))] }, item.id));
48
- }) }))] }));
42
+ )
43
+ ]
44
+ }
45
+ ),
46
+ r && /* @__PURE__ */ t("div", { className: x, role: "menu", children: c.map((e) => {
47
+ let n = null;
48
+ return typeof e.count == "number" && (n = e.count), /* @__PURE__ */ a(
49
+ h,
50
+ {
51
+ to: e.href,
52
+ className: y,
53
+ onClick: (d) => {
54
+ o(!1);
55
+ const l = e.onClick?.(d);
56
+ l?.catch(() => {
57
+ });
58
+ },
59
+ children: [
60
+ /* @__PURE__ */ t("span", { className: C, children: e.label }),
61
+ n != null && /* @__PURE__ */ t("span", { className: I, children: n })
62
+ ]
63
+ },
64
+ e.id
65
+ );
66
+ }) })
67
+ ] });
68
+ };
69
+ export {
70
+ O as BackofficeRelationsMenu,
71
+ O as default
49
72
  };
50
- export default BackofficeRelationsMenu;
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFja29mZmljZVJlbGF0aW9uc01lbnUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYmFja29mZmljZS9tb2xlY3VsZXMvYmFja29mZmljZV9yZWxhdGlvbnNfbWVudS9CYWNrb2ZmaWNlUmVsYXRpb25zTWVudS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFHTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFFBQVEsR0FDVCxNQUFNLE9BQU8sQ0FBQztBQUNmLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2QyxPQUFPLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFMUQsT0FBTyxLQUFLLE1BQU0sTUFBTSxrQ0FBa0MsQ0FBQztBQWUzRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLEVBQ3RDLEtBQUssR0FBRyxXQUFXLEVBQ25CLEtBQUssR0FDd0IsRUFBZSxFQUFFO0lBQzlDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBd0IsSUFBSSxDQUFDLENBQUM7SUFFekQsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQW1CLEVBQUUsRUFBRTtZQUMxQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxZQUFZLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ3BDLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQkFDakQsT0FBTztZQUNULENBQUM7WUFDRCxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsQ0FBQyxDQUFDO1FBRUYsUUFBUSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUN0RCxPQUFPLEdBQUcsRUFBRTtZQUNWLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUViLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QixPQUFPLENBQ0wsS0FBQyxNQUFNLElBQUMsSUFBSSxFQUFDLFFBQVEsRUFBQyxPQUFPLEVBQUMsV0FBVyxFQUFDLElBQUksRUFBQyxPQUFPLEVBQUMsUUFBUSxrQkFDNUQsS0FBSyxHQUNDLENBQ1YsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPLENBQ0wsZUFBSyxTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsWUFBWSxhQUNqRCxNQUFDLE1BQU0sSUFDTCxJQUFJLEVBQUMsUUFBUSxFQUNiLE9BQU8sRUFBQyxXQUFXLEVBQ25CLElBQUksRUFBQyxPQUFPLEVBQ1osT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDakIsT0FBTyxDQUFDLElBQUksQ0FBQztvQkFDZixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLG1CQUNjLE1BQU0sbUJBQ1AsTUFBTSxhQUVuQixLQUFLLEVBQ04sS0FBQyxlQUFlLElBQ2QsSUFBSSxFQUFFLEVBQUUsRUFDUixTQUFTLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUU7NEJBQ2hDLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxFQUFFLE1BQU07eUJBQ2pDLENBQUMsR0FDRixJQUNLLEVBRVIsTUFBTSxJQUFJLENBQ1QsY0FBSyxTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsTUFBTSxZQUNyQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7b0JBQ2xCLElBQUksVUFBVSxHQUFrQixJQUFJLENBQUM7b0JBQ3JDLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO3dCQUNuQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztvQkFDMUIsQ0FBQztvQkFDRCxPQUFPLENBQ0wsTUFBQyxJQUFJLElBRUgsRUFBRSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQ2IsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQzFCLE9BQU8sRUFBRSxDQUFDLEtBQXlDLEVBQUUsRUFBRTs0QkFDckQsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDOzRCQUNqQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7NEJBQ3JDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO2dDQUNuQixNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDOzRCQUN6QixDQUFDO3dCQUNILENBQUMsYUFFRCxlQUFNLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxZQUFHLElBQUksQ0FBQyxLQUFLLEdBQVEsRUFDckQsVUFBVSxJQUFJLElBQUksSUFBSSxDQUNyQixlQUFNLFNBQVMsRUFBRSxNQUFNLENBQUMsS0FBSyxZQUFHLFVBQVUsR0FBUSxDQUNuRCxLQWRJLElBQUksQ0FBQyxFQUFFLENBZVAsQ0FDUixDQUFDO2dCQUNKLENBQUMsQ0FBQyxHQUNFLENBQ1AsSUFDRyxDQUNQLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixlQUFlLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBKU1gsXG4gIHR5cGUgTW91c2VFdmVudCBhcyBSZWFjdE1vdXNlRXZlbnQsXG4gIHVzZUVmZmVjdCxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTGluayB9IGZyb20gJ0BwbHVtaWxlL3JvdXRlcic7XG5cbmltcG9ydCB7IEJ1dHRvbiwgQ2hldnJvbkRvd25JY29uLCBjeCB9IGZyb20gJ0BwbHVtaWxlL3VpJztcblxuaW1wb3J0ICogYXMgc3R5bGVzIGZyb20gJy4vYmFja29mZmljZVJlbGF0aW9uc01lbnUuY3NzLmpzJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlbGF0aW9uc01lbnVJdGVtID0ge1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBjb3VudD86IG51bWJlciB8IG51bGw7XG4gIGhyZWY6IHN0cmluZztcbiAgb25DbGljaz86IChldmVudDogUmVhY3RNb3VzZUV2ZW50PEhUTUxBbmNob3JFbGVtZW50PikgPT4gdm9pZCB8IFByb21pc2U8dm9pZD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVsYXRpb25zTWVudVByb3BzID0ge1xuICBsYWJlbD86IHN0cmluZztcbiAgaXRlbXM6IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWxhdGlvbnNNZW51SXRlbVtdO1xufTtcblxuZXhwb3J0IGNvbnN0IEJhY2tvZmZpY2VSZWxhdGlvbnNNZW51ID0gKHtcbiAgbGFiZWwgPSAnUmVsYXRpb25zJyxcbiAgaXRlbXMsXG59OiBCYWNrb2ZmaWNlUmVsYXRpb25zTWVudVByb3BzKTogSlNYLkVsZW1lbnQgPT4ge1xuICBjb25zdCBbaXNPcGVuLCBzZXRJc09wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBjb250YWluZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQgfCBudWxsPihudWxsKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNPcGVuKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGhhbmRsZUNsaWNrID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpID0+IHtcbiAgICAgIGlmICghKGV2ZW50LnRhcmdldCBpbnN0YW5jZW9mIE5vZGUpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGlmIChjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBzZXRJc09wZW4oZmFsc2UpO1xuICAgIH07XG5cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsIGhhbmRsZUNsaWNrKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLCBoYW5kbGVDbGljayk7XG4gICAgfTtcbiAgfSwgW2lzT3Blbl0pO1xuXG4gIGlmIChpdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gKFxuICAgICAgPEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgdmFyaWFudD1cInNlY29uZGFyeVwiIHNpemU9XCJzbWFsbFwiIGRpc2FibGVkPlxuICAgICAgICB7bGFiZWx9XG4gICAgICA8L0J1dHRvbj5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmNvbnRhaW5lcn0gcmVmPXtjb250YWluZXJSZWZ9PlxuICAgICAgPEJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBzZXRJc09wZW4oKHByZXYpID0+IHtcbiAgICAgICAgICAgIHJldHVybiAhcHJldjtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfX1cbiAgICAgICAgYXJpYS1leHBhbmRlZD17aXNPcGVufVxuICAgICAgICBhcmlhLWhhc3BvcHVwPVwibWVudVwiXG4gICAgICA+XG4gICAgICAgIHtsYWJlbH1cbiAgICAgICAgPENoZXZyb25Eb3duSWNvblxuICAgICAgICAgIHNpemU9ezE0fVxuICAgICAgICAgIGNsYXNzTmFtZT17Y3goc3R5bGVzLnRyaWdnZXJJY29uLCB7XG4gICAgICAgICAgICBbc3R5bGVzLnRyaWdnZXJJY29uT3Blbl06IGlzT3BlbixcbiAgICAgICAgICB9KX1cbiAgICAgICAgLz5cbiAgICAgIDwvQnV0dG9uPlxuXG4gICAgICB7aXNPcGVuICYmIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5tZW51fSByb2xlPVwibWVudVwiPlxuICAgICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGxldCBjb3VudFZhbHVlOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgaXRlbS5jb3VudCA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgICAgY291bnRWYWx1ZSA9IGl0ZW0uY291bnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgICAgICAgICAgICB0bz17aXRlbS5ocmVmfVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17c3R5bGVzLm1lbnVJdGVtfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eyhldmVudDogUmVhY3RNb3VzZUV2ZW50PEhUTUxBbmNob3JFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgICAgc2V0SXNPcGVuKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGl0ZW0ub25DbGljaz8uKGV2ZW50KTtcbiAgICAgICAgICAgICAgICAgIGlmIChyZXN1bHQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQuY2F0Y2goKCkgPT4ge30pO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e3N0eWxlcy5pdGVtTGFiZWx9PntpdGVtLmxhYmVsfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICB7Y291bnRWYWx1ZSAhPSBudWxsICYmIChcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17c3R5bGVzLmNvdW50fT57Y291bnRWYWx1ZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9MaW5rPlxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgQmFja29mZmljZVJlbGF0aW9uc01lbnU7XG4iXX0=
73
+ //# sourceMappingURL=BackofficeRelationsMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BackofficeRelationsMenu.js","sources":["../../../../../src/backoffice/molecules/backoffice_relations_menu/BackofficeRelationsMenu.tsx"],"sourcesContent":["import {\n type JSX,\n type MouseEvent as ReactMouseEvent,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { Link } from '@plumile/router';\n\nimport { Button, ChevronDownIcon, cx } from '@plumile/ui';\n\nimport * as styles from './backofficeRelationsMenu.css.js';\n\nexport type BackofficeRelationsMenuItem = {\n id: string;\n label: string;\n count?: number | null;\n href: string;\n onClick?: (event: ReactMouseEvent<HTMLAnchorElement>) => void | Promise<void>;\n};\n\nexport type BackofficeRelationsMenuProps = {\n label?: string;\n items: readonly BackofficeRelationsMenuItem[];\n};\n\nexport const BackofficeRelationsMenu = ({\n label = 'Relations',\n items,\n}: BackofficeRelationsMenuProps): JSX.Element => {\n const [isOpen, setIsOpen] = useState(false);\n const containerRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n if (!isOpen) {\n return undefined;\n }\n\n const handleClick = (event: PointerEvent) => {\n if (!(event.target instanceof Node)) {\n return;\n }\n if (containerRef.current?.contains(event.target)) {\n return;\n }\n setIsOpen(false);\n };\n\n document.addEventListener('pointerdown', handleClick);\n return () => {\n document.removeEventListener('pointerdown', handleClick);\n };\n }, [isOpen]);\n\n if (items.length === 0) {\n return (\n <Button type=\"button\" variant=\"secondary\" size=\"small\" disabled>\n {label}\n </Button>\n );\n }\n\n return (\n <div className={styles.container} ref={containerRef}>\n <Button\n type=\"button\"\n variant=\"secondary\"\n size=\"small\"\n onClick={() => {\n setIsOpen((prev) => {\n return !prev;\n });\n }}\n aria-expanded={isOpen}\n aria-haspopup=\"menu\"\n >\n {label}\n <ChevronDownIcon\n size={14}\n className={cx(styles.triggerIcon, {\n [styles.triggerIconOpen]: isOpen,\n })}\n />\n </Button>\n\n {isOpen && (\n <div className={styles.menu} role=\"menu\">\n {items.map((item) => {\n let countValue: number | null = null;\n if (typeof item.count === 'number') {\n countValue = item.count;\n }\n return (\n <Link\n key={item.id}\n to={item.href}\n className={styles.menuItem}\n onClick={(event: ReactMouseEvent<HTMLAnchorElement>) => {\n setIsOpen(false);\n const result = item.onClick?.(event);\n if (result != null) {\n result.catch(() => {});\n }\n }}\n >\n <span className={styles.itemLabel}>{item.label}</span>\n {countValue != null && (\n <span className={styles.count}>{countValue}</span>\n )}\n </Link>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n\nexport default BackofficeRelationsMenu;\n"],"names":["BackofficeRelationsMenu","label","items","isOpen","setIsOpen","useState","containerRef","useRef","useEffect","handleClick","event","jsx","Button","styles.container","jsxs","prev","ChevronDownIcon","cx","styles.triggerIcon","styles.triggerIconOpen","styles.menu","item","countValue","Link","styles.menuItem","result","styles.itemLabel","styles.count"],"mappings":";;;;;AA0BO,MAAMA,IAA0B,CAAC;AAAA,EACtC,OAAAC,IAAQ;AAAA,EACR,OAAAC;AACF,MAAiD;AAC/C,QAAM,CAACC,GAAQC,CAAS,IAAIC,EAAS,EAAK,GACpCC,IAAeC,EAA8B,IAAI;AAuBvD,SArBAC,EAAU,MAAM;AACd,QAAI,CAACL;AACH;AAGF,UAAMM,IAAc,CAACC,MAAwB;AAC3C,MAAMA,EAAM,kBAAkB,SAG1BJ,EAAa,SAAS,SAASI,EAAM,MAAM,KAG/CN,EAAU,EAAK;AAAA,IACjB;AAEA,oBAAS,iBAAiB,eAAeK,CAAW,GAC7C,MAAM;AACX,eAAS,oBAAoB,eAAeA,CAAW;AAAA,IACzD;AAAA,EACF,GAAG,CAACN,CAAM,CAAC,GAEPD,EAAM,WAAW,IAEjB,gBAAAS,EAACC,GAAA,EAAO,MAAK,UAAS,SAAQ,aAAY,MAAK,SAAQ,UAAQ,IAC5D,UAAAX,EAAA,CACH,sBAKD,OAAA,EAAI,WAAWY,GAAkB,KAAKP,GACrC,UAAA;AAAA,IAAA,gBAAAQ;AAAA,MAACF;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,SAAS,MAAM;AACb,UAAAR,EAAU,CAACW,MACF,CAACA,CACT;AAAA,QACH;AAAA,QACA,iBAAeZ;AAAA,QACf,iBAAc;AAAA,QAEb,UAAA;AAAA,UAAAF;AAAA,UACD,gBAAAU;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,MAAM;AAAA,cACN,WAAWC,EAAGC,GAAoB;AAAA,gBAChC,CAACC,CAAsB,GAAGhB;AAAA,cAAA,CAC3B;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA;AAAA,IAGDA,KACC,gBAAAQ,EAAC,OAAA,EAAI,WAAWS,GAAa,MAAK,QAC/B,UAAAlB,EAAM,IAAI,CAACmB,MAAS;AACnB,UAAIC,IAA4B;AAChC,aAAI,OAAOD,EAAK,SAAU,aACxBC,IAAaD,EAAK,QAGlB,gBAAAP;AAAA,QAACS;AAAA,QAAA;AAAA,UAEC,IAAIF,EAAK;AAAA,UACT,WAAWG;AAAAA,UACX,SAAS,CAACd,MAA8C;AACtD,YAAAN,EAAU,EAAK;AACf,kBAAMqB,IAASJ,EAAK,UAAUX,CAAK;AACnC,YACEe,GAAO,MAAM,MAAM;AAAA,YAAC,CAAC;AAAA,UAEzB;AAAA,UAEA,UAAA;AAAA,YAAA,gBAAAd,EAAC,QAAA,EAAK,WAAWe,GAAmB,YAAK,OAAM;AAAA,YAC9CJ,KAAc,QACb,gBAAAX,EAAC,UAAK,WAAWgB,GAAe,UAAAL,EAAA,CAAW;AAAA,UAAA;AAAA,QAAA;AAAA,QAbxCD,EAAK;AAAA,MAAA;AAAA,IAiBhB,CAAC,EAAA,CACH;AAAA,EAAA,GAEJ;AAEJ;"}