@plumile/backoffice-react 0.1.117 → 0.1.122
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.
- package/lib/esm/auth/authRefreshNotice.css.js +1 -2
- package/lib/esm/auth/authRefreshNotice.css.js.map +1 -1
- package/lib/esm/auth/login/loginPage.css.js +2 -1
- package/lib/esm/auth/login/loginPage.css.js.map +1 -1
- package/lib/esm/components/backoffice/actions/BackofficeEntityActionFormDialog.js +14 -14
- package/lib/esm/components/backoffice/actions/backofficeEntityActionFormDialog.css.js +1 -1
- package/lib/esm/components/backoffice/actions/backofficeEntityActionFormDialog.css.js.map +1 -1
- package/lib/esm/components/backoffice/billing/BackofficeBillingUsageChart.js +1 -1
- package/lib/esm/components/backoffice/billing/backofficeBillingUsageChart.css.js +1 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.css.js +1 -1
- package/lib/esm/components/backoffice/detail/BackofficeDetailFlagTag.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/BackofficeEntitySummaryHeader.js +6 -6
- package/lib/esm/components/backoffice/detail/BackofficeLifecycleTimelineSection.js +1 -1
- package/lib/esm/components/backoffice/detail/BackofficePayloadInspectorSection.js +1 -1
- package/lib/esm/components/backoffice/detail/BackofficeRelationsSummaryGrid.js +1 -1
- package/lib/esm/components/backoffice/detail/BackofficeUsageCostBreakdown.js +13 -13
- package/lib/esm/components/backoffice/detail/BackofficeUsageCostBreakdown.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeAuditMetadataPanel.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailBadgeRow.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailErrorList.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailField.css.js +8 -8
- package/lib/esm/components/backoffice/detail/backofficeDetailField.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailLayout.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationLink.css.js +2 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationLink.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailRelationList.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailSection.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeDetailTaggedValue.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeEntitySummaryHeader.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeEntitySummaryHeader.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeKpiStrip.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeKpiStrip.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeLifecycleTimelineSection.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficePayloadInspectorSection.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficePayloadInspectorSection.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeReferenceValue.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeRelationsSummaryGrid.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeRelationsSummaryGrid.css.js.map +1 -1
- package/lib/esm/components/backoffice/detail/backofficeScopeStack.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeStatusMetaBadge.css.js +1 -1
- package/lib/esm/components/backoffice/detail/backofficeUsageCostBreakdown.css.js +1 -1
- package/lib/esm/components/backoffice/filters/EntityIdFilterField.js +1 -1
- package/lib/esm/components/backoffice/filters/backofficeFilterAction.css.js +1 -1
- package/lib/esm/components/backoffice/filters/backofficeFilterAction.css.js.map +1 -1
- package/lib/esm/components/backoffice/filters/deferredFilterSearchInput.css.js +1 -1
- package/lib/esm/components/backoffice/filters/deferredFilterSearchInput.css.js.map +1 -1
- package/lib/esm/components/backoffice/filters/entityIdFilterField.css.js +1 -1
- package/lib/esm/components/backoffice/filters/entityIdFilterField.css.js.map +1 -1
- package/lib/esm/components/backoffice/hub/BackofficeHubTemplate.js +5 -5
- package/lib/esm/components/backoffice/hub/backofficeHubTemplate.css.js +1 -1
- package/lib/esm/components/backoffice/hub/backofficeHubTemplate.css.js.map +1 -1
- package/lib/esm/components/backoffice/layout/backofficeSidebarActions.css.js +1 -1
- package/lib/esm/components/backoffice/layout/backofficeSidebarActions.css.js.map +1 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/BackofficeTopbarBreadcrumb.js +2 -2
- package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js +2 -1
- package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js.map +1 -1
- package/lib/esm/components/backoffice/layout/buildSidebarSections.js +29 -32
- package/lib/esm/components/backoffice/layout/buildSidebarSections.js.map +1 -1
- package/lib/esm/components/backoffice/links/BackofficeLinkContent.js +1 -1
- package/lib/esm/components/backoffice/links/backofficeLink.css.js +1 -1
- package/lib/esm/components/backoffice/links/backofficeLink.css.js.map +1 -1
- package/lib/esm/components/backoffice/list/RowFlagsCell.css.js +1 -1
- package/lib/esm/components/backoffice/list/RowFlagsCell.css.js.map +1 -1
- package/lib/esm/components/backoffice/lists/BackofficeListToolbar.js +6 -6
- package/lib/esm/components/backoffice/lists/backofficeListToolbar.css.js +4 -4
- package/lib/esm/components/backoffice/lists/backofficeListToolbar.css.js.map +1 -1
- package/lib/esm/components/backoffice/overview/backofficeOverviewLayout.css.js +1 -1
- package/lib/esm/components/backoffice/pickers/entityIdPickerDialog.css.js +1 -1
- package/lib/esm/components/backoffice/pickers/entityIdPickerDialog.css.js.map +1 -1
- package/lib/esm/components/backoffice/refs/backofficeEntityIdRef.css.js +1 -1
- package/lib/esm/components/backoffice/refs/backofficeEntityIdRef.css.js.map +1 -1
- package/lib/esm/components/backoffice/refs/backofficeRelatedCountLink.css.js +1 -1
- package/lib/esm/components/backoffice/refs/backofficeRelatedCountLink.css.js.map +1 -1
- package/lib/esm/components/backoffice/routing/backofficeContentBoundary.css.js +1 -1
- package/lib/esm/components/backoffice/routing/backofficeContentError.css.js +1 -1
- package/lib/esm/components/backoffice/routing/backofficeContentFallback.css.js +1 -1
- package/lib/esm/components/backoffice/routing/backofficeRouteFallback.css.js +1 -1
- package/lib/esm/components/backoffice/routing/backofficeRoutePendingBar.css.js +1 -1
- package/lib/esm/components/backoffice/routing/backofficeRoutePendingBar.css.js.map +1 -1
- package/lib/esm/components/backoffice/scaffolds/backofficeEntityListScaffold.css.js +1 -1
- package/lib/esm/components/backoffice/scaffolds/backofficeEntityListScaffold.css.js.map +1 -1
- package/lib/esm/components/backoffice/scaffolds/backofficeTabbedDetailShell.css.js +1 -1
- package/lib/esm/components/backoffice/shared/backofficeFilterableCell.css.js +5 -5
- package/lib/esm/components/backoffice/shared/backofficeFilterableCell.css.js.map +1 -1
- package/lib/esm/components/backoffice/shared/backofficeInlineFilterRow.css.js +1 -1
- package/lib/esm/components/backoffice/tools/BackofficeToolsDocPanel.js +1 -1
- package/lib/esm/components/backoffice/tools/backofficeToolsDocPanel.css.js +1 -1
- package/lib/esm/components/backoffice/tools/backofficeToolsForm.css.js +1 -1
- package/lib/esm/components/backoffice/tools/backofficeToolsJsonForm.css.js +1 -1
- package/lib/esm/hooks/useBackofficeSidebarPins.js +44 -42
- package/lib/esm/hooks/useBackofficeSidebarPins.js.map +1 -1
- package/lib/esm/pages/BackofficeEntityDetailPage.js +2 -2
- package/lib/esm/pages/backofficeDashboardPage.css.js +1 -1
- package/lib/esm/pages/backofficeEntityDetailPage.css.js +1 -1
- package/lib/esm/pages/backofficeEntityDetailPage.css.js.map +1 -1
- package/lib/esm/pages/backofficeEntityListPage.css.js +1 -1
- package/lib/esm/pages/backofficeEntityListPage.css.js.map +1 -1
- package/lib/esm/pages/dashboard/dashboardMetricGroup.css.js +1 -1
- package/lib/esm/pages/dashboard/dashboardMetricGroup.css.js.map +1 -1
- package/lib/esm/pages/dashboard/dashboardPanel.css.js +1 -1
- package/lib/esm/pages/dashboard/dashboardQuickActions.css.js +1 -1
- package/lib/esm/pages/dashboard/dashboardQuickActions.css.js.map +1 -1
- package/lib/esm/pages/dashboard/dashboardStatusList.css.js +1 -1
- package/lib/esm/pages/dashboard/dashboardStatusList.css.js.map +1 -1
- package/lib/esm/storybook/relay/RelayStory.css.js +1 -1
- package/lib/esm/style.css +1 -1
- package/lib/types/auth/authRefreshNotice.css.d.ts.map +1 -1
- package/lib/types/auth/login/loginPage.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/actions/backofficeEntityActionFormDialog.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/BackofficeDetailFlagTag.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/backofficeDetailField.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/backofficeDetailRelationLink.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/backofficeEntitySummaryHeader.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/backofficeKpiStrip.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/backofficePayloadInspectorSection.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/detail/backofficeRelationsSummaryGrid.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/filters/backofficeFilterAction.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/filters/deferredFilterSearchInput.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/filters/entityIdFilterField.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/hub/backofficeHubTemplate.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/layout/backofficeSidebarActions.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/layout/buildSidebarSections.d.ts.map +1 -1
- package/lib/types/components/backoffice/links/backofficeLink.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/list/RowFlagsCell.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/lists/backofficeListToolbar.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/pickers/entityIdPickerDialog.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/refs/backofficeEntityIdRef.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/refs/backofficeRelatedCountLink.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/scaffolds/backofficeEntityListScaffold.css.d.ts.map +1 -1
- package/lib/types/components/backoffice/shared/backofficeFilterableCell.css.d.ts.map +1 -1
- package/lib/types/hooks/useBackofficeSidebarPins.d.ts +1 -0
- package/lib/types/hooks/useBackofficeSidebarPins.d.ts.map +1 -1
- package/lib/types/pages/backofficeEntityDetailPage.css.d.ts.map +1 -1
- package/lib/types/pages/backofficeEntityListPage.css.d.ts.map +1 -1
- package/lib/types/pages/dashboard/dashboardMetricGroup.css.d.ts.map +1 -1
- package/lib/types/pages/dashboard/dashboardQuickActions.css.d.ts.map +1 -1
- package/lib/types/pages/dashboard/dashboardStatusList.css.d.ts.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficePayloadInspectorSection.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficePayloadInspectorSection.css.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"backofficePayloadInspectorSection.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficePayloadInspectorSection.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const details = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 3,\n});\n\nexport const summary = sprinkles({\n cursor: 'pointer',\n fontSize: 'sm',\n fontWeight: 'medium',\n color: 'primary',\n});\n\nexport const preview = sprinkles({\n fontSize: 'sm',\n color: 'textSecondary',\n overflowWrap: 'anywhere',\n});\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/detail/backofficeReferenceValue.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdsb txvbqbey txvbqbff6 txvbqbt9i", t = "txvbqbt9i txvbqbutu";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { e as root, t as value };
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/detail/backofficeRelationsSummaryGrid.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdrl txvbqbffj txvbqbheb", t = "txvbqbdr8 txvbqbf6i txvbqbfet txvbqbuy6 txvbqb2g9 txvbqb196b txvbqb1uy txvbqb2et txvbqb18k txvbqbt9i", n = "txvbqb96 txvbqb6a txvbqbkxs txvbqb19cb", r = "txvbqbam txvbqbfd0 txvbqb19c9", i = "txvbqb9j txvbqb19cb txvbqbutu";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { r as count, i as description, e as grid, t as item, n as label };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeRelationsSummaryGrid.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeRelationsSummaryGrid.css.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"backofficeRelationsSummaryGrid.css.js","names":[],"sources":["../../../../../src/components/backoffice/detail/backofficeRelationsSummaryGrid.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const grid = sprinkles({\n display: 'grid',\n gap: 3,\n gridTemplateColumns: 'autoFitMinmax180',\n});\n\nexport const item = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n padding: 3,\n borderRadius: 'md',\n backgroundColor: 'surface',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderLight',\n minWidth: 0,\n});\n\nexport const label = sprinkles({\n fontSize: 'xs',\n textTransform: 'uppercase',\n letterSpacing: 'capsTight',\n color: 'textSecondary',\n});\n\nexport const count = sprinkles({\n fontSize: 'xl',\n fontWeight: 'semibold',\n color: 'text',\n});\n\nexport const description = sprinkles({\n fontSize: 'sm',\n color: 'textSecondary',\n overflowWrap: 'anywhere',\n});\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/detail/backofficeScopeStack.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdr8 txvbqbf6i txvbqbffj", t = "txvbqbdr8 txvbqbf6i txvbqbfet txvbqbt9i", n = "txvbqb96 txvbqb6a txvbqbkxs txvbqb19cb", r = "txvbqb9j txvbqb19c9 txvbqbutu";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { t as item, n as label, e as list, r as value };
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/detail/backofficeUsageCostBreakdown.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdr8 txvbqbf6i txvbqbffj", t = "txvbqbdrl txvbqbff6", n = "_13200uy0 txvbqbdrl txvbqbffj txvbqbey", r = "txvbqb96 txvbqb6a txvbqbkxs txvbqb19cb", i = "txvbqb9j txvbqb19c9 txvbqbutu", a = "txvbqbfcn";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { i as cell, e as content, r as header, a as label, n as row, t as table };
|
|
6
6
|
|
|
@@ -87,7 +87,7 @@ var h = (h) => {
|
|
|
87
87
|
return /* @__PURE__ */ d("div", {
|
|
88
88
|
className: r,
|
|
89
89
|
children: z ?? /* @__PURE__ */ d("div", {
|
|
90
|
-
className: "
|
|
90
|
+
className: "txvbqbdxd txvbqbt9i txvbqbdr8 txvbqbey txvbqbusr",
|
|
91
91
|
children: P
|
|
92
92
|
})
|
|
93
93
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/filters/backofficeFilterAction.css.ts
|
|
3
|
-
var e = "hwnq700
|
|
3
|
+
var e = "hwnq700 txvbqbdsb txvbqbey txvbqbjtp txvbqb17ia txvbqbhnp txvbqbux3 txvbqb2g9 txvbqb1uy txvbqb2et txvbqb17u txvbqb196f txvbqb19d9 txvbqbv txvbqb3f txvbqb7h txvbqb75 txvbqb7t txvbqb1bs9 txvbqb1adl txvbqb1ayh qbwcue0 txvbqb1cb0 txvbqb1cws", t = "txvbqb17h7 txvbqbhmm";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { e as action, t as icon };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeFilterAction.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/backofficeFilterAction.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\
|
|
1
|
+
{"version":3,"file":"backofficeFilterAction.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/backofficeFilterAction.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles, stateSprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport { focusRing } from '@plumile/ui/theme/styleRecipes.css.js';\n\nexport const action = style([\n sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: 7,\n height: 7,\n padding: 0,\n borderRadius: 'md',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n backgroundColor: 'surfaceMuted',\n color: 'brandPrimaryRed',\n cursor: 'pointer',\n textDecoration: 'none',\n transitionProperty: 'colors',\n transitionDuration: 120,\n transitionTimingFunction: 'ease',\n }),\n stateSprinkles({\n color: { hover: 'text' },\n backgroundColor: { hover: 'primaryLight' },\n borderColor: { hover: 'primary' },\n }),\n focusRing,\n]);\n\nexport const icon = sprinkles({\n width: 4,\n height: 4,\n});\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/filters/deferredFilterSearchInput.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdr8 txvbqbey txvbqbee txvbqbf6o txvbqbff6 txvbqb17w0", t = "txvbqbdr8 txvbqbey txvbqbf7y txvbqbfet txvbqbju8";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { t as actions, e as container };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferredFilterSearchInput.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/deferredFilterSearchInput.css.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"deferredFilterSearchInput.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/deferredFilterSearchInput.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nexport const container = sprinkles({\n display: 'flex',\n alignItems: {\n base: 'center',\n max767: 'stretch',\n },\n flexDirection: {\n max767: 'column',\n },\n gap: 2,\n width: 'full',\n});\n\nexport const actions = sprinkles({\n display: 'flex',\n alignItems: 'center',\n flexShrink: 0,\n gap: 1,\n justifyContent: {\n max767: 'flex-end',\n },\n});\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/filters/entityIdFilterField.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdr8 txvbqbey txvbqb17ro txvbqbs65 txvbqbt9i", t = "oa1uye0 txvbqbyoi txvbqbzm3 txvbqb11ed txvbqbwqg txvbqbdrl txvbqbey txvbqbdxd txvbqbt9i txvbqb2gz txvbqb1uy txvbqb2et txvbqb17h txvbqb196b txvbqb19c9 txvbqb7g txvbqb76 txvbqb7t", n = "oa1uye1 txvbqb6 txvbqbdr8 txvbqbf6i txvbqbjtp txvbqbt9i txvbqb17w0 txvbqb16ex txvbqbv txvbqb1g5 txvbqb1933 txvbqb19c9 txvbqbux3", r = "txvbqbdr8 txvbqbf6i txvbqbjtp txvbqbg9v txvbqbt9i txvbqb17w0 txvbqbs65", i = "txvbqbdxd txvbqbt9i txvbqbdr8 txvbqbey txvbqbusr", a = "txvbqbdqi txvbqb19cd txvbqb96 txvbqbfcn txvbqbt9i txvbqbusr txvbqb16g0 txvbqb18xk", o = "txvbqbdqi txvbqbt9i txvbqbusr txvbqb16g0 txvbqb18xk txvbqb9j txvbqbfd0", s = "txvbqbdqi txvbqbt9i txvbqbusr txvbqb16g0 txvbqb18xk txvbqb19cd txvbqb9j", c = "oa1uye3 oa1uye2 txvbqb6 txvbqbdsb txvbqbey txvbqbgr txvbqbjtp txvbqb17ia txvbqbhnp txvbqbux3 txvbqb2gm txvbqb1uy txvbqb2et txvbqb17u txvbqb196b txvbqb19cd txvbqbv txvbqb7h txvbqb75 txvbqb7t", l = "oa1uye4 oa1uye2 txvbqb6 txvbqbdsb txvbqbey txvbqbgr txvbqbjtp txvbqb17ia txvbqbhnp txvbqbux3 txvbqb2gm txvbqb1uy txvbqb2et txvbqb17u txvbqb196b txvbqb19cd txvbqbv txvbqb7h txvbqb75 txvbqb7t txvbqb2is txvbqb196f", u = "txvbqb17h7 txvbqbhmm";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { u as actionIcon, l as clearButton, e as container, r as content, a as labelText, c as pickActionButton, n as pickerButton, t as pickerControl, s as placeholder, i as valueBox, o as valueText };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entityIdFilterField.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/entityIdFilterField.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport { vars } from '@plumile/ui/theme/themeContract.js';\n\nexport const container = sprinkles({\n display: 'flex',\n alignItems: 'center',\n width: 72,\n maxWidth: 'full',\n minWidth: 0,\n});\n\nexport const pickerControl = style([\n sprinkles({\n display: 'grid',\n alignItems: 'center',\n flex: 1,\n minWidth: 0,\n borderRadius: 'xl',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border',\n backgroundColor: 'surface',\n color: 'text',\n paddingX: 3,\n paddingY: 1.5,\n transitionProperty: 'default',\n transitionDuration: 150,\n transitionTimingFunction: 'ease',\n }),\n {\n gridTemplateColumns: 'minmax(0, 1fr) auto auto',\n gridTemplateAreas: '\"content pickAction clearAction\"',\n columnGap: vars.spacing[1],\n minHeight: '2.5rem',\n width: '100%',\n selectors: {\n '&:hover': {\n backgroundColor: vars.colors.surfaceMuted,\n },\n },\n },\n]);\n\nexport const pickerButton = style([\n sprinkles({\n appearance: 'none',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n minWidth: 0,\n width: 'full',\n textAlign: 'left',\n cursor: 'pointer',\n borderWidth: 0,\n backgroundColor: 'transparent',\n color: 'text',\n padding: 0,\n }),\n {\n gridArea: 'content',\n minHeight: '100%',\n selectors: {\n '&:focus-visible': {\n outline: `2px solid ${vars.colors.primary}`,\n outlineOffset: '2px',\n },\n '&:disabled': {\n cursor: 'not-allowed',\n opacity: 0.65,\n },\n },\n },\n]);\n\nexport const content =
|
|
1
|
+
{"version":3,"file":"entityIdFilterField.css.js","names":[],"sources":["../../../../../src/components/backoffice/filters/entityIdFilterField.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport { vars } from '@plumile/ui/theme/themeContract.js';\n\nexport const container = sprinkles({\n display: 'flex',\n alignItems: 'center',\n width: 72,\n maxWidth: 'full',\n minWidth: 0,\n});\n\nexport const pickerControl = style([\n sprinkles({\n display: 'grid',\n alignItems: 'center',\n flex: 1,\n minWidth: 0,\n borderRadius: 'xl',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'border',\n backgroundColor: 'surface',\n color: 'text',\n paddingX: 3,\n paddingY: 1.5,\n transitionProperty: 'default',\n transitionDuration: 150,\n transitionTimingFunction: 'ease',\n }),\n {\n gridTemplateColumns: 'minmax(0, 1fr) auto auto',\n gridTemplateAreas: '\"content pickAction clearAction\"',\n columnGap: vars.spacing[1],\n minHeight: '2.5rem',\n width: '100%',\n selectors: {\n '&:hover': {\n backgroundColor: vars.colors.surfaceMuted,\n },\n },\n },\n]);\n\nexport const pickerButton = style([\n sprinkles({\n appearance: 'none',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n minWidth: 0,\n width: 'full',\n textAlign: 'left',\n cursor: 'pointer',\n borderWidth: 0,\n backgroundColor: 'transparent',\n color: 'text',\n padding: 0,\n }),\n {\n gridArea: 'content',\n minHeight: '100%',\n selectors: {\n '&:focus-visible': {\n outline: `2px solid ${vars.colors.primary}`,\n outlineOffset: '2px',\n },\n '&:disabled': {\n cursor: 'not-allowed',\n opacity: 0.65,\n },\n },\n },\n]);\n\nexport const content = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n gap: 0.5,\n minWidth: 0,\n width: 'full',\n maxWidth: 'full',\n});\n\nexport const valueBox = sprinkles({\n flex: 1,\n minWidth: 0,\n display: 'flex',\n alignItems: 'center',\n overflow: 'hidden',\n});\n\nexport const labelText = sprinkles({\n display: 'block',\n color: 'textMuted',\n fontSize: 'xs',\n fontWeight: 'medium',\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n});\n\nexport const valueText = sprinkles({\n display: 'block',\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n fontSize: 'sm',\n fontWeight: 'semibold',\n});\n\nexport const placeholder = sprinkles({\n display: 'block',\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n color: 'textMuted',\n fontSize: 'sm',\n});\n\nconst actionButtonBase = style([\n sprinkles({\n appearance: 'none',\n display: 'inline-flex',\n alignItems: 'center',\n alignSelf: 'center',\n justifyContent: 'center',\n width: 7,\n height: 7,\n padding: 0,\n borderRadius: 'lg',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n backgroundColor: 'surface',\n color: 'textMuted',\n cursor: 'pointer',\n transitionProperty: 'colors',\n transitionDuration: 120,\n transitionTimingFunction: 'ease',\n }),\n {\n selectors: {\n '&:hover:not(:disabled)': {\n color: vars.colors.text,\n backgroundColor: vars.colors.surfaceMuted,\n borderColor: vars.colors.borderStrong,\n },\n '&:focus-visible': {\n outline: `2px solid ${vars.colors.primary}`,\n outlineOffset: '2px',\n },\n '&:disabled': {\n cursor: 'not-allowed',\n opacity: 0.65,\n },\n },\n },\n]);\n\nexport const pickActionButton = style([\n actionButtonBase,\n {\n gridArea: 'pickAction',\n },\n]);\n\nexport const clearButton = style([\n actionButtonBase,\n sprinkles({\n borderRadius: 'full',\n backgroundColor: 'surfaceMuted',\n }),\n {\n gridArea: 'clearAction',\n },\n]);\n\nexport const actionIcon = sprinkles({\n width: 4,\n height: 4,\n});\n"],"mappings":""}
|
|
@@ -22,7 +22,7 @@ var _ = /* @__PURE__ */ d(g, {
|
|
|
22
22
|
children: [/* @__PURE__ */ f("div", {
|
|
23
23
|
className: r,
|
|
24
24
|
children: [e.icon != null && /* @__PURE__ */ d("span", {
|
|
25
|
-
className: "
|
|
25
|
+
className: "txvbqbdsb txvbqbey txvbqbjtp txvbqb17in txvbqbho2 txvbqb2g9 txvbqb196f txvbqb1uy txvbqb2et txvbqb17u txvbqb19cb txvbqbf7y txvbqbqfb",
|
|
26
26
|
"aria-hidden": "true",
|
|
27
27
|
children: e.icon
|
|
28
28
|
}), /* @__PURE__ */ f("span", {
|
|
@@ -31,7 +31,7 @@ var _ = /* @__PURE__ */ d(g, {
|
|
|
31
31
|
className: a,
|
|
32
32
|
children: e.title
|
|
33
33
|
}), e.description != null && /* @__PURE__ */ d("span", {
|
|
34
|
-
className: "
|
|
34
|
+
className: "txvbqb19cd txvbqb9j",
|
|
35
35
|
children: e.description
|
|
36
36
|
})]
|
|
37
37
|
})]
|
|
@@ -54,11 +54,11 @@ var _ = /* @__PURE__ */ d(g, {
|
|
|
54
54
|
children: e.label
|
|
55
55
|
}),
|
|
56
56
|
n && /* @__PURE__ */ d("span", {
|
|
57
|
-
className: "
|
|
57
|
+
className: "txvbqb19cd txvbqb9j txvbqbm7a txvbqbutu",
|
|
58
58
|
children: e.description
|
|
59
59
|
}),
|
|
60
60
|
r && /* @__PURE__ */ d("span", {
|
|
61
|
-
className: "
|
|
61
|
+
className: "txvbqb19cd txvbqb96 txvbqbfcn txvbqb6a txvbqbkwc",
|
|
62
62
|
children: e.metaLabel
|
|
63
63
|
})
|
|
64
64
|
]
|
|
@@ -70,7 +70,7 @@ var _ = /* @__PURE__ */ d(g, {
|
|
|
70
70
|
}), /* @__PURE__ */ f("div", {
|
|
71
71
|
className: e,
|
|
72
72
|
children: [v != null && /* @__PURE__ */ d("div", {
|
|
73
|
-
className: "
|
|
73
|
+
className: "txvbqbs00",
|
|
74
74
|
children: /* @__PURE__ */ d(h, {
|
|
75
75
|
value: v.value,
|
|
76
76
|
onChange: v.onChange,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/hub/backofficeHubTemplate.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdr8 txvbqbf6i txvbqbfg9", t = "txvbqbs00", n = "txvbqbdr8 txvbqbf6i txvbqbfgm", r = "txvbqbdr8 txvbqbf6i txvbqbffj", i = "txvbqbdr8 txvbqbel txvbqbffj", a = "txvbqbdsb txvbqbey txvbqbjtp txvbqb17in txvbqbho2 txvbqb2g9 txvbqb196f txvbqb1uy txvbqb2et txvbqb17u txvbqb19cb txvbqbf7y txvbqbqfb", o = "txvbqbdr8 txvbqbf6i txvbqbfet txvbqbt9i", s = "txvbqba9 txvbqbfd0 txvbqb19c9 txvbqbm9g", c = "txvbqb19cd txvbqb9j", l = "txvbqbdrl txvbqbhfr txvbqbffj", u = "u4nszr0 txvbqbdr8 txvbqbel txvbqbffj txvbqbuy6 txvbqb2g9 txvbqb1uy txvbqb2et txvbqb17u txvbqb196b txvbqb19c9 txvbqb3f txvbqbt9i txvbqb7g txvbqb76 txvbqb7t", d = "txvbqbdsb txvbqbey txvbqbjtp txvbqb17j0 txvbqbhof txvbqb2g9 txvbqb196f txvbqb19cb txvbqbf7y", f = "txvbqbdr8 txvbqbf6i txvbqbfet txvbqbt9i", p = "txvbqbfd0 txvbqb19c9 txvbqbutu", m = "txvbqb19cd txvbqb9j txvbqbm7a txvbqbutu", h = "txvbqb19cd txvbqb96 txvbqbfcn txvbqb6a txvbqbkwc";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { e as content, l as grid, r as group, c as groupDescription, i as groupHeader, o as groupHeading, a as groupIcon, s as groupTitle, n as groups, u as item, f as itemContent, m as itemDescription, d as itemIcon, h as itemMeta, p as itemTitle, t as search };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeHubTemplate.css.js","names":[],"sources":["../../../../../src/components/backoffice/hub/backofficeHubTemplate.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\
|
|
1
|
+
{"version":3,"file":"backofficeHubTemplate.css.js","names":[],"sources":["../../../../../src/components/backoffice/hub/backofficeHubTemplate.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport { vars } from '@plumile/ui/theme/themeContract.js';\n\nexport const content = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 5,\n});\n\nexport const search = sprinkles({\n maxWidth: '2xl',\n});\n\nexport const groups = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 6,\n});\n\nexport const group = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 3,\n});\n\nexport const groupHeader = sprinkles({\n display: 'flex',\n alignItems: 'flex-start',\n gap: 3,\n});\n\nexport const groupIcon = sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: 8,\n height: 8,\n borderRadius: 'md',\n backgroundColor: 'surfaceMuted',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n color: 'textSecondary',\n flexShrink: 0,\n marginTop: 'px',\n});\n\nexport const groupHeading = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n minWidth: 0,\n});\n\nexport const groupTitle = sprinkles({\n fontSize: 'lg',\n fontWeight: 'semibold',\n color: 'text',\n margin: 0,\n});\n\nexport const groupDescription = sprinkles({\n color: 'textMuted',\n fontSize: 'sm',\n});\n\nexport const grid = sprinkles({\n display: 'grid',\n gridTemplateColumns: 'autoFitMinmax260',\n gap: 3,\n});\n\nexport const item = style([\n sprinkles({\n display: 'flex',\n alignItems: 'flex-start',\n gap: 3,\n padding: 3,\n borderRadius: 'md',\n borderWidth: 'default',\n borderStyle: 'solid',\n borderColor: 'borderSubtle',\n backgroundColor: 'surface',\n color: 'text',\n textDecoration: 'none',\n minWidth: 0,\n transitionProperty: 'default',\n transitionDuration: 150,\n transitionTimingFunction: 'ease',\n }),\n {\n minHeight: '92px',\n selectors: {\n '&:hover': {\n borderColor: vars.colors.border,\n backgroundColor: vars.colors.surfaceMuted,\n transform: 'translateY(-1px)',\n },\n '&:focus-visible': {\n outline: `2px solid ${vars.colors.primary}`,\n outlineOffset: '2px',\n },\n },\n },\n]);\n\nexport const itemIcon = sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n width: 9,\n height: 9,\n borderRadius: 'md',\n backgroundColor: 'surfaceMuted',\n color: 'textSecondary',\n flexShrink: 0,\n});\n\nexport const itemContent = sprinkles({\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n minWidth: 0,\n});\n\nexport const itemTitle = sprinkles({\n fontWeight: 'semibold',\n color: 'text',\n overflowWrap: 'anywhere',\n});\n\nexport const itemDescription = sprinkles({\n color: 'textMuted',\n fontSize: 'sm',\n lineHeight: 'normal',\n overflowWrap: 'anywhere',\n});\n\nexport const itemMeta = sprinkles({\n color: 'textMuted',\n fontSize: 'xs',\n fontWeight: 'medium',\n textTransform: 'uppercase',\n letterSpacing: 'wide',\n});\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/layout/backofficeSidebarActions.css.ts
|
|
3
|
-
var e = "_1xws1b00
|
|
3
|
+
var e = "_1xws1b00 qbwcuej qbwcueh txvbqbdsb txvbqbey txvbqbjtp txvbqb1g5 txvbqb2e3 txvbqb2g9 txvbqb1933 txvbqb19cb txvbqbv txvbqbux3 txvbqb7h txvbqb76 txvbqb7t qbwcuei txvbqb1aey txvbqb1bsa qbwcue4 txvbqb1c2w txvbqb1c9c qbwcue0 txvbqb1cb0 txvbqb1cws txvbqb17hx txvbqbhnc";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { e as actionButton };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeSidebarActions.css.js","names":[],"sources":["../../../../../src/components/backoffice/layout/backofficeSidebarActions.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\
|
|
1
|
+
{"version":3,"file":"backofficeSidebarActions.css.js","names":[],"sources":["../../../../../src/components/backoffice/layout/backofficeSidebarActions.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport { ghostIconButton } from '@plumile/ui/theme/styleRecipes.css.js';\n\nexport const actionButton = style([\n ghostIconButton,\n sprinkles({\n width: 6,\n height: 6,\n }),\n]);\n"],"mappings":""}
|
|
@@ -31,13 +31,13 @@ var g = (e) => {
|
|
|
31
31
|
children: [/* @__PURE__ */ p("li", {
|
|
32
32
|
className: o,
|
|
33
33
|
children: [x && /* @__PURE__ */ f("span", {
|
|
34
|
-
className: "
|
|
34
|
+
className: "_80s44h1 _80s44h0 qbwcuej qbwcueh txvbqbdsb txvbqbey txvbqbjtp txvbqb1g5 txvbqb2e3 txvbqb2g9 txvbqb1933 txvbqb19cb txvbqbv txvbqbux3 txvbqb7h txvbqb76 txvbqb7t qbwcuei txvbqb1aey txvbqb1bsa qbwcue4 txvbqb1c2w txvbqb1c9c qbwcue0 txvbqb1cb0 txvbqb1cws qbwcuex qbwcuer txvbqbf7y txvbqbm67 qbwcue11 qbwcuev txvbqb17in txvbqbho2 txvbqbtce txvbqbscn txvbqb3f txvbqb196f txvbqb19c9",
|
|
35
35
|
"aria-current": "page",
|
|
36
36
|
title: b,
|
|
37
37
|
children: w
|
|
38
38
|
}), !x && /* @__PURE__ */ f(m, {
|
|
39
39
|
to: y,
|
|
40
|
-
className: "
|
|
40
|
+
className: "_80s44h0 qbwcuej qbwcueh txvbqbdsb txvbqbey txvbqbjtp txvbqb1g5 txvbqb2e3 txvbqb2g9 txvbqb1933 txvbqb19cb txvbqbv txvbqbux3 txvbqb7h txvbqb76 txvbqb7t qbwcuei txvbqb1aey txvbqb1bsa qbwcue4 txvbqb1c2w txvbqb1c9c qbwcue0 txvbqb1cb0 txvbqb1cws qbwcuex qbwcuer txvbqbf7y txvbqbm67 qbwcue11 qbwcuev txvbqb17in txvbqbho2 txvbqbtce txvbqbscn txvbqb3f",
|
|
41
41
|
"aria-label": b,
|
|
42
42
|
title: b,
|
|
43
43
|
children: w
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
/* empty css */
|
|
1
2
|
/* empty css */
|
|
2
3
|
//#region src/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.ts
|
|
3
|
-
var e = "
|
|
4
|
+
var e = "txvbqbdsb txvbqbey", t = "txvbqbdsb txvbqbey txvbqbff6 txvbqbm9g txvbqbux3 txvbqbm8d", n = "txvbqbdsb txvbqbey txvbqbff6", r = "txvbqb19cb txvbqb9j txvbqbm7a", i = "_80s44h0 qbwcuej qbwcueh txvbqbdsb txvbqbey txvbqbjtp txvbqb1g5 txvbqb2e3 txvbqb2g9 txvbqb1933 txvbqb19cb txvbqbv txvbqbux3 txvbqb7h txvbqb76 txvbqb7t qbwcuei txvbqb1aey txvbqb1bsa qbwcue4 txvbqb1c2w txvbqb1c9c qbwcue0 txvbqb1cb0 txvbqb1cws qbwcuex qbwcuer txvbqbf7y txvbqbm67 qbwcue11 qbwcuev txvbqb17in txvbqbho2 txvbqbtce txvbqbscn txvbqb3f", a = "_80s44h1 _80s44h0 qbwcuej qbwcueh txvbqbdsb txvbqbey txvbqbjtp txvbqb1g5 txvbqb2e3 txvbqb2g9 txvbqb1933 txvbqb19cb txvbqbv txvbqbux3 txvbqb7h txvbqb76 txvbqb7t qbwcuei txvbqb1aey txvbqb1bsa qbwcue4 txvbqb1c2w txvbqb1c9c qbwcue0 txvbqb1cb0 txvbqb1cws qbwcuex qbwcuer txvbqbf7y txvbqbm67 qbwcue11 qbwcuev txvbqb17in txvbqbho2 txvbqbtce txvbqbscn txvbqb3f txvbqb196f txvbqb19c9", o = "_4k5f060 txvbqb1g5 txvbqb2e3 txvbqb1j txvbqbi1s txvbqbmpc txvbqbusr txvbqbux3 txvbqb11jf txvbqb17wd", s = "_80s44h2 qbwcuep qbwcuen txvbqbdsb txvbqbey txvbqbfet txvbqb19c9 txvbqb3f txvbqb7h txvbqb75 txvbqb7t qbwcueo txvbqb1czl qbwcue0 txvbqb1cb0 txvbqb1cws txvbqb19cb txvbqb9j txvbqbm7a", c = "txvbqb19c9 txvbqb9j txvbqbm7a txvbqbfd0";
|
|
4
5
|
//#endregion
|
|
5
6
|
export { c as current, a as homeCurrent, o as homeLabel, i as homeLink, n as item, s as link, t as list, e as nav, r as separator };
|
|
6
7
|
|
package/lib/esm/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeTopbarBreadcrumb.css.js","names":[],"sources":["../../../../../../src/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport {
|
|
1
|
+
{"version":3,"file":"backofficeTopbarBreadcrumb.css.js","names":[],"sources":["../../../../../../src/components/backoffice/layout/breadcrumb/backofficeTopbarBreadcrumb.css.ts"],"sourcesContent":["import { style } from '@vanilla-extract/css';\nimport { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport {\n entityReferenceLink,\n ghostIconButton,\n iconBox,\n} from '@plumile/ui/theme/styleRecipes.css.js';\nimport { visuallyHidden } from '@plumile/ui/theme/accessibility.css.js';\n\nconst INLINE_FLEX = 'inline-flex' as const;\n\nexport const nav = sprinkles({\n display: INLINE_FLEX,\n alignItems: 'center',\n});\n\nexport const list = sprinkles({\n display: INLINE_FLEX,\n alignItems: 'center',\n gap: 2,\n margin: 0,\n padding: 0,\n listStyleType: 'none',\n});\n\nexport const item = sprinkles({\n display: INLINE_FLEX,\n alignItems: 'center',\n gap: 2,\n});\n\nexport const separator = sprinkles({\n color: 'textSecondary',\n fontSize: 'sm',\n lineHeight: 'normal',\n});\n\nconst homeBase = style([\n ghostIconButton,\n iconBox({ size: 'lg' }),\n sprinkles({\n textDecoration: 'none',\n }),\n]);\n\nexport const homeLink = homeBase;\n\nexport const homeCurrent = style([\n homeBase,\n sprinkles({\n backgroundColor: 'surfaceMuted',\n color: 'text',\n }),\n]);\n\nexport const homeLabel = visuallyHidden;\n\nexport const link = style([\n entityReferenceLink,\n sprinkles({\n color: 'textSecondary',\n fontSize: 'sm',\n lineHeight: 'normal',\n }),\n]);\n\nexport const current = sprinkles({\n color: 'text',\n fontSize: 'sm',\n lineHeight: 'normal',\n fontWeight: 'semibold',\n});\n"],"mappings":""}
|
|
@@ -96,25 +96,14 @@ function v(v) {
|
|
|
96
96
|
if (!l.hasList) return null;
|
|
97
97
|
let p = s ?? a(l.label, E);
|
|
98
98
|
if (H !== "" && !p.toLowerCase().includes(H)) return null;
|
|
99
|
-
let h
|
|
100
|
-
c === !0 && j != null && (
|
|
99
|
+
let h;
|
|
100
|
+
c === !0 && j != null && (h = /* @__PURE__ */ u(m, {
|
|
101
101
|
width: 14,
|
|
102
102
|
height: 14,
|
|
103
103
|
"aria-hidden": "true"
|
|
104
|
-
})
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}, v = (e) => {
|
|
108
|
-
e.preventDefault();
|
|
109
|
-
let { dataTransfer: t } = e;
|
|
110
|
-
t.dropEffect = "move";
|
|
111
|
-
}, y = (e) => {
|
|
112
|
-
e.preventDefault();
|
|
113
|
-
let t = e.dataTransfer.getData("text/plain");
|
|
114
|
-
t === "" || t === n || j(t, n);
|
|
115
|
-
});
|
|
116
|
-
let T;
|
|
117
|
-
return h != null && (T = B), {
|
|
104
|
+
}));
|
|
105
|
+
let g;
|
|
106
|
+
return h != null && (g = B), {
|
|
118
107
|
id: n,
|
|
119
108
|
data: {
|
|
120
109
|
kind: "entity",
|
|
@@ -132,11 +121,7 @@ function v(v) {
|
|
|
132
121
|
ariaLabel: p,
|
|
133
122
|
actionSlot: W(n),
|
|
134
123
|
dragHandleSlot: h,
|
|
135
|
-
dragHandleLabel:
|
|
136
|
-
draggable: S,
|
|
137
|
-
onDragStart: g,
|
|
138
|
-
onDragOver: v,
|
|
139
|
-
onDrop: y
|
|
124
|
+
dragHandleLabel: g
|
|
140
125
|
};
|
|
141
126
|
}, q = (e) => {
|
|
142
127
|
let { hub: n, groupId: r, icon: o } = e, s = {
|
|
@@ -214,17 +199,29 @@ function v(v) {
|
|
|
214
199
|
enableReorder: !0
|
|
215
200
|
});
|
|
216
201
|
}).filter((e) => e != null);
|
|
217
|
-
e.length > 0
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
202
|
+
if (e.length > 0) {
|
|
203
|
+
let t;
|
|
204
|
+
j != null && e.length > 1 && (t = {
|
|
205
|
+
enabled: !0,
|
|
206
|
+
onReorder: j
|
|
207
|
+
});
|
|
208
|
+
let n = e;
|
|
209
|
+
t ?? (n = e.map((e) => {
|
|
210
|
+
let { dragHandleSlot: t, dragHandleLabel: n, ...r } = e;
|
|
211
|
+
return r;
|
|
212
|
+
})), J.push({
|
|
213
|
+
id: "pinned",
|
|
214
|
+
title: D("sidebar.sections.pinned"),
|
|
215
|
+
icon: _(void 0, /* @__PURE__ */ u(g, {
|
|
216
|
+
width: 16,
|
|
217
|
+
height: 16,
|
|
218
|
+
"aria-hidden": "true"
|
|
219
|
+
})),
|
|
220
|
+
items: n,
|
|
221
|
+
collapsible: !1,
|
|
222
|
+
reorder: t
|
|
223
|
+
});
|
|
224
|
+
}
|
|
228
225
|
}
|
|
229
226
|
if (k.length > 0) {
|
|
230
227
|
let e = k.map((e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildSidebarSections.js","names":[],"sources":["../../../../../src/components/backoffice/layout/buildSidebarSections.tsx"],"sourcesContent":["import { type DragEvent, type ReactNode } from 'react';\nimport type { TFunction } from 'i18next';\n\nimport type { BackofficeEntityManifestMap } from '@plumile/backoffice-core/types.js';\nimport type {\n BackofficeSidebarConfig,\n BackofficeDashboardRegistration,\n BackofficeSidebarItemDescriptor,\n BackofficeIconComponent,\n BackofficeSidebarRecentItem,\n} from '../../../provider/types.js';\nimport { type AdminSidebarSection } from '@plumile/ui/admin/organisms/admin_sidebar/AdminSidebar.js';\nimport { type SidebarNavSectionItem } from '@plumile/ui/backoffice/molecules/sidebar_nav_section/SidebarNavSection.js';\nimport { BackofficeSidebarHistorySvg } from '@plumile/ui/icons/backoffice/BackofficeSidebarHistorySvg.js';\nimport { GripDotsSvg } from '@plumile/ui/icons/GripDotsSvg.js';\nimport { PinFilledSvg } from '@plumile/ui/icons/PinFilledSvg.js';\nimport { PinSvg } from '@plumile/ui/icons/PinSvg.js';\nimport { SidebarHomeSvg } from '@plumile/ui/icons/SidebarHomeSvg.js';\nimport { SidebarTasksSvg } from '@plumile/ui/icons/SidebarTasksSvg.js';\nimport type { SidebarGroupCollapseState } from '../../../hooks/useSidebarGroupCollapse.js';\nimport { findBackofficeDashboardRegistration } from '../../../provider/dashboardRegistrations.js';\nimport * as styles from './backofficeSidebarActions.css.js';\nimport {\n buildEntityGroupLookup,\n isActivePath,\n joinBackofficePath,\n resolveLabel,\n resolveGroupItems,\n resolveHubEntityIds,\n resolveSidebarHub,\n resolveSidebarGroups,\n} from './sidebarUtils.js';\n\nconst renderIcon = (\n Icon?: BackofficeIconComponent,\n fallback?: ReactNode,\n size = 18,\n): ReactNode => {\n if (Icon != null) {\n return <Icon width={size} height={size} aria-hidden=\"true\" />;\n }\n return fallback ?? null;\n};\n\nexport type BuildSidebarSectionsInput = {\n basePath: string;\n pathname: string;\n entities: BackofficeEntityManifestMap;\n dashboards?: readonly BackofficeDashboardRegistration[];\n sidebar?: BackofficeSidebarConfig;\n permissions: unknown;\n searchQuery?: string;\n tApp: TFunction;\n t: TFunction;\n pinnedEntityIds?: readonly string[];\n recentItems?: readonly BackofficeSidebarRecentItem[];\n onTogglePin?: (entityId: string) => void;\n onReorderPin?: (fromId: string, toId: string) => void;\n collapsedByGroupId?: SidebarGroupCollapseState;\n onGroupCollapsedChange?: (groupId: string, collapsed: boolean) => void;\n sidebarCollapsed?: boolean;\n};\n\n/**\n * Builds the sidebar sections for the backoffice layout.\n */\nexport function buildSidebarSections(\n input: BuildSidebarSectionsInput,\n): readonly AdminSidebarSection[] {\n const {\n basePath,\n pathname,\n entities,\n dashboards = [],\n sidebar,\n permissions,\n searchQuery,\n tApp,\n t,\n pinnedEntityIds = [],\n recentItems = [],\n onTogglePin,\n onReorderPin,\n collapsedByGroupId,\n onGroupCollapsedChange,\n sidebarCollapsed = false,\n } = input;\n\n const groups = resolveSidebarGroups(entities, sidebar);\n const entries = Object.entries(groups);\n const pinnedSet = new Set(pinnedEntityIds);\n const pinLabel = t('sidebar.actions.pin');\n const unpinLabel = t('sidebar.actions.unpin');\n const reorderLabel = t('sidebar.actions.reorder');\n const entityGroupLookup = buildEntityGroupLookup(groups, sidebar);\n const normalizedQuery = searchQuery?.trim().toLowerCase() ?? '';\n\n const labelMatchesQuery = (label: string): boolean => {\n return (\n normalizedQuery === '' || label.toLowerCase().includes(normalizedQuery)\n );\n };\n\n const renderPinAction = (entityId: string): ReactNode | null => {\n if (onTogglePin == null) {\n return null;\n }\n const isPinned = pinnedSet.has(entityId);\n let label = pinLabel;\n let Icon = PinSvg;\n if (isPinned) {\n label = unpinLabel;\n Icon = PinFilledSvg;\n }\n\n return (\n <button\n type=\"button\"\n className={styles.actionButton}\n aria-pressed={isPinned}\n aria-label={label}\n title={label}\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onTogglePin(entityId);\n }}\n >\n <Icon width={14} height={14} aria-hidden=\"true\" />\n </button>\n );\n };\n\n const buildDashboardItem = (\n inputItem?: {\n id?: string;\n icon?: BackofficeIconComponent;\n label?: string;\n },\n groupId?: string,\n ): SidebarNavSectionItem | null => {\n const dashboardId = inputItem?.id ?? 'dashboard';\n const dashboardDescriptor: BackofficeSidebarItemDescriptor = {\n kind: 'dashboard',\n id: dashboardId,\n };\n const isDashboardVisible = sidebar?.isItemVisible?.(\n dashboardDescriptor,\n permissions,\n );\n if (isDashboardVisible === false) {\n return null;\n }\n\n const registration = findBackofficeDashboardRegistration(\n dashboards,\n dashboardId,\n );\n let label = inputItem?.label;\n if (label == null && registration != null) {\n label = resolveLabel(registration.label, tApp);\n }\n label ??= t('sidebar.items.dashboard');\n if (!labelMatchesQuery(label)) {\n return null;\n }\n\n let href = basePath;\n let id = 'dashboard';\n if (dashboardId !== 'dashboard') {\n href = joinBackofficePath(basePath, `dashboard/${dashboardId}`);\n id = `dashboard-${dashboardId}`;\n }\n\n let isActive = isActivePath(pathname, href);\n if (dashboardId === 'dashboard') {\n isActive = pathname === basePath || pathname === `${basePath}/dashboard`;\n }\n\n return {\n id,\n data: {\n kind: 'dashboard',\n id: dashboardId,\n groupId,\n },\n label,\n href,\n icon: renderIcon(\n inputItem?.icon ?? registration?.icon,\n <SidebarHomeSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive,\n ariaLabel: label,\n };\n };\n\n const buildEntityItem = (inputItem: {\n entityId: string;\n groupId?: string;\n groupIcon?: BackofficeIconComponent;\n itemIcon?: BackofficeIconComponent;\n itemLabel?: string;\n enableReorder?: boolean;\n }): SidebarNavSectionItem | null => {\n const { entityId, groupId, groupIcon, itemIcon, itemLabel, enableReorder } =\n inputItem;\n const config = entities[entityId];\n if (config == null) {\n return null;\n }\n\n let descriptor: BackofficeSidebarItemDescriptor = {\n kind: 'entity',\n id: entityId,\n };\n if (config.kind === 'tool') {\n descriptor = { kind: 'tool', id: entityId };\n }\n const isEntityVisible = sidebar?.isItemVisible?.(descriptor, permissions);\n if (isEntityVisible === false) {\n return null;\n }\n\n if (config.kind === 'tool') {\n const label = itemLabel ?? resolveLabel(config.label, tApp);\n if (\n normalizedQuery !== '' &&\n !label.toLowerCase().includes(normalizedQuery)\n ) {\n return null;\n }\n return {\n id: `tool-${entityId}`,\n data: {\n kind: 'tool',\n id: entityId,\n groupId,\n },\n label,\n href: config.routes.list,\n icon: renderIcon(\n itemIcon ?? groupIcon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive: isActivePath(pathname, config.routes.list),\n ariaLabel: label,\n actionSlot: renderPinAction(entityId),\n };\n }\n\n if (!config.hasList) {\n return null;\n }\n\n const label = itemLabel ?? resolveLabel(config.label, tApp);\n if (\n normalizedQuery !== '' &&\n !label.toLowerCase().includes(normalizedQuery)\n ) {\n return null;\n }\n\n let dragHandleSlot: ReactNode | undefined;\n let onDragStart: ((event: DragEvent) => void) | undefined;\n let onDragOver: ((event: DragEvent) => void) | undefined;\n let onDrop: ((event: DragEvent) => void) | undefined;\n let draggable = false;\n\n if (enableReorder === true && onReorderPin != null) {\n draggable = true;\n dragHandleSlot = (\n <GripDotsSvg width={14} height={14} aria-hidden=\"true\" />\n );\n onDragStart = (event) => {\n const { dataTransfer } = event;\n dataTransfer.effectAllowed = 'move';\n dataTransfer.setData('text/plain', entityId);\n };\n onDragOver = (event) => {\n event.preventDefault();\n const { dataTransfer } = event;\n dataTransfer.dropEffect = 'move';\n };\n onDrop = (event) => {\n event.preventDefault();\n const fromId = event.dataTransfer.getData('text/plain');\n if (fromId === '' || fromId === entityId) {\n return;\n }\n onReorderPin(fromId, entityId);\n };\n }\n\n let dragHandleLabel: string | undefined;\n if (dragHandleSlot != null) {\n dragHandleLabel = reorderLabel;\n }\n\n return {\n id: entityId,\n data: {\n kind: 'entity',\n id: entityId,\n groupId,\n },\n label,\n href: config.routes.list,\n icon: renderIcon(\n itemIcon ?? groupIcon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive: isActivePath(pathname, config.routes.list),\n ariaLabel: label,\n actionSlot: renderPinAction(entityId),\n dragHandleSlot,\n dragHandleLabel,\n draggable,\n onDragStart,\n onDragOver,\n onDrop,\n };\n };\n\n const buildHubItem = (inputItem: {\n hub: ReturnType<typeof resolveSidebarHub>;\n groupId?: string;\n icon?: BackofficeIconComponent;\n }): SidebarNavSectionItem | null => {\n const { hub, groupId, icon } = inputItem;\n const descriptor: BackofficeSidebarItemDescriptor = {\n kind: 'hub',\n id: hub.id,\n };\n const isVisible = sidebar?.isItemVisible?.(descriptor, permissions);\n if (isVisible === false) {\n return null;\n }\n const childEntityIds = resolveHubEntityIds(hub);\n const visibleChildConfigs = childEntityIds\n .map((entityId) => {\n return entities[entityId] ?? null;\n })\n .filter((config): config is BackofficeEntityManifestMap[string] => {\n if (config == null) {\n return false;\n }\n let childKind: BackofficeSidebarItemDescriptor['kind'] = 'entity';\n if (config.kind === 'tool') {\n childKind = 'tool';\n }\n const childDescriptor: BackofficeSidebarItemDescriptor = {\n kind: childKind,\n id: config.id,\n };\n const isChildVisible = sidebar?.isItemVisible?.(\n childDescriptor,\n permissions,\n );\n if (isChildVisible === false) {\n return false;\n }\n if (config.kind !== 'tool' && !config.hasList) {\n return false;\n }\n return true;\n });\n if (childEntityIds.length > 0 && visibleChildConfigs.length === 0) {\n return null;\n }\n const label = resolveLabel(hub.title, tApp);\n const matchesHub = labelMatchesQuery(label);\n const matchesChild = visibleChildConfigs.some((config) => {\n return labelMatchesQuery(resolveLabel(config.label, tApp));\n });\n if (!matchesHub && !matchesChild) {\n return null;\n }\n const isActive =\n isActivePath(pathname, hub.href) ||\n visibleChildConfigs.some((config) => {\n return isActivePath(pathname, config.routes.list);\n });\n return {\n id: `hub-${hub.id}`,\n data: {\n kind: 'hub',\n id: hub.id,\n groupId,\n },\n label,\n href: hub.href,\n icon: renderIcon(\n icon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive,\n ariaLabel: label,\n };\n };\n\n const sections: AdminSidebarSection[] = [];\n\n const primaryItems = sidebar?.primaryItems ?? [];\n if (primaryItems.length > 0) {\n const primarySectionItems = primaryItems\n .map((primaryItem): SidebarNavSectionItem | null => {\n if (primaryItem.kind === 'dashboard') {\n let itemLabel: string | undefined;\n if (primaryItem.label != null) {\n itemLabel = resolveLabel(primaryItem.label, tApp);\n }\n return buildDashboardItem({\n id: primaryItem.id,\n icon: primaryItem.icon,\n label: itemLabel,\n });\n }\n if (primaryItem.kind === 'hub') {\n const hub = resolveSidebarHub(primaryItem, sidebar);\n return buildHubItem({\n hub,\n icon: primaryItem.icon,\n });\n }\n let itemLabel: string | undefined;\n if (primaryItem.label != null) {\n itemLabel = resolveLabel(primaryItem.label, tApp);\n }\n return buildEntityItem({\n entityId: primaryItem.id,\n itemIcon: primaryItem.icon,\n itemLabel,\n });\n })\n .filter((item): item is SidebarNavSectionItem => {\n return item != null;\n });\n\n if (primarySectionItems.length > 0) {\n sections.push({\n id: 'primary',\n items: primarySectionItems,\n collapsible: false,\n });\n }\n }\n\n if (pinnedEntityIds.length > 0) {\n const pinnedItems = pinnedEntityIds\n .map((entityId) => {\n const groupMeta = entityGroupLookup.get(entityId);\n return buildEntityItem({\n entityId,\n groupId: groupMeta?.groupId,\n groupIcon: groupMeta?.groupIcon,\n itemIcon: groupMeta?.itemIcon,\n enableReorder: true,\n });\n })\n .filter((item): item is SidebarNavSectionItem => {\n return item != null;\n });\n\n if (pinnedItems.length > 0) {\n sections.push({\n id: 'pinned',\n title: t('sidebar.sections.pinned'),\n icon: renderIcon(\n undefined,\n <PinSvg width={16} height={16} aria-hidden=\"true\" />,\n ),\n items: pinnedItems,\n collapsible: false,\n });\n }\n }\n\n if (recentItems.length > 0) {\n const recentSectionItems = recentItems\n .map((recentItem): SidebarNavSectionItem | null => {\n const config = entities[recentItem.id];\n if (config == null) {\n return null;\n }\n const descriptor: BackofficeSidebarItemDescriptor = {\n kind: recentItem.kind,\n id: recentItem.id,\n };\n const isVisible = sidebar?.isItemVisible?.(descriptor, permissions);\n if (isVisible === false) {\n return null;\n }\n if (\n normalizedQuery !== '' &&\n !recentItem.label.toLowerCase().includes(normalizedQuery)\n ) {\n return null;\n }\n const groupMeta = entityGroupLookup.get(recentItem.id);\n return {\n id: `recent-${recentItem.kind}-${recentItem.id}`,\n data: {\n kind: recentItem.kind,\n id: recentItem.id,\n groupId: groupMeta?.groupId,\n },\n label: recentItem.label,\n href: recentItem.href,\n icon: renderIcon(\n groupMeta?.itemIcon ?? groupMeta?.groupIcon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive: isActivePath(pathname, recentItem.href),\n ariaLabel: recentItem.label,\n } satisfies SidebarNavSectionItem;\n })\n .filter((item): item is SidebarNavSectionItem => {\n return item != null;\n });\n\n if (recentSectionItems.length > 0) {\n sections.push({\n id: 'recent',\n title: t('sidebar.sections.recent'),\n icon: renderIcon(\n undefined,\n <BackofficeSidebarHistorySvg\n width={16}\n height={16}\n aria-hidden=\"true\"\n />,\n ),\n items: recentSectionItems,\n collapsible: false,\n });\n }\n }\n\n entries.forEach(([groupId, group]) => {\n if (group.isVisible != null && !group.isVisible(permissions)) {\n return;\n }\n\n const items: SidebarNavSectionItem[] = [];\n\n const groupItems = resolveGroupItems(group);\n if (groupItems.length > 0) {\n groupItems.forEach((groupItem) => {\n if (groupItem.kind === 'dashboard') {\n let itemLabel: string | undefined;\n if (groupItem.label != null) {\n itemLabel = resolveLabel(groupItem.label, tApp);\n }\n const item = buildDashboardItem(\n {\n id: groupItem.id,\n icon: groupItem.icon ?? group.icon,\n label: itemLabel,\n },\n groupId,\n );\n if (item != null) {\n items.push(item);\n }\n return;\n }\n if (groupItem.kind === 'hub') {\n const hub = resolveSidebarHub(groupItem, sidebar);\n const item = buildHubItem({\n hub,\n groupId,\n icon: groupItem.icon ?? group.icon,\n });\n if (item != null) {\n items.push(item);\n }\n return;\n }\n let itemLabel: string | undefined;\n if (groupItem.label != null) {\n itemLabel = resolveLabel(groupItem.label, tApp);\n }\n const item = buildEntityItem({\n entityId: groupItem.id,\n groupId,\n groupIcon: group.icon,\n itemIcon: groupItem.icon,\n itemLabel,\n });\n if (item != null) {\n items.push(item);\n }\n });\n }\n\n let sectionItems: SidebarNavSectionItem[] = items;\n if (sidebarCollapsed && group.behavior?.showInCollapsedRail !== true) {\n sectionItems = items.filter((item) => {\n return item.data?.kind === 'dashboard' || item.isActive === true;\n });\n }\n\n if (sectionItems.length === 0) {\n return;\n }\n\n let title: string | undefined;\n if (group.title != null) {\n title = resolveLabel(group.title, tApp);\n }\n\n const isCollapsed = collapsedByGroupId?.[groupId];\n let onCollapsedChange: ((collapsed: boolean) => void) | undefined;\n if (onGroupCollapsedChange != null) {\n onCollapsedChange = (collapsed: boolean) => {\n onGroupCollapsedChange(groupId, collapsed);\n };\n }\n\n sections.push({\n id: groupId,\n title,\n icon: renderIcon(group.icon, undefined, 16),\n items: sectionItems,\n collapsible: group.behavior?.collapsible ?? true,\n defaultCollapsed: group.behavior?.defaultCollapsed ?? true,\n isCollapsed,\n onCollapsedChange,\n });\n });\n\n return sections;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buildSidebarSections.js","names":[],"sources":["../../../../../src/components/backoffice/layout/buildSidebarSections.tsx"],"sourcesContent":["import { type ReactNode } from 'react';\nimport type { TFunction } from 'i18next';\n\nimport type { BackofficeEntityManifestMap } from '@plumile/backoffice-core/types.js';\nimport type {\n BackofficeSidebarConfig,\n BackofficeDashboardRegistration,\n BackofficeSidebarItemDescriptor,\n BackofficeIconComponent,\n BackofficeSidebarRecentItem,\n} from '../../../provider/types.js';\nimport { type AdminSidebarSection } from '@plumile/ui/admin/organisms/admin_sidebar/AdminSidebar.js';\nimport { type SidebarNavSectionItem } from '@plumile/ui/backoffice/molecules/sidebar_nav_section/SidebarNavSection.js';\nimport { BackofficeSidebarHistorySvg } from '@plumile/ui/icons/backoffice/BackofficeSidebarHistorySvg.js';\nimport { GripDotsSvg } from '@plumile/ui/icons/GripDotsSvg.js';\nimport { PinFilledSvg } from '@plumile/ui/icons/PinFilledSvg.js';\nimport { PinSvg } from '@plumile/ui/icons/PinSvg.js';\nimport { SidebarHomeSvg } from '@plumile/ui/icons/SidebarHomeSvg.js';\nimport { SidebarTasksSvg } from '@plumile/ui/icons/SidebarTasksSvg.js';\nimport type { SidebarGroupCollapseState } from '../../../hooks/useSidebarGroupCollapse.js';\nimport { findBackofficeDashboardRegistration } from '../../../provider/dashboardRegistrations.js';\nimport * as styles from './backofficeSidebarActions.css.js';\nimport {\n buildEntityGroupLookup,\n isActivePath,\n joinBackofficePath,\n resolveLabel,\n resolveGroupItems,\n resolveHubEntityIds,\n resolveSidebarHub,\n resolveSidebarGroups,\n} from './sidebarUtils.js';\n\nconst renderIcon = (\n Icon?: BackofficeIconComponent,\n fallback?: ReactNode,\n size = 18,\n): ReactNode => {\n if (Icon != null) {\n return <Icon width={size} height={size} aria-hidden=\"true\" />;\n }\n return fallback ?? null;\n};\n\nexport type BuildSidebarSectionsInput = {\n basePath: string;\n pathname: string;\n entities: BackofficeEntityManifestMap;\n dashboards?: readonly BackofficeDashboardRegistration[];\n sidebar?: BackofficeSidebarConfig;\n permissions: unknown;\n searchQuery?: string;\n tApp: TFunction;\n t: TFunction;\n pinnedEntityIds?: readonly string[];\n recentItems?: readonly BackofficeSidebarRecentItem[];\n onTogglePin?: (entityId: string) => void;\n onReorderPin?: (fromId: string, toId: string) => void;\n collapsedByGroupId?: SidebarGroupCollapseState;\n onGroupCollapsedChange?: (groupId: string, collapsed: boolean) => void;\n sidebarCollapsed?: boolean;\n};\n\n/**\n * Builds the sidebar sections for the backoffice layout.\n */\nexport function buildSidebarSections(\n input: BuildSidebarSectionsInput,\n): readonly AdminSidebarSection[] {\n const {\n basePath,\n pathname,\n entities,\n dashboards = [],\n sidebar,\n permissions,\n searchQuery,\n tApp,\n t,\n pinnedEntityIds = [],\n recentItems = [],\n onTogglePin,\n onReorderPin,\n collapsedByGroupId,\n onGroupCollapsedChange,\n sidebarCollapsed = false,\n } = input;\n\n const groups = resolveSidebarGroups(entities, sidebar);\n const entries = Object.entries(groups);\n const pinnedSet = new Set(pinnedEntityIds);\n const pinLabel = t('sidebar.actions.pin');\n const unpinLabel = t('sidebar.actions.unpin');\n const reorderLabel = t('sidebar.actions.reorder');\n const entityGroupLookup = buildEntityGroupLookup(groups, sidebar);\n const normalizedQuery = searchQuery?.trim().toLowerCase() ?? '';\n\n const labelMatchesQuery = (label: string): boolean => {\n return (\n normalizedQuery === '' || label.toLowerCase().includes(normalizedQuery)\n );\n };\n\n const renderPinAction = (entityId: string): ReactNode | null => {\n if (onTogglePin == null) {\n return null;\n }\n const isPinned = pinnedSet.has(entityId);\n let label = pinLabel;\n let Icon = PinSvg;\n if (isPinned) {\n label = unpinLabel;\n Icon = PinFilledSvg;\n }\n\n return (\n <button\n type=\"button\"\n className={styles.actionButton}\n aria-pressed={isPinned}\n aria-label={label}\n title={label}\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onTogglePin(entityId);\n }}\n >\n <Icon width={14} height={14} aria-hidden=\"true\" />\n </button>\n );\n };\n\n const buildDashboardItem = (\n inputItem?: {\n id?: string;\n icon?: BackofficeIconComponent;\n label?: string;\n },\n groupId?: string,\n ): SidebarNavSectionItem | null => {\n const dashboardId = inputItem?.id ?? 'dashboard';\n const dashboardDescriptor: BackofficeSidebarItemDescriptor = {\n kind: 'dashboard',\n id: dashboardId,\n };\n const isDashboardVisible = sidebar?.isItemVisible?.(\n dashboardDescriptor,\n permissions,\n );\n if (isDashboardVisible === false) {\n return null;\n }\n\n const registration = findBackofficeDashboardRegistration(\n dashboards,\n dashboardId,\n );\n let label = inputItem?.label;\n if (label == null && registration != null) {\n label = resolveLabel(registration.label, tApp);\n }\n label ??= t('sidebar.items.dashboard');\n if (!labelMatchesQuery(label)) {\n return null;\n }\n\n let href = basePath;\n let id = 'dashboard';\n if (dashboardId !== 'dashboard') {\n href = joinBackofficePath(basePath, `dashboard/${dashboardId}`);\n id = `dashboard-${dashboardId}`;\n }\n\n let isActive = isActivePath(pathname, href);\n if (dashboardId === 'dashboard') {\n isActive = pathname === basePath || pathname === `${basePath}/dashboard`;\n }\n\n return {\n id,\n data: {\n kind: 'dashboard',\n id: dashboardId,\n groupId,\n },\n label,\n href,\n icon: renderIcon(\n inputItem?.icon ?? registration?.icon,\n <SidebarHomeSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive,\n ariaLabel: label,\n };\n };\n\n const buildEntityItem = (inputItem: {\n entityId: string;\n groupId?: string;\n groupIcon?: BackofficeIconComponent;\n itemIcon?: BackofficeIconComponent;\n itemLabel?: string;\n enableReorder?: boolean;\n }): SidebarNavSectionItem | null => {\n const { entityId, groupId, groupIcon, itemIcon, itemLabel, enableReorder } =\n inputItem;\n const config = entities[entityId];\n if (config == null) {\n return null;\n }\n\n let descriptor: BackofficeSidebarItemDescriptor = {\n kind: 'entity',\n id: entityId,\n };\n if (config.kind === 'tool') {\n descriptor = { kind: 'tool', id: entityId };\n }\n const isEntityVisible = sidebar?.isItemVisible?.(descriptor, permissions);\n if (isEntityVisible === false) {\n return null;\n }\n\n if (config.kind === 'tool') {\n const label = itemLabel ?? resolveLabel(config.label, tApp);\n if (\n normalizedQuery !== '' &&\n !label.toLowerCase().includes(normalizedQuery)\n ) {\n return null;\n }\n return {\n id: `tool-${entityId}`,\n data: {\n kind: 'tool',\n id: entityId,\n groupId,\n },\n label,\n href: config.routes.list,\n icon: renderIcon(\n itemIcon ?? groupIcon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive: isActivePath(pathname, config.routes.list),\n ariaLabel: label,\n actionSlot: renderPinAction(entityId),\n };\n }\n\n if (!config.hasList) {\n return null;\n }\n\n const label = itemLabel ?? resolveLabel(config.label, tApp);\n if (\n normalizedQuery !== '' &&\n !label.toLowerCase().includes(normalizedQuery)\n ) {\n return null;\n }\n\n let dragHandleSlot: ReactNode | undefined;\n if (enableReorder === true && onReorderPin != null) {\n dragHandleSlot = (\n <GripDotsSvg width={14} height={14} aria-hidden=\"true\" />\n );\n }\n\n let dragHandleLabel: string | undefined;\n if (dragHandleSlot != null) {\n dragHandleLabel = reorderLabel;\n }\n\n return {\n id: entityId,\n data: {\n kind: 'entity',\n id: entityId,\n groupId,\n },\n label,\n href: config.routes.list,\n icon: renderIcon(\n itemIcon ?? groupIcon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive: isActivePath(pathname, config.routes.list),\n ariaLabel: label,\n actionSlot: renderPinAction(entityId),\n dragHandleSlot,\n dragHandleLabel,\n };\n };\n\n const buildHubItem = (inputItem: {\n hub: ReturnType<typeof resolveSidebarHub>;\n groupId?: string;\n icon?: BackofficeIconComponent;\n }): SidebarNavSectionItem | null => {\n const { hub, groupId, icon } = inputItem;\n const descriptor: BackofficeSidebarItemDescriptor = {\n kind: 'hub',\n id: hub.id,\n };\n const isVisible = sidebar?.isItemVisible?.(descriptor, permissions);\n if (isVisible === false) {\n return null;\n }\n const childEntityIds = resolveHubEntityIds(hub);\n const visibleChildConfigs = childEntityIds\n .map((entityId) => {\n return entities[entityId] ?? null;\n })\n .filter((config): config is BackofficeEntityManifestMap[string] => {\n if (config == null) {\n return false;\n }\n let childKind: BackofficeSidebarItemDescriptor['kind'] = 'entity';\n if (config.kind === 'tool') {\n childKind = 'tool';\n }\n const childDescriptor: BackofficeSidebarItemDescriptor = {\n kind: childKind,\n id: config.id,\n };\n const isChildVisible = sidebar?.isItemVisible?.(\n childDescriptor,\n permissions,\n );\n if (isChildVisible === false) {\n return false;\n }\n if (config.kind !== 'tool' && !config.hasList) {\n return false;\n }\n return true;\n });\n if (childEntityIds.length > 0 && visibleChildConfigs.length === 0) {\n return null;\n }\n const label = resolveLabel(hub.title, tApp);\n const matchesHub = labelMatchesQuery(label);\n const matchesChild = visibleChildConfigs.some((config) => {\n return labelMatchesQuery(resolveLabel(config.label, tApp));\n });\n if (!matchesHub && !matchesChild) {\n return null;\n }\n const isActive =\n isActivePath(pathname, hub.href) ||\n visibleChildConfigs.some((config) => {\n return isActivePath(pathname, config.routes.list);\n });\n return {\n id: `hub-${hub.id}`,\n data: {\n kind: 'hub',\n id: hub.id,\n groupId,\n },\n label,\n href: hub.href,\n icon: renderIcon(\n icon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive,\n ariaLabel: label,\n };\n };\n\n const sections: AdminSidebarSection[] = [];\n\n const primaryItems = sidebar?.primaryItems ?? [];\n if (primaryItems.length > 0) {\n const primarySectionItems = primaryItems\n .map((primaryItem): SidebarNavSectionItem | null => {\n if (primaryItem.kind === 'dashboard') {\n let itemLabel: string | undefined;\n if (primaryItem.label != null) {\n itemLabel = resolveLabel(primaryItem.label, tApp);\n }\n return buildDashboardItem({\n id: primaryItem.id,\n icon: primaryItem.icon,\n label: itemLabel,\n });\n }\n if (primaryItem.kind === 'hub') {\n const hub = resolveSidebarHub(primaryItem, sidebar);\n return buildHubItem({\n hub,\n icon: primaryItem.icon,\n });\n }\n let itemLabel: string | undefined;\n if (primaryItem.label != null) {\n itemLabel = resolveLabel(primaryItem.label, tApp);\n }\n return buildEntityItem({\n entityId: primaryItem.id,\n itemIcon: primaryItem.icon,\n itemLabel,\n });\n })\n .filter((item): item is SidebarNavSectionItem => {\n return item != null;\n });\n\n if (primarySectionItems.length > 0) {\n sections.push({\n id: 'primary',\n items: primarySectionItems,\n collapsible: false,\n });\n }\n }\n\n if (pinnedEntityIds.length > 0) {\n const pinnedItems = pinnedEntityIds\n .map((entityId) => {\n const groupMeta = entityGroupLookup.get(entityId);\n return buildEntityItem({\n entityId,\n groupId: groupMeta?.groupId,\n groupIcon: groupMeta?.groupIcon,\n itemIcon: groupMeta?.itemIcon,\n enableReorder: true,\n });\n })\n .filter((item): item is SidebarNavSectionItem => {\n return item != null;\n });\n\n if (pinnedItems.length > 0) {\n let reorder: AdminSidebarSection['reorder'];\n if (onReorderPin != null && pinnedItems.length > 1) {\n reorder = {\n enabled: true,\n onReorder: onReorderPin,\n };\n }\n let sectionItems = pinnedItems;\n if (reorder == null) {\n sectionItems = pinnedItems.map((item) => {\n const { dragHandleSlot, dragHandleLabel, ...rest } = item;\n return rest;\n });\n }\n\n sections.push({\n id: 'pinned',\n title: t('sidebar.sections.pinned'),\n icon: renderIcon(\n undefined,\n <PinSvg width={16} height={16} aria-hidden=\"true\" />,\n ),\n items: sectionItems,\n collapsible: false,\n reorder,\n });\n }\n }\n\n if (recentItems.length > 0) {\n const recentSectionItems = recentItems\n .map((recentItem): SidebarNavSectionItem | null => {\n const config = entities[recentItem.id];\n if (config == null) {\n return null;\n }\n const descriptor: BackofficeSidebarItemDescriptor = {\n kind: recentItem.kind,\n id: recentItem.id,\n };\n const isVisible = sidebar?.isItemVisible?.(descriptor, permissions);\n if (isVisible === false) {\n return null;\n }\n if (\n normalizedQuery !== '' &&\n !recentItem.label.toLowerCase().includes(normalizedQuery)\n ) {\n return null;\n }\n const groupMeta = entityGroupLookup.get(recentItem.id);\n return {\n id: `recent-${recentItem.kind}-${recentItem.id}`,\n data: {\n kind: recentItem.kind,\n id: recentItem.id,\n groupId: groupMeta?.groupId,\n },\n label: recentItem.label,\n href: recentItem.href,\n icon: renderIcon(\n groupMeta?.itemIcon ?? groupMeta?.groupIcon,\n <SidebarTasksSvg width={18} height={18} aria-hidden=\"true\" />,\n ),\n isActive: isActivePath(pathname, recentItem.href),\n ariaLabel: recentItem.label,\n } satisfies SidebarNavSectionItem;\n })\n .filter((item): item is SidebarNavSectionItem => {\n return item != null;\n });\n\n if (recentSectionItems.length > 0) {\n sections.push({\n id: 'recent',\n title: t('sidebar.sections.recent'),\n icon: renderIcon(\n undefined,\n <BackofficeSidebarHistorySvg\n width={16}\n height={16}\n aria-hidden=\"true\"\n />,\n ),\n items: recentSectionItems,\n collapsible: false,\n });\n }\n }\n\n entries.forEach(([groupId, group]) => {\n if (group.isVisible != null && !group.isVisible(permissions)) {\n return;\n }\n\n const items: SidebarNavSectionItem[] = [];\n\n const groupItems = resolveGroupItems(group);\n if (groupItems.length > 0) {\n groupItems.forEach((groupItem) => {\n if (groupItem.kind === 'dashboard') {\n let itemLabel: string | undefined;\n if (groupItem.label != null) {\n itemLabel = resolveLabel(groupItem.label, tApp);\n }\n const item = buildDashboardItem(\n {\n id: groupItem.id,\n icon: groupItem.icon ?? group.icon,\n label: itemLabel,\n },\n groupId,\n );\n if (item != null) {\n items.push(item);\n }\n return;\n }\n if (groupItem.kind === 'hub') {\n const hub = resolveSidebarHub(groupItem, sidebar);\n const item = buildHubItem({\n hub,\n groupId,\n icon: groupItem.icon ?? group.icon,\n });\n if (item != null) {\n items.push(item);\n }\n return;\n }\n let itemLabel: string | undefined;\n if (groupItem.label != null) {\n itemLabel = resolveLabel(groupItem.label, tApp);\n }\n const item = buildEntityItem({\n entityId: groupItem.id,\n groupId,\n groupIcon: group.icon,\n itemIcon: groupItem.icon,\n itemLabel,\n });\n if (item != null) {\n items.push(item);\n }\n });\n }\n\n let sectionItems: SidebarNavSectionItem[] = items;\n if (sidebarCollapsed && group.behavior?.showInCollapsedRail !== true) {\n sectionItems = items.filter((item) => {\n return item.data?.kind === 'dashboard' || item.isActive === true;\n });\n }\n\n if (sectionItems.length === 0) {\n return;\n }\n\n let title: string | undefined;\n if (group.title != null) {\n title = resolveLabel(group.title, tApp);\n }\n\n const isCollapsed = collapsedByGroupId?.[groupId];\n let onCollapsedChange: ((collapsed: boolean) => void) | undefined;\n if (onGroupCollapsedChange != null) {\n onCollapsedChange = (collapsed: boolean) => {\n onGroupCollapsedChange(groupId, collapsed);\n };\n }\n\n sections.push({\n id: groupId,\n title,\n icon: renderIcon(group.icon, undefined, 16),\n items: sectionItems,\n collapsible: group.behavior?.collapsible ?? true,\n defaultCollapsed: group.behavior?.defaultCollapsed ?? true,\n isCollapsed,\n onCollapsedChange,\n });\n });\n\n return sections;\n}\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ var i = ({ icon: i, label: a, showIcon: o = !0, endAdornment: s }) => /* @__PURE
|
|
|
5
5
|
className: e,
|
|
6
6
|
children: [
|
|
7
7
|
o && i != null && /* @__PURE__ */ n("span", {
|
|
8
|
-
className: "
|
|
8
|
+
className: "txvbqbdsb txvbqbey txvbqbjtp txvbqb198j txvbqbdyg txvbqb18dc txvbqbiir",
|
|
9
9
|
"aria-hidden": "true",
|
|
10
10
|
children: /* @__PURE__ */ n(i, {
|
|
11
11
|
width: 14,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/links/backofficeLink.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbdsb txvbqbey txvbqbfet", t = "txvbqbdsb txvbqbey txvbqbjtp txvbqb198j txvbqbdyg txvbqb18dc txvbqbiir", n = "txvbqbt9i";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { e as content, t as icon, n as label };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backofficeLink.css.js","names":[],"sources":["../../../../../src/components/backoffice/links/backofficeLink.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\
|
|
1
|
+
{"version":3,"file":"backofficeLink.css.js","names":[],"sources":["../../../../../src/components/backoffice/links/backofficeLink.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\n\nconst INLINE_FLEX = 'inline-flex' as const;\n\nexport const content = sprinkles({\n display: INLINE_FLEX,\n alignItems: 'center',\n gap: 1,\n});\n\nexport const icon = sprinkles({\n display: INLINE_FLEX,\n alignItems: 'center',\n justifyContent: 'center',\n color: 'current',\n flex: 'none',\n width: 3.5,\n height: 3.5,\n});\n\nexport const label = sprinkles({\n minWidth: 0,\n});\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* empty css */
|
|
2
2
|
//#region src/components/backoffice/list/RowFlagsCell.css.ts
|
|
3
|
-
var e = "
|
|
3
|
+
var e = "txvbqbyns txvbqbzld txvbqb10il txvbqbvuo txvbqbjtp", t = "txvbqbdsb txvbqbey txvbqbjtp txvbqbga8 txvbqb17w0", n = "qbwcuex qbwcuer txvbqbdsb txvbqbey txvbqbjtp txvbqbf7y txvbqbm67 qbwcue11 qbwcuev txvbqb17in txvbqbho2 txvbqbtce txvbqbscn";
|
|
4
4
|
//#endregion
|
|
5
5
|
export { t as container, n as flag, e as rowFlagsColumnCell };
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RowFlagsCell.css.js","names":[],"sources":["../../../../../src/components/backoffice/list/RowFlagsCell.css.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"RowFlagsCell.css.js","names":[],"sources":["../../../../../src/components/backoffice/list/RowFlagsCell.css.ts"],"sourcesContent":["import { sprinkles } from '@plumile/ui/theme/sprinkles.css.js';\nimport { iconBox } from '@plumile/ui/theme/styleRecipes.css.js';\n\nexport const rowFlagsColumnCell = sprinkles({\n justifyContent: 'center',\n paddingX: 1,\n paddingY: 0,\n});\n\nexport const container = sprinkles({\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n gap: 1.5,\n width: 'full',\n});\n\nexport const flag = iconBox({ size: 'lg' });\n"],"mappings":""}
|