@okta/odyssey-react-mui 1.41.1 → 1.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/cjs/Select.cjs +1 -1
  2. package/dist/cjs/Select.cjs.map +1 -1
  3. package/dist/cjs/createContrastColors.cjs +6 -2
  4. package/dist/cjs/createContrastColors.cjs.map +1 -1
  5. package/dist/cjs/getLogicalBoundaries.cjs +33 -0
  6. package/dist/cjs/getLogicalBoundaries.cjs.map +1 -0
  7. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs +15 -4
  8. package/dist/cjs/labs/PageTemplate/PageTemplate.cjs.map +1 -1
  9. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs +137 -0
  10. package/dist/cjs/properties/ts/odyssey-react-mui_eu.cjs.map +1 -0
  11. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs +0 -1
  12. package/dist/cjs/ui-shell/NarrowUiShellContent.cjs.map +1 -1
  13. package/dist/cjs/ui-shell/SideNav/SideNav.cjs +23 -18
  14. package/dist/cjs/ui-shell/SideNav/SideNav.cjs.map +1 -1
  15. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs +4 -3
  16. package/dist/cjs/ui-shell/SideNav/SideNavItemLinkContent.cjs.map +1 -1
  17. package/dist/cjs/ui-shell/UiShell.cjs +2 -0
  18. package/dist/cjs/ui-shell/UiShell.cjs.map +1 -1
  19. package/dist/cjs/ui-shell/UiShellProvider.cjs +6 -1
  20. package/dist/cjs/ui-shell/UiShellProvider.cjs.map +1 -1
  21. package/dist/cjs/ui-shell/renderUiShell.cjs +2 -0
  22. package/dist/cjs/ui-shell/renderUiShell.cjs.map +1 -1
  23. package/dist/cjs/ui-shell/useElementAtContainerEdge.cjs +74 -0
  24. package/dist/cjs/ui-shell/useElementAtContainerEdge.cjs.map +1 -0
  25. package/dist/cjs/useMountLifecycleEffect.cjs +3 -3
  26. package/dist/cjs/useMountLifecycleEffect.cjs.map +1 -1
  27. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs +1 -1
  28. package/dist/cjs/web-component/odysseyWebComponentVersion.generated.cjs.map +1 -1
  29. package/dist/esm/Select.js +1 -1
  30. package/dist/esm/Select.js.map +1 -1
  31. package/dist/esm/createContrastColors.js +6 -2
  32. package/dist/esm/createContrastColors.js.map +1 -1
  33. package/dist/esm/getLogicalBoundaries.js +26 -0
  34. package/dist/esm/getLogicalBoundaries.js.map +1 -0
  35. package/dist/esm/labs/PageTemplate/PageTemplate.js +16 -5
  36. package/dist/esm/labs/PageTemplate/PageTemplate.js.map +1 -1
  37. package/dist/esm/properties/ts/odyssey-react-mui_eu.js +131 -0
  38. package/dist/esm/properties/ts/odyssey-react-mui_eu.js.map +1 -0
  39. package/dist/esm/ui-shell/NarrowUiShellContent.js +0 -1
  40. package/dist/esm/ui-shell/NarrowUiShellContent.js.map +1 -1
  41. package/dist/esm/ui-shell/SideNav/SideNav.js +23 -18
  42. package/dist/esm/ui-shell/SideNav/SideNav.js.map +1 -1
  43. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js +4 -3
  44. package/dist/esm/ui-shell/SideNav/SideNavItemLinkContent.js.map +1 -1
  45. package/dist/esm/ui-shell/UiShell.js +2 -0
  46. package/dist/esm/ui-shell/UiShell.js.map +1 -1
  47. package/dist/esm/ui-shell/UiShellProvider.js +6 -1
  48. package/dist/esm/ui-shell/UiShellProvider.js.map +1 -1
  49. package/dist/esm/ui-shell/renderUiShell.js +2 -0
  50. package/dist/esm/ui-shell/renderUiShell.js.map +1 -1
  51. package/dist/esm/ui-shell/useElementAtContainerEdge.js +68 -0
  52. package/dist/esm/ui-shell/useElementAtContainerEdge.js.map +1 -0
  53. package/dist/esm/useMountLifecycleEffect.js +3 -3
  54. package/dist/esm/useMountLifecycleEffect.js.map +1 -1
  55. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js +1 -1
  56. package/dist/esm/web-component/odysseyWebComponentVersion.generated.js.map +1 -1
  57. package/dist/index.cjs +1 -1
  58. package/dist/index.d.ts +1 -1
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +25 -0
  61. package/dist/index.mjs +1 -1
  62. package/dist/index.scss +1 -1
  63. package/dist/tsconfig.production.tsbuildinfo +1 -1
  64. package/dist/tsconfig.tsbuildinfo +1 -0
  65. package/dist/types/Select.d.ts.map +1 -1
  66. package/dist/types/createContrastColors.d.ts +5 -1
  67. package/dist/types/createContrastColors.d.ts.map +1 -1
  68. package/dist/types/getLogicalBoundaries.d.ts +24 -0
  69. package/dist/types/getLogicalBoundaries.d.ts.map +1 -0
  70. package/dist/types/labs/PageTemplate/PageTemplate.d.ts.map +1 -1
  71. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts +131 -0
  72. package/dist/types/properties/ts/odyssey-react-mui_eu.d.ts.map +1 -0
  73. package/dist/types/ui-shell/NarrowUiShellContent.d.ts.map +1 -1
  74. package/dist/types/ui-shell/SideNav/SideNav.d.ts.map +1 -1
  75. package/dist/types/ui-shell/SideNav/SideNavItemLinkContent.d.ts.map +1 -1
  76. package/dist/types/ui-shell/UiShell.d.ts +1 -1
  77. package/dist/types/ui-shell/UiShell.d.ts.map +1 -1
  78. package/dist/types/ui-shell/UiShellProvider.d.ts +10 -4
  79. package/dist/types/ui-shell/UiShellProvider.d.ts.map +1 -1
  80. package/dist/types/ui-shell/renderUiShell.d.ts +2 -2
  81. package/dist/types/ui-shell/renderUiShell.d.ts.map +1 -1
  82. package/dist/types/ui-shell/useElementAtContainerEdge.d.ts +43 -0
  83. package/dist/types/ui-shell/useElementAtContainerEdge.d.ts.map +1 -0
  84. package/dist/types/web-component/odysseyWebComponentVersion.generated.d.ts +1 -1
  85. package/package.json +6 -6
@@ -0,0 +1,131 @@
1
+ export const translation = {
2
+ "navigation.label": "Nabigazio nagusia",
3
+ "navigation.footer": "Bigarren mailako nabigazio-estekak",
4
+ "navigation.drag.handle": "Arrastatu heldulekua",
5
+ "sortable.list.drag.start": "Arrasta daitekeen {{activeId}} elementua hartu da",
6
+ "sortable.list.drag.moved.over": "Arrasta daitekeen {{activeId}} elementua aska daitekeen {{overId}} eremuaren gainetik mugitu da",
7
+ "sortable.list.drag.nolonger.over": "Arrasta daitekeen {{activeId}} elementua ez dago jada aska daitekeen eremu baten gainean",
8
+ "sortable.list.drag.end.dropped.over": "Arrasta daitekeen {{activeId}} elementua aska daitekeen {{overId}} eremuaren gainean askatu da",
9
+ "sortable.list.drag.end.dropped": "Arrasta daitekeen {{activeId}} elementua askatu da",
10
+ "sortable.list.drag.cancel": "Bertan behera utzi da arrastatzeko prozesua. Arrasta daitekeen moduko {{activeId}} elementua askatu da",
11
+ "breadcrumbs.home.text": "Etxea",
12
+ "breadcrumbs.label.text": "Ogi-apurrak",
13
+ "close.text": "Itxi",
14
+ "clear.text": "Garbitu",
15
+ "open.text": "Ireki",
16
+ "autocomplete.nooptions": "Aukerarik ez",
17
+ "picker.calendar.navigation.nextmonth": "Hurrengo hilabetea",
18
+ "picker.calendar.navigation.previousmonth": "Aurreko hilabetea",
19
+ "picker.date.toolbar.title": "Hautatutako data",
20
+ "picker.daterange.toolbar.title": "Hautatu data-tartea",
21
+ "picker.datetime.toolbar.title": "Hautatu data eta ordua",
22
+ "picker.error.invalid": "Zuzendu dataren formatua edo hautatu data egutegitik.",
23
+ "picker.error.mindate": "Idatzitako data baimendutako datak baino lehenagokoa da. Hautatu data bat egutegian eskuragarri dagoen tartetik.",
24
+ "picker.error.maxdate": "Idatzitako data baimendutako datak baino geroagokoa da. Hautatu data bat egutegian eskuragarri dagoen tartetik.",
25
+ "picker.field.placeholder.day": "EE",
26
+ "picker.field.placeholder.hours": "hh",
27
+ "picker.field.placeholder.meridiem": "aa",
28
+ "picker.field.placeholder.minutes": "mm",
29
+ "picker.field.placeholder.month": "HH",
30
+ "picker.field.placeholder.seconds": "ss",
31
+ "picker.field.placeholder.year": "UUUU",
32
+ "picker.labels.action.apply": "Aplikatu",
33
+ "picker.labels.action.cancel": "Utzi",
34
+ "picker.labels.action.today": "Gaur",
35
+ "picker.labels.clock.empty": "Ez da ordurik hautatu",
36
+ "picker.labels.clock.hours": "ordu",
37
+ "picker.labels.clock.minutes": "minutu",
38
+ "picker.labels.clock.seconds": "segundo",
39
+ "picker.labels.clock.selected": "Hau da hautatutako ordua:",
40
+ "picker.labels.date.choose": "Aukeratu data",
41
+ "picker.labels.date.selected": "Hau da hautatutako data:",
42
+ "picker.labels.empty": "Hutsik",
43
+ "picker.labels.field.clear": "Garbitu balioa",
44
+ "picker.labels.range.end": "Amaiera",
45
+ "picker.labels.range.enddate": "Amaiera-data",
46
+ "picker.labels.range.endtime": "Amaiera-ordua",
47
+ "picker.labels.range.start": "Hasiera",
48
+ "picker.labels.range.startdate": "Hasiera-data",
49
+ "picker.labels.range.starttime": "Hasiera-ordua",
50
+ "picker.labels.select": "Hautatu",
51
+ "picker.labels.table.date": "aukeratu data",
52
+ "picker.labels.table.time": "aukeratu ordua",
53
+ "picker.labels.time.choose": "Aukeratu ordua",
54
+ "picker.labels.time.selected": "hau da hautatutako ordua:",
55
+ "picker.time.toolbar.title": "Hautatu ordua",
56
+ "picker.view.name.day": "Eguna",
57
+ "picker.view.name.hours": "Orduak",
58
+ "picker.view.name.meridiem": "Meridiem",
59
+ "picker.view.name.minutes": "Minutuak",
60
+ "picker.view.name.month": "Hilabetea",
61
+ "picker.view.name.seconds": "Segundoak",
62
+ "picker.view.name.weekday": "Asteko eguna",
63
+ "picker.view.name.year": "Urtea",
64
+ "picker.view.navigation.open.nextview": "Ireki hurrengo ikuspegia",
65
+ "picker.view.navigation.open.previousview": "Ireki aurreko ikuspegia",
66
+ "picker.view.navigation.switch.calendarview": "urteko ikuspegia irekita dago, aldatu egutegiaren ikuspegira",
67
+ "picker.view.navigation.switch.yearview": "egutegiaren ikuspegia irekita dago, aldatu urteko ikuspegira",
68
+ "fielderror.screenreader.text": "Errorea",
69
+ "fieldlabel.optional.text": "Aukerakoa",
70
+ "fieldlabel.required.text": "Beharrezkoa",
71
+ "filters.clear.label": "Garbitu iragazkiak",
72
+ "filters.submit.label": "Bidali",
73
+ "filters.filter.any": "Edozein",
74
+ "filters.filter.clear": "Garbitu iragazkia",
75
+ "filters.filters.arialabel": "Iragazkiak",
76
+ "filters.menuitem.any": "Edozein {{label}}",
77
+ "filters.menuitem.selected": "{{selected}} hautatuta",
78
+ "filters.search.label": "Bilatu",
79
+ "fileupload.button.text": "Gehitu fitxategiak",
80
+ "fileupload.prompt.text": "Arrastatu eta jaregin fitxategiak hemen, edo egin klik fitxategiak gehitzeko",
81
+ "fileupload.removefile.text": "Kendu fitxategia",
82
+ "passwordfield.icon.label.hide": "Ezkutatu pasahitza",
83
+ "passwordfield.icon.label.show": "Erakutsi pasahitza",
84
+ "severity.error": "errorea",
85
+ "severity.info": "informazioa",
86
+ "severity.success": "eginda",
87
+ "severity.warning": "abisua",
88
+ "sidenav.toggle.expand": "Ireki nabigazioa",
89
+ "sidenav.toggle.collapse": "Itxi nabigazioa",
90
+ "switch.active": "Aktibo",
91
+ "switch.inactive": "Inaktibo",
92
+ "table.columnvisibility.arialabel": "Erakutsi/Ezkutatu zutabeak",
93
+ "table.density.arialabel": "Taularen dentsitatea",
94
+ "table.draghandle.arialabel": "Arrastatu errenkada berrantolatzeko. Edo sakatu zuriune-barra edo Sartu tekla berrantolaketa hasteko eta gelditzeko, eta Ihes tekla bertan behera uzteko.",
95
+ "table.draghandle.tooltip": "Arrastatu errenkada edo sakatu zuriune-barra/Sartu tekla berrantolaketa hasteko eta gelditzeko",
96
+ "table.actions": "Ekintzak",
97
+ "table.error": "Errorea datuak kargatzean.",
98
+ "table.fetchedrows.text": "{{totalRows}} errenkada eskuratu da",
99
+ "table.fetchedrows.text_plural": "{{totalRows}} errenkada eskuratu dira guztira",
100
+ "table.moreactions.arialabel": "Ekintza gehiago",
101
+ "table.noresults.heading": "Ez dago emaitzarik.",
102
+ "table.noresults.text": "Saiatu beste kontsulta bat egiten.",
103
+ "table.reorder.backward": "Bidali atzera",
104
+ "table.reorder.forward": "Ekarri aurrera",
105
+ "table.reorder.toback": "Bidali atzera",
106
+ "table.reorder.tofront": "Ekarri aurrera",
107
+ "table.rows.text": "{{totalRows}} errenkada",
108
+ "table.rows.text_plural": "{{totalRows}} errenkada",
109
+ "pagination.label": "Orri-kopurua",
110
+ "pagination.loadmore": "Erakutsi gehiago",
111
+ "pagination.next": "Hurrengo orria",
112
+ "pagination.previous": "Aurreko orria",
113
+ "pagination.page": "Orria",
114
+ "pagination.rowsperpage": "Errenkadak orriko",
115
+ "pagination.rowswithtotal": "{{firstRow}}-{{lastRow}} errenkadak (guztira, {{totalRows}})",
116
+ "pagination.rowswithouttotal": "{{firstRow}}-{{lastRow}} errenkadak",
117
+ "pagination.totalrows": "{{totalRows}} errenkada",
118
+ "table.actions.selectall": "Hautatu guztiak",
119
+ "table.actions.selectnone": "Ez hautatu bat ere ez",
120
+ "table.actions.selectsome": "{{selectedRowCount}} hautatuta",
121
+ "table.rowexpansion.expand": "Zabaldu",
122
+ "table.rowexpansion.expandall": "Zabaldu guztiak",
123
+ "table.rowexpansion.collapse": "Tolestu",
124
+ "table.rowexpansion.collapseall": "Tolestu guztiak",
125
+ "dataview.layout.table": "Taula",
126
+ "dataview.layout.grid": "Sareta",
127
+ "dataview.layout.list": "Zerrenda",
128
+ "topnav.helpicon": "laguntza-orria",
129
+ "topnav.settingsicon": "ezarpenen orria"
130
+ };
131
+ //# sourceMappingURL=odyssey-react-mui_eu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odyssey-react-mui_eu.js","names":["translation"],"sources":["../../../../src/properties/ts/odyssey-react-mui_eu.ts"],"sourcesContent":["export const translation = {\"navigation.label\":\"Nabigazio nagusia\",\"navigation.footer\":\"Bigarren mailako nabigazio-estekak\",\"navigation.drag.handle\":\"Arrastatu heldulekua\",\"sortable.list.drag.start\":\"Arrasta daitekeen {{activeId}} elementua hartu da\",\"sortable.list.drag.moved.over\":\"Arrasta daitekeen {{activeId}} elementua aska daitekeen {{overId}} eremuaren gainetik mugitu da\",\"sortable.list.drag.nolonger.over\":\"Arrasta daitekeen {{activeId}} elementua ez dago jada aska daitekeen eremu baten gainean\",\"sortable.list.drag.end.dropped.over\":\"Arrasta daitekeen {{activeId}} elementua aska daitekeen {{overId}} eremuaren gainean askatu da\",\"sortable.list.drag.end.dropped\":\"Arrasta daitekeen {{activeId}} elementua askatu da\",\"sortable.list.drag.cancel\":\"Bertan behera utzi da arrastatzeko prozesua. Arrasta daitekeen moduko {{activeId}} elementua askatu da\",\"breadcrumbs.home.text\":\"Etxea\",\"breadcrumbs.label.text\":\"Ogi-apurrak\",\"close.text\":\"Itxi\",\"clear.text\":\"Garbitu\",\"open.text\":\"Ireki\",\"autocomplete.nooptions\":\"Aukerarik ez\",\"picker.calendar.navigation.nextmonth\":\"Hurrengo hilabetea\",\"picker.calendar.navigation.previousmonth\":\"Aurreko hilabetea\",\"picker.date.toolbar.title\":\"Hautatutako data\",\"picker.daterange.toolbar.title\":\"Hautatu data-tartea\",\"picker.datetime.toolbar.title\":\"Hautatu data eta ordua\",\"picker.error.invalid\":\"Zuzendu dataren formatua edo hautatu data egutegitik.\",\"picker.error.mindate\":\"Idatzitako data baimendutako datak baino lehenagokoa da. Hautatu data bat egutegian eskuragarri dagoen tartetik.\",\"picker.error.maxdate\":\"Idatzitako data baimendutako datak baino geroagokoa da. Hautatu data bat egutegian eskuragarri dagoen tartetik.\",\"picker.field.placeholder.day\":\"EE\",\"picker.field.placeholder.hours\":\"hh\",\"picker.field.placeholder.meridiem\":\"aa\",\"picker.field.placeholder.minutes\":\"mm\",\"picker.field.placeholder.month\":\"HH\",\"picker.field.placeholder.seconds\":\"ss\",\"picker.field.placeholder.year\":\"UUUU\",\"picker.labels.action.apply\":\"Aplikatu\",\"picker.labels.action.cancel\":\"Utzi\",\"picker.labels.action.today\":\"Gaur\",\"picker.labels.clock.empty\":\"Ez da ordurik hautatu\",\"picker.labels.clock.hours\":\"ordu\",\"picker.labels.clock.minutes\":\"minutu\",\"picker.labels.clock.seconds\":\"segundo\",\"picker.labels.clock.selected\":\"Hau da hautatutako ordua:\",\"picker.labels.date.choose\":\"Aukeratu data\",\"picker.labels.date.selected\":\"Hau da hautatutako data:\",\"picker.labels.empty\":\"Hutsik\",\"picker.labels.field.clear\":\"Garbitu balioa\",\"picker.labels.range.end\":\"Amaiera\",\"picker.labels.range.enddate\":\"Amaiera-data\",\"picker.labels.range.endtime\":\"Amaiera-ordua\",\"picker.labels.range.start\":\"Hasiera\",\"picker.labels.range.startdate\":\"Hasiera-data\",\"picker.labels.range.starttime\":\"Hasiera-ordua\",\"picker.labels.select\":\"Hautatu\",\"picker.labels.table.date\":\"aukeratu data\",\"picker.labels.table.time\":\"aukeratu ordua\",\"picker.labels.time.choose\":\"Aukeratu ordua\",\"picker.labels.time.selected\":\"hau da hautatutako ordua:\",\"picker.time.toolbar.title\":\"Hautatu ordua\",\"picker.view.name.day\":\"Eguna\",\"picker.view.name.hours\":\"Orduak\",\"picker.view.name.meridiem\":\"Meridiem\",\"picker.view.name.minutes\":\"Minutuak\",\"picker.view.name.month\":\"Hilabetea\",\"picker.view.name.seconds\":\"Segundoak\",\"picker.view.name.weekday\":\"Asteko eguna\",\"picker.view.name.year\":\"Urtea\",\"picker.view.navigation.open.nextview\":\"Ireki hurrengo ikuspegia\",\"picker.view.navigation.open.previousview\":\"Ireki aurreko ikuspegia\",\"picker.view.navigation.switch.calendarview\":\"urteko ikuspegia irekita dago, aldatu egutegiaren ikuspegira\",\"picker.view.navigation.switch.yearview\":\"egutegiaren ikuspegia irekita dago, aldatu urteko ikuspegira\",\"fielderror.screenreader.text\":\"Errorea\",\"fieldlabel.optional.text\":\"Aukerakoa\",\"fieldlabel.required.text\":\"Beharrezkoa\",\"filters.clear.label\":\"Garbitu iragazkiak\",\"filters.submit.label\":\"Bidali\",\"filters.filter.any\":\"Edozein\",\"filters.filter.clear\":\"Garbitu iragazkia\",\"filters.filters.arialabel\":\"Iragazkiak\",\"filters.menuitem.any\":\"Edozein {{label}}\",\"filters.menuitem.selected\":\"{{selected}} hautatuta\",\"filters.search.label\":\"Bilatu\",\"fileupload.button.text\":\"Gehitu fitxategiak\",\"fileupload.prompt.text\":\"Arrastatu eta jaregin fitxategiak hemen, edo egin klik fitxategiak gehitzeko\",\"fileupload.removefile.text\":\"Kendu fitxategia\",\"passwordfield.icon.label.hide\":\"Ezkutatu pasahitza\",\"passwordfield.icon.label.show\":\"Erakutsi pasahitza\",\"severity.error\":\"errorea\",\"severity.info\":\"informazioa\",\"severity.success\":\"eginda\",\"severity.warning\":\"abisua\",\"sidenav.toggle.expand\":\"Ireki nabigazioa\",\"sidenav.toggle.collapse\":\"Itxi nabigazioa\",\"switch.active\":\"Aktibo\",\"switch.inactive\":\"Inaktibo\",\"table.columnvisibility.arialabel\":\"Erakutsi/Ezkutatu zutabeak\",\"table.density.arialabel\":\"Taularen dentsitatea\",\"table.draghandle.arialabel\":\"Arrastatu errenkada berrantolatzeko. Edo sakatu zuriune-barra edo Sartu tekla berrantolaketa hasteko eta gelditzeko, eta Ihes tekla bertan behera uzteko.\",\"table.draghandle.tooltip\":\"Arrastatu errenkada edo sakatu zuriune-barra/Sartu tekla berrantolaketa hasteko eta gelditzeko\",\"table.actions\":\"Ekintzak\",\"table.error\":\"Errorea datuak kargatzean.\",\"table.fetchedrows.text\":\"{{totalRows}} errenkada eskuratu da\",\"table.fetchedrows.text_plural\":\"{{totalRows}} errenkada eskuratu dira guztira\",\"table.moreactions.arialabel\":\"Ekintza gehiago\",\"table.noresults.heading\":\"Ez dago emaitzarik.\",\"table.noresults.text\":\"Saiatu beste kontsulta bat egiten.\",\"table.reorder.backward\":\"Bidali atzera\",\"table.reorder.forward\":\"Ekarri aurrera\",\"table.reorder.toback\":\"Bidali atzera\",\"table.reorder.tofront\":\"Ekarri aurrera\",\"table.rows.text\":\"{{totalRows}} errenkada\",\"table.rows.text_plural\":\"{{totalRows}} errenkada\",\"pagination.label\":\"Orri-kopurua\",\"pagination.loadmore\":\"Erakutsi gehiago\",\"pagination.next\":\"Hurrengo orria\",\"pagination.previous\":\"Aurreko orria\",\"pagination.page\":\"Orria\",\"pagination.rowsperpage\":\"Errenkadak orriko\",\"pagination.rowswithtotal\":\"{{firstRow}}-{{lastRow}} errenkadak (guztira, {{totalRows}})\",\"pagination.rowswithouttotal\":\"{{firstRow}}-{{lastRow}} errenkadak\",\"pagination.totalrows\":\"{{totalRows}} errenkada\",\"table.actions.selectall\":\"Hautatu guztiak\",\"table.actions.selectnone\":\"Ez hautatu bat ere ez\",\"table.actions.selectsome\":\"{{selectedRowCount}} hautatuta\",\"table.rowexpansion.expand\":\"Zabaldu\",\"table.rowexpansion.expandall\":\"Zabaldu guztiak\",\"table.rowexpansion.collapse\":\"Tolestu\",\"table.rowexpansion.collapseall\":\"Tolestu guztiak\",\"dataview.layout.table\":\"Taula\",\"dataview.layout.grid\":\"Sareta\",\"dataview.layout.list\":\"Zerrenda\",\"topnav.helpicon\":\"laguntza-orria\",\"topnav.settingsicon\":\"ezarpenen orria\"};"],"mappings":"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","ignoreList":[]}
@@ -64,7 +64,6 @@ const StyledLeftSideContainer = styled("div", {
64
64
  display: isOpen ? "block" : "none",
65
65
  height: "100%",
66
66
  gridArea: "left-side",
67
- overflowY: "auto",
68
67
  position: "absolute",
69
68
  zIndex: UI_SHELL_BASE_Z_INDEX
70
69
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"NarrowUiShellContent.js","names":["styled","memo","useCallback","useEffect","useRef","useState","ErrorBoundary","Button","CloseIcon","MoreIcon","InnerAppContainer","useOdysseyDesignTokens","SideNav","SideNavLogo","HamburgerMenuIcon","useUiShellContext","emptySideNavItems","SIDE_NAV_WIDTH","TOP_NAV_HEIGHT","UI_SHELL_BASE_Z_INDEX","useScrollState","useMatchAppElementToUiShellAppArea","hexToRgb","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","StyledAppContentArea","gridArea","position","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","height","width","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","backgroundColor","overflow","StyledBannersContainer","zIndex","StyledLeftSideContainer","isOpen","overflowY","StyledRightSideContainer","odysseyDesignTokens","HueNeutralWhite","maxWidth","right","StyledMenuLogo","alignItems","gap","Spacing3","StyledLogoContainer","paddingBlock","Spacing4","maxHeight","StyledPageOverlay","HueNeutral900","asFormattedString","replace","left","top","StyledSideNavContainer","StyledUiShellContainer","HueNeutral50","StyledTopNav","isContentScrolled","topNavBackgroundColor","boxShadow","DepthMedium","undefined","clipPath","flexDirection","justifyContent","transition","TransitionDurationMain","TransitionTimingMain","StyledTopNavMenu","minHeight","Spacing2","paddingInline","borderBottomColor","HueNeutral100","borderBottomStyle","BorderStyleMain","borderBottomWidth","BorderWidthMain","StyledTopNavSearch","NarrowUiShellContent","appElement","appElementScrollingMode","hasStandardAppContentPadding","hasSideNavProps","initialVisibleSections","onError","console","error","optionalComponents","sideNavProps","topNavProps","uiShellContext","sideNavContainerRef","topNavContainerRef","uiShellAppAreaRef","isLeftSideMenuOpen","setIsLeftSideMenuOpen","isRightSideMenuOpen","setIsRightSideMenuOpen","closeSideMenus","unsubscribeFromCloseRightSideMenu","subscribeToCloseRightSideMenu","unsubscribeFromSideNavItemClicked","subscribeToCloseSideNavMenu","toggleLeftSideMenu","toggleRightSideMenu","parentContainerRef","paddingMode","uiShellResizableRefs","children","onClick","ref","banners","includes","fallback","sideNavBackgroundColor","isCollapsible","isCollapsed","startIcon","testId","variant","isLoading","_Skeleton","logoProps","rightSideMenu","topNavLeftSide","sideNavItems","appName","hasCustomFooter","sideNavFooter","footerComponent","footerItems","isObtrusive","onCollapse","tabIndex","MemoizedNarrowUiShellContent","displayName"],"sources":["../../../src/ui-shell/NarrowUiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { Skeleton } from \"@mui/material\";\nimport {\n CSSProperties,\n memo,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport { Button } from \"../Buttons/Button.js\";\nimport type { HtmlProps } from \"../HtmlProps.js\";\nimport { CloseIcon } from \"../icons.generated/Close.js\";\nimport { MoreIcon } from \"../icons.generated/More.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { SideNavLogo } from \"./SideNav/SideNavLogo.js\";\nimport { HamburgerMenuIcon } from \"./TopNav/HamburgerMenuIcon.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport {\n UiShellNavComponentProps,\n UiShellContentProps,\n} from \"./uiShellContentTypes.js\";\nimport {\n emptySideNavItems,\n SIDE_NAV_WIDTH,\n TOP_NAV_HEIGHT,\n UI_SHELL_BASE_Z_INDEX,\n} from \"./uiShellSharedConstants.js\";\nimport { useScrollState } from \"./useScrollState.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { hexToRgb } from \"../hexToRgb.js\";\n\nconst StyledAppContentArea = styled(\"div\")({\n gridArea: \"app-content\",\n position: \"relative\",\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"left-side app-container right-side\"\n `,\n gridTemplateColumns: \"auto 1fr auto\",\n gridTemplateRows: \"1fr\",\n height: \"100%\",\n width: \"100%\",\n});\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n gridArea: \"app-container\",\n height: \"100%\",\n overflow: \"hidden\",\n width: \"100%\",\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n});\n\nconst StyledLeftSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"isOpen\",\n})<{\n isOpen: boolean;\n}>(({ isOpen }) => ({\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n gridArea: \"left-side\",\n overflowY: \"auto\",\n position: \"absolute\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledRightSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"isOpen\" && prop !== \"odysseyDesignTokens\",\n})<{\n isOpen: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isOpen, odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n display: isOpen ? \"block\" : \"none\",\n gridArea: \"right-side\",\n height: \"100%\",\n maxWidth: SIDE_NAV_WIDTH,\n overflowY: \"auto\",\n position: \"absolute\",\n right: 0,\n width: SIDE_NAV_WIDTH,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledMenuLogo = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"inline-flex\",\n gap: odysseyDesignTokens.Spacing3,\n}));\n\nconst StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n height: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing4,\n\n \"svg, img\": {\n maxHeight: \"100%\",\n width: \"auto\",\n maxWidth: \"100%\",\n },\n}));\n\nconst StyledPageOverlay = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: hexToRgb(\n odysseyDesignTokens.HueNeutral900,\n ).asFormattedString.replace(/rgb\\((.+)\\)$/, \"rgba($1, 0.26)\"),\n gridArea: \"app-content\",\n height: \"100vh\",\n left: 0,\n position: \"absolute\",\n top: 0,\n width: \"100vw\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledSideNavContainer = styled(\"div\")({\n height: \"100%\", // Without this value, side nav won't fill up the height if the content is too short.\n});\n\nconst StyledUiShellContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"banners\"\n \"top-nav\"\n \"app-content\"\n `,\n gridTemplateColumns: \"1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n overflow: \"hidden\",\n width: \"100vw\",\n}));\n\nconst StyledTopNav = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isContentScrolled\" &&\n prop !== \"topNavBackgroundColor\",\n})<{\n isContentScrolled?: boolean;\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, isContentScrolled, topNavBackgroundColor }) => ({\n alignItems: \"stretch\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite || topNavBackgroundColor, // This logic doesn't make sense, but I wanted to leave it here for when we eventually make a decision on `topNavBackgroundColor`. --Kevin Ghadyani\n boxShadow: isContentScrolled ? odysseyDesignTokens.DepthMedium : undefined,\n clipPath: \"inset(0 0 -100vh 0)\",\n display: \"flex\",\n flexDirection: \"column\",\n gridArea: \"top-nav\",\n height: \"100%\",\n justifyContent: \"center\",\n position: \"relative\",\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledTopNavMenu = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"topNavBackgroundColor\",\n})<{\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, topNavBackgroundColor }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing3,\n height: \"100%\",\n justifyContent: \"space-between\",\n maxHeight: TOP_NAV_HEIGHT,\n minHeight: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n\n ...(topNavBackgroundColor === odysseyDesignTokens.HueNeutralWhite &&\n ({\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n } as CSSProperties)),\n}));\n\nconst StyledTopNavSearch = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n}));\n\nexport type NarrowUiShellContentProps = Pick<HtmlProps, \"testId\"> &\n Pick<UiShellNavComponentProps, \"sideNavProps\" | \"topNavProps\"> &\n UiShellContentProps;\n\nconst NarrowUiShellContent = ({\n appElement,\n appElementScrollingMode,\n hasStandardAppContentPadding = true,\n hasSideNavProps,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: NarrowUiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const [isLeftSideMenuOpen, setIsLeftSideMenuOpen] = useState(false);\n const [isRightSideMenuOpen, setIsRightSideMenuOpen] = useState(false);\n\n const closeSideMenus = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen(false);\n }, []);\n\n useEffect(() => {\n const unsubscribeFromCloseRightSideMenu =\n uiShellContext?.subscribeToCloseRightSideMenu(() => {\n closeSideMenus();\n });\n\n const unsubscribeFromSideNavItemClicked =\n uiShellContext?.subscribeToCloseSideNavMenu(() => {\n closeSideMenus();\n });\n\n return () => {\n unsubscribeFromCloseRightSideMenu?.();\n unsubscribeFromSideNavItemClicked?.();\n };\n }, [closeSideMenus, uiShellContext]);\n\n const toggleLeftSideMenu = useCallback(() => {\n setIsRightSideMenuOpen(false);\n setIsLeftSideMenuOpen((isLeftSideMenuOpen) => !isLeftSideMenuOpen);\n }, []);\n\n const toggleRightSideMenu = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen((isRightSideMenuOpen) => !isRightSideMenuOpen);\n }, []);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"compact\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <>\n {(isLeftSideMenuOpen || isRightSideMenuOpen) && (\n <StyledPageOverlay\n odysseyDesignTokens={odysseyDesignTokens}\n onClick={closeSideMenus}\n />\n )}\n\n <StyledUiShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n {(initialVisibleSections?.includes(\"TopNav\") || topNavProps) && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledTopNav\n isContentScrolled={isContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.topNavBackgroundColor}\n >\n <StyledTopNavMenu\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <StyledMenuLogo odysseyDesignTokens={odysseyDesignTokens}>\n {(sideNavProps?.isCollapsible ||\n !sideNavProps?.isCollapsed) && (\n <Button\n onClick={toggleLeftSideMenu}\n startIcon={<HamburgerMenuIcon />}\n testId=\"sidenav-menu--icon\"\n variant=\"floating\"\n />\n )}\n\n <StyledLogoContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {sideNavProps?.isLoading ? (\n // The skeleton takes the hardcoded dimensions of the Okta logo\n <Skeleton variant=\"rounded\" height={24} width={67} />\n ) : (\n <SideNavLogo {...sideNavProps?.logoProps} />\n )}\n </StyledLogoContainer>\n </StyledMenuLogo>\n\n {optionalComponents?.rightSideMenu && (\n <Button\n onClick={toggleRightSideMenu}\n startIcon={\n isRightSideMenuOpen ? <CloseIcon /> : <MoreIcon />\n }\n testId=\"userprofile-menu--icon\"\n variant=\"floating\"\n />\n )}\n </StyledTopNavMenu>\n\n {optionalComponents?.topNavLeftSide && (\n <StyledTopNavSearch odysseyDesignTokens={odysseyDesignTokens}>\n {optionalComponents?.topNavLeftSide}\n </StyledTopNavSearch>\n )}\n </StyledTopNav>\n </ErrorBoundary>\n )}\n\n <StyledAppContentArea>\n <StyledLeftSideContainer isOpen={isLeftSideMenuOpen}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") &&\n !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledSideNavContainer>\n <SideNav\n {...{\n ...{\n ...sideNavProps,\n // This hides the side nav logo or app name from showing up as we already have one in the narrow top nav.\n appName: undefined,\n logoProps: undefined,\n },\n ...(sideNavProps.hasCustomFooter &&\n optionalComponents?.sideNavFooter\n ? {\n footerComponent: optionalComponents.sideNavFooter,\n footerItems: undefined,\n hasCustomFooter: sideNavProps.hasCustomFooter,\n }\n : {\n footerItems: sideNavProps.footerItems,\n hasCustomFooter: false,\n }),\n }}\n isCollapsed={false}\n isCollapsible={false}\n isObtrusive\n onCollapse={closeSideMenus}\n />\n </StyledSideNavContainer>\n </ErrorBoundary>\n )}\n </StyledLeftSideContainer>\n\n <StyledRightSideContainer\n isOpen={isRightSideMenuOpen}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavContainer>\n {optionalComponents?.rightSideMenu}\n </StyledSideNavContainer>\n </StyledRightSideContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n tabIndex={0}\n ref={uiShellAppAreaRef}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledAppContentArea>\n </StyledUiShellContainer>\n </>\n );\n};\n\nconst MemoizedNarrowUiShellContent = memo(NarrowUiShellContent);\nMemoizedNarrowUiShellContent.displayName = \"NarrowUiShellContent\";\n\nexport { MemoizedNarrowUiShellContent as NarrowUiShellContent };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NarrowUiShellContent.js","names":["styled","memo","useCallback","useEffect","useRef","useState","ErrorBoundary","Button","CloseIcon","MoreIcon","InnerAppContainer","useOdysseyDesignTokens","SideNav","SideNavLogo","HamburgerMenuIcon","useUiShellContext","emptySideNavItems","SIDE_NAV_WIDTH","TOP_NAV_HEIGHT","UI_SHELL_BASE_Z_INDEX","useScrollState","useMatchAppElementToUiShellAppArea","hexToRgb","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","StyledAppContentArea","gridArea","position","display","gridGap","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","height","width","StyledAppContainer","shouldForwardProp","prop","appBackgroundColor","backgroundColor","overflow","StyledBannersContainer","zIndex","StyledLeftSideContainer","isOpen","StyledRightSideContainer","odysseyDesignTokens","HueNeutralWhite","maxWidth","overflowY","right","StyledMenuLogo","alignItems","gap","Spacing3","StyledLogoContainer","paddingBlock","Spacing4","maxHeight","StyledPageOverlay","HueNeutral900","asFormattedString","replace","left","top","StyledSideNavContainer","StyledUiShellContainer","HueNeutral50","StyledTopNav","isContentScrolled","topNavBackgroundColor","boxShadow","DepthMedium","undefined","clipPath","flexDirection","justifyContent","transition","TransitionDurationMain","TransitionTimingMain","StyledTopNavMenu","minHeight","Spacing2","paddingInline","borderBottomColor","HueNeutral100","borderBottomStyle","BorderStyleMain","borderBottomWidth","BorderWidthMain","StyledTopNavSearch","NarrowUiShellContent","appElement","appElementScrollingMode","hasStandardAppContentPadding","hasSideNavProps","initialVisibleSections","onError","console","error","optionalComponents","sideNavProps","topNavProps","uiShellContext","sideNavContainerRef","topNavContainerRef","uiShellAppAreaRef","isLeftSideMenuOpen","setIsLeftSideMenuOpen","isRightSideMenuOpen","setIsRightSideMenuOpen","closeSideMenus","unsubscribeFromCloseRightSideMenu","subscribeToCloseRightSideMenu","unsubscribeFromSideNavItemClicked","subscribeToCloseSideNavMenu","toggleLeftSideMenu","toggleRightSideMenu","parentContainerRef","paddingMode","uiShellResizableRefs","children","onClick","ref","banners","includes","fallback","sideNavBackgroundColor","isCollapsible","isCollapsed","startIcon","testId","variant","isLoading","_Skeleton","logoProps","rightSideMenu","topNavLeftSide","sideNavItems","appName","hasCustomFooter","sideNavFooter","footerComponent","footerItems","isObtrusive","onCollapse","tabIndex","MemoizedNarrowUiShellContent","displayName"],"sources":["../../../src/ui-shell/NarrowUiShellContent.tsx"],"sourcesContent":["/*!\n * Copyright (c) 2022-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport styled from \"@emotion/styled\";\nimport { Skeleton } from \"@mui/material\";\nimport {\n CSSProperties,\n memo,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { ErrorBoundary } from \"react-error-boundary\";\n\nimport { Button } from \"../Buttons/Button.js\";\nimport type { HtmlProps } from \"../HtmlProps.js\";\nimport { CloseIcon } from \"../icons.generated/Close.js\";\nimport { MoreIcon } from \"../icons.generated/More.js\";\nimport { InnerAppContainer } from \"./InnerAppContainer.js\";\nimport {\n DesignTokens,\n useOdysseyDesignTokens,\n} from \"../OdysseyDesignTokensContext.js\";\nimport { SideNav } from \"./SideNav/SideNav.js\";\nimport { SideNavLogo } from \"./SideNav/SideNavLogo.js\";\nimport { HamburgerMenuIcon } from \"./TopNav/HamburgerMenuIcon.js\";\nimport { UiShellColors, useUiShellContext } from \"./UiShellProvider.js\";\nimport {\n UiShellNavComponentProps,\n UiShellContentProps,\n} from \"./uiShellContentTypes.js\";\nimport {\n emptySideNavItems,\n SIDE_NAV_WIDTH,\n TOP_NAV_HEIGHT,\n UI_SHELL_BASE_Z_INDEX,\n} from \"./uiShellSharedConstants.js\";\nimport { useScrollState } from \"./useScrollState.js\";\nimport { useMatchAppElementToUiShellAppArea } from \"./useMatchAppElementToUiShellAppArea.js\";\nimport { hexToRgb } from \"../hexToRgb.js\";\n\nconst StyledAppContentArea = styled(\"div\")({\n gridArea: \"app-content\",\n position: \"relative\",\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"left-side app-container right-side\"\n `,\n gridTemplateColumns: \"auto 1fr auto\",\n gridTemplateRows: \"1fr\",\n height: \"100%\",\n width: \"100%\",\n});\n\nconst StyledAppContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"appBackgroundColor\" && prop !== \"odysseyDesignTokens\",\n})<{\n appBackgroundColor?: UiShellColors[\"appBackgroundColor\"];\n}>(({ appBackgroundColor }) => ({\n backgroundColor: appBackgroundColor,\n gridArea: \"app-container\",\n height: \"100%\",\n overflow: \"hidden\",\n width: \"100%\",\n}));\n\nconst StyledBannersContainer = styled(\"div\")({\n gridArea: \"banners\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n});\n\nconst StyledLeftSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"isOpen\",\n})<{\n isOpen: boolean;\n}>(({ isOpen }) => ({\n display: isOpen ? \"block\" : \"none\",\n height: \"100%\",\n gridArea: \"left-side\",\n position: \"absolute\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledRightSideContainer = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"isOpen\" && prop !== \"odysseyDesignTokens\",\n})<{\n isOpen: boolean;\n odysseyDesignTokens: DesignTokens;\n}>(({ isOpen, odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutralWhite,\n display: isOpen ? \"block\" : \"none\",\n gridArea: \"right-side\",\n height: \"100%\",\n maxWidth: SIDE_NAV_WIDTH,\n overflowY: \"auto\",\n position: \"absolute\",\n right: 0,\n width: SIDE_NAV_WIDTH,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledMenuLogo = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n alignItems: \"center\",\n display: \"inline-flex\",\n gap: odysseyDesignTokens.Spacing3,\n}));\n\nconst StyledLogoContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n height: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing4,\n\n \"svg, img\": {\n maxHeight: \"100%\",\n width: \"auto\",\n maxWidth: \"100%\",\n },\n}));\n\nconst StyledPageOverlay = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: hexToRgb(\n odysseyDesignTokens.HueNeutral900,\n ).asFormattedString.replace(/rgb\\((.+)\\)$/, \"rgba($1, 0.26)\"),\n gridArea: \"app-content\",\n height: \"100vh\",\n left: 0,\n position: \"absolute\",\n top: 0,\n width: \"100vw\",\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledSideNavContainer = styled(\"div\")({\n height: \"100%\", // Without this value, side nav won't fill up the height if the content is too short.\n});\n\nconst StyledUiShellContainer = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n backgroundColor: odysseyDesignTokens.HueNeutral50,\n display: \"grid\",\n gridGap: 0,\n gridTemplateAreas: `\n \"banners\"\n \"top-nav\"\n \"app-content\"\n `,\n gridTemplateColumns: \"1fr\",\n gridTemplateRows: \"auto auto 1fr\",\n height: \"100vh\",\n overflow: \"hidden\",\n width: \"100vw\",\n}));\n\nconst StyledTopNav = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" &&\n prop !== \"isContentScrolled\" &&\n prop !== \"topNavBackgroundColor\",\n})<{\n isContentScrolled?: boolean;\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, isContentScrolled, topNavBackgroundColor }) => ({\n alignItems: \"stretch\",\n backgroundColor: odysseyDesignTokens.HueNeutralWhite || topNavBackgroundColor, // This logic doesn't make sense, but I wanted to leave it here for when we eventually make a decision on `topNavBackgroundColor`. --Kevin Ghadyani\n boxShadow: isContentScrolled ? odysseyDesignTokens.DepthMedium : undefined,\n clipPath: \"inset(0 0 -100vh 0)\",\n display: \"flex\",\n flexDirection: \"column\",\n gridArea: \"top-nav\",\n height: \"100%\",\n justifyContent: \"center\",\n position: \"relative\",\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n zIndex: UI_SHELL_BASE_Z_INDEX,\n}));\n\nconst StyledTopNavMenu = styled(\"div\", {\n shouldForwardProp: (prop) =>\n prop !== \"odysseyDesignTokens\" && prop !== \"topNavBackgroundColor\",\n})<{\n odysseyDesignTokens: DesignTokens;\n topNavBackgroundColor?: UiShellColors[\"topNavBackgroundColor\"];\n}>(({ odysseyDesignTokens, topNavBackgroundColor }) => ({\n alignItems: \"center\",\n display: \"flex\",\n gap: odysseyDesignTokens.Spacing3,\n height: \"100%\",\n justifyContent: \"space-between\",\n maxHeight: TOP_NAV_HEIGHT,\n minHeight: TOP_NAV_HEIGHT,\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n transition: `box-shadow ${odysseyDesignTokens.TransitionDurationMain} ${odysseyDesignTokens.TransitionTimingMain}`,\n\n ...(topNavBackgroundColor === odysseyDesignTokens.HueNeutralWhite &&\n ({\n borderBottomColor: odysseyDesignTokens.HueNeutral100,\n borderBottomStyle: odysseyDesignTokens.BorderStyleMain,\n borderBottomWidth: odysseyDesignTokens.BorderWidthMain,\n } as CSSProperties)),\n}));\n\nconst StyledTopNavSearch = styled(\"div\", {\n shouldForwardProp: (prop) => prop !== \"odysseyDesignTokens\",\n})<{\n odysseyDesignTokens: DesignTokens;\n}>(({ odysseyDesignTokens }) => ({\n paddingBlock: odysseyDesignTokens.Spacing2,\n paddingInline: odysseyDesignTokens.Spacing3,\n}));\n\nexport type NarrowUiShellContentProps = Pick<HtmlProps, \"testId\"> &\n Pick<UiShellNavComponentProps, \"sideNavProps\" | \"topNavProps\"> &\n UiShellContentProps;\n\nconst NarrowUiShellContent = ({\n appElement,\n appElementScrollingMode,\n hasStandardAppContentPadding = true,\n hasSideNavProps,\n initialVisibleSections = [\"TopNav\", \"SideNav\", \"AppSwitcher\"],\n onError = console.error,\n optionalComponents,\n sideNavProps,\n topNavProps,\n}: NarrowUiShellContentProps) => {\n const odysseyDesignTokens = useOdysseyDesignTokens();\n const uiShellContext = useUiShellContext();\n\n const { isContentScrolled } = useScrollState(appElement);\n\n const sideNavContainerRef = useRef<HTMLDivElement>(null);\n const topNavContainerRef = useRef<HTMLDivElement>(null);\n const uiShellAppAreaRef = useRef<HTMLDivElement>(null);\n\n const [isLeftSideMenuOpen, setIsLeftSideMenuOpen] = useState(false);\n const [isRightSideMenuOpen, setIsRightSideMenuOpen] = useState(false);\n\n const closeSideMenus = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen(false);\n }, []);\n\n useEffect(() => {\n const unsubscribeFromCloseRightSideMenu =\n uiShellContext?.subscribeToCloseRightSideMenu(() => {\n closeSideMenus();\n });\n\n const unsubscribeFromSideNavItemClicked =\n uiShellContext?.subscribeToCloseSideNavMenu(() => {\n closeSideMenus();\n });\n\n return () => {\n unsubscribeFromCloseRightSideMenu?.();\n unsubscribeFromSideNavItemClicked?.();\n };\n }, [closeSideMenus, uiShellContext]);\n\n const toggleLeftSideMenu = useCallback(() => {\n setIsRightSideMenuOpen(false);\n setIsLeftSideMenuOpen((isLeftSideMenuOpen) => !isLeftSideMenuOpen);\n }, []);\n\n const toggleRightSideMenu = useCallback(() => {\n setIsLeftSideMenuOpen(false);\n setIsRightSideMenuOpen((isRightSideMenuOpen) => !isRightSideMenuOpen);\n }, []);\n\n const { parentContainerRef } = useMatchAppElementToUiShellAppArea({\n appElement,\n appElementScrollingMode,\n paddingMode: hasStandardAppContentPadding ? \"compact\" : \"none\",\n uiShellAppAreaRef,\n uiShellResizableRefs: [\n sideNavContainerRef,\n topNavContainerRef,\n uiShellAppAreaRef,\n ],\n });\n\n return (\n <>\n {(isLeftSideMenuOpen || isRightSideMenuOpen) && (\n <StyledPageOverlay\n odysseyDesignTokens={odysseyDesignTokens}\n onClick={closeSideMenus}\n />\n )}\n\n <StyledUiShellContainer\n odysseyDesignTokens={odysseyDesignTokens}\n ref={parentContainerRef}\n >\n <StyledBannersContainer>\n {optionalComponents?.banners}\n </StyledBannersContainer>\n\n {(initialVisibleSections?.includes(\"TopNav\") || topNavProps) && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledTopNav\n isContentScrolled={isContentScrolled}\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.topNavBackgroundColor}\n >\n <StyledTopNavMenu\n odysseyDesignTokens={odysseyDesignTokens}\n topNavBackgroundColor={uiShellContext?.sideNavBackgroundColor}\n >\n <StyledMenuLogo odysseyDesignTokens={odysseyDesignTokens}>\n {(sideNavProps?.isCollapsible ||\n !sideNavProps?.isCollapsed) && (\n <Button\n onClick={toggleLeftSideMenu}\n startIcon={<HamburgerMenuIcon />}\n testId=\"sidenav-menu--icon\"\n variant=\"floating\"\n />\n )}\n\n <StyledLogoContainer\n odysseyDesignTokens={odysseyDesignTokens}\n >\n {sideNavProps?.isLoading ? (\n // The skeleton takes the hardcoded dimensions of the Okta logo\n <Skeleton variant=\"rounded\" height={24} width={67} />\n ) : (\n <SideNavLogo {...sideNavProps?.logoProps} />\n )}\n </StyledLogoContainer>\n </StyledMenuLogo>\n\n {optionalComponents?.rightSideMenu && (\n <Button\n onClick={toggleRightSideMenu}\n startIcon={\n isRightSideMenuOpen ? <CloseIcon /> : <MoreIcon />\n }\n testId=\"userprofile-menu--icon\"\n variant=\"floating\"\n />\n )}\n </StyledTopNavMenu>\n\n {optionalComponents?.topNavLeftSide && (\n <StyledTopNavSearch odysseyDesignTokens={odysseyDesignTokens}>\n {optionalComponents?.topNavLeftSide}\n </StyledTopNavSearch>\n )}\n </StyledTopNav>\n </ErrorBoundary>\n )}\n\n <StyledAppContentArea>\n <StyledLeftSideContainer isOpen={isLeftSideMenuOpen}>\n {\n /* If SideNav should be initially visible and we have not yet received props, render SideNav with minimal inputs */\n initialVisibleSections?.includes(\"SideNav\") &&\n !hasSideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <SideNav isLoading sideNavItems={emptySideNavItems} />\n </ErrorBoundary>\n )\n }\n\n {hasSideNavProps && sideNavProps && (\n <ErrorBoundary fallback={null} onError={onError}>\n <StyledSideNavContainer>\n <SideNav\n {...{\n ...{\n ...sideNavProps,\n // This hides the side nav logo or app name from showing up as we already have one in the narrow top nav.\n appName: undefined,\n logoProps: undefined,\n },\n ...(sideNavProps.hasCustomFooter &&\n optionalComponents?.sideNavFooter\n ? {\n footerComponent: optionalComponents.sideNavFooter,\n footerItems: undefined,\n hasCustomFooter: sideNavProps.hasCustomFooter,\n }\n : {\n footerItems: sideNavProps.footerItems,\n hasCustomFooter: false,\n }),\n }}\n isCollapsed={false}\n isCollapsible={false}\n isObtrusive\n onCollapse={closeSideMenus}\n />\n </StyledSideNavContainer>\n </ErrorBoundary>\n )}\n </StyledLeftSideContainer>\n\n <StyledRightSideContainer\n isOpen={isRightSideMenuOpen}\n odysseyDesignTokens={odysseyDesignTokens}\n >\n <StyledSideNavContainer>\n {optionalComponents?.rightSideMenu}\n </StyledSideNavContainer>\n </StyledRightSideContainer>\n\n <StyledAppContainer\n appBackgroundColor={uiShellContext?.appBackgroundColor}\n tabIndex={0}\n ref={uiShellAppAreaRef}\n >\n <InnerAppContainer isContentScrolled={isContentScrolled} />\n </StyledAppContainer>\n </StyledAppContentArea>\n </StyledUiShellContainer>\n </>\n );\n};\n\nconst MemoizedNarrowUiShellContent = memo(NarrowUiShellContent);\nMemoizedNarrowUiShellContent.displayName = \"NarrowUiShellContent\";\n\nexport { MemoizedNarrowUiShellContent as NarrowUiShellContent };\n"],"mappings":"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","ignoreList":[]}
@@ -18,6 +18,7 @@ import { arrayMove } from "@dnd-kit/sortable";
18
18
  import { ErrorBoundary } from "react-error-boundary";
19
19
  import { NavAccordion } from "./NavAccordion.js";
20
20
  import { useOdysseyDesignTokens } from "../../OdysseyDesignTokensContext.js";
21
+ import { useElementAtContainerEdge } from "../useElementAtContainerEdge.js";
21
22
  import { OdysseyThemeProvider } from "../../OdysseyThemeProvider.js";
22
23
  import { SideNavHeader } from "./SideNavHeader.js";
23
24
  import { SideNavItemContent, StyledSideNavListItem } from "./SideNavItemContent.js";
@@ -68,10 +69,10 @@ const StyledOpacityTransitionContainer = styled("div", {
68
69
  })
69
70
  }));
70
71
  const StyledSideNavContainer = styled("nav", {
71
- shouldForwardProp: prop => prop !== "backgroundColor" && prop !== "hasNeighboringContent" && prop !== "isAppContentWhiteBackground" && prop !== "isSideNavCollapsed" && prop !== "isSideNavToggleHighlighted" && prop !== "odysseyDesignTokens"
72
+ shouldForwardProp: prop => prop !== "backgroundColor" && prop !== "hasNeighbouringContentAtInlineStart" && prop !== "isAppContentWhiteBackground" && prop !== "isSideNavCollapsed" && prop !== "isSideNavToggleHighlighted" && prop !== "odysseyDesignTokens"
72
73
  })(({
73
74
  backgroundColor,
74
- hasNeighboringContent,
75
+ hasNeighbouringContentAtInlineStart,
75
76
  isAppContentWhiteBackground,
76
77
  isSideNavCollapsed,
77
78
  isSideNavToggleHighlighted,
@@ -100,8 +101,8 @@ const StyledSideNavContainer = styled("nav", {
100
101
  "&::after": {
101
102
  backgroundColor: odysseyDesignTokens.HueNeutral200,
102
103
  opacity: isSideNavCollapsed ? 1 : 0,
103
- transform: isSideNavCollapsed && !hasNeighboringContent ? isSideNavToggleHighlighted ? `translateX(calc(100% - (${odysseyDesignTokens.BorderWidthMain} * 2)))` : `translateX(calc(100% - ${SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px))` : "translateX(0)",
104
- width: hasNeighboringContent ? 0 : `calc(${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px + ${odysseyDesignTokens.BorderWidthMain} * 2)`,
104
+ transform: isSideNavCollapsed && !hasNeighbouringContentAtInlineStart ? isSideNavToggleHighlighted ? `translateX(calc(100% - (${odysseyDesignTokens.BorderWidthMain} * 2)))` : `translateX(calc(100% - ${SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px))` : "translateX(0)",
105
+ width: hasNeighbouringContentAtInlineStart ? 0 : `calc(${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px + ${odysseyDesignTokens.BorderWidthMain} * 2)`,
105
106
  ...(isSideNavCollapsed && isSideNavToggleHighlighted ? {
106
107
  borderRightColor: odysseyDesignTokens.BorderColorPrimaryControl,
107
108
  borderRightStyle: odysseyDesignTokens.BorderStyleMain,
@@ -110,9 +111,9 @@ const StyledSideNavContainer = styled("nav", {
110
111
  }
111
112
  }));
112
113
  const StyledSideNavToggleButtonContainer = styled("div", {
113
- shouldForwardProp: prop => prop !== "hasNeighboringContent" && prop !== "isSideNavCollapsed" && prop !== "isSideNavToggleHighlighted" && prop !== "odysseyDesignTokens"
114
+ shouldForwardProp: prop => prop !== "hasNeighbouringContentAtInlineStart" && prop !== "isSideNavCollapsed" && prop !== "isSideNavToggleHighlighted" && prop !== "odysseyDesignTokens"
114
115
  })(({
115
- hasNeighboringContent,
116
+ hasNeighbouringContentAtInlineStart,
116
117
  isSideNavCollapsed,
117
118
  isSideNavToggleHighlighted,
118
119
  odysseyDesignTokens
@@ -120,7 +121,7 @@ const StyledSideNavToggleButtonContainer = styled("div", {
120
121
  position: "absolute",
121
122
  right: `${SIDE_NAV_TOGGLE_ICON_HALF_SIZE}px`,
122
123
  top: SIDE_NAV_VISIBILITY_TOGGLE_ICON_POSITION,
123
- transform: isSideNavCollapsed && !hasNeighboringContent ? isSideNavToggleHighlighted ? `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px), 0, 0)` : `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED}px), 0, 0)` : "translate3d(100%, 0, 0)",
124
+ transform: isSideNavCollapsed && !hasNeighbouringContentAtInlineStart ? isSideNavToggleHighlighted ? `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_HIGHLIGHTED}px), 0, 0)` : `translate3d(calc(100% + ${SIDE_NAV_TOGGLE_ICON_HALF_SIZE + SIDE_NAV_COLLAPSED_PADDING_UNHIGHLIGHTED}px), 0, 0)` : "translate3d(100%, 0, 0)",
124
125
  transition: `transform ${odysseyDesignTokens.TransitionDurationMain}`,
125
126
  zIndex: UI_SHELL_OVERLAY_Z_INDEX + 1
126
127
  }));
@@ -149,13 +150,15 @@ const StyledSideNavListContainer = styled("ul")(() => ({
149
150
  width: "100%"
150
151
  }));
151
152
  const StyledSideNavScrollableContainer = styled("div", {
152
- shouldForwardProp: prop => prop !== "odysseyDesignTokens"
153
+ shouldForwardProp: prop => prop !== "odysseyDesignTokens" && prop !== "hasBlockStartPadding"
153
154
  })(({
154
- odysseyDesignTokens
155
+ odysseyDesignTokens,
156
+ hasBlockStartPadding
155
157
  }) => ({
156
158
  display: "inline-grid",
157
159
  gridTemplateRows: "1fr max-content",
158
160
  overflowY: "auto",
161
+ paddingBlockStart: hasBlockStartPadding ? odysseyDesignTokens.Spacing2 : 0,
159
162
  paddingInline: odysseyDesignTokens.Spacing2
160
163
  }));
161
164
  const StyledSectionHeaderContainer = styled("li", {
@@ -275,7 +278,6 @@ const SideNav = ({
275
278
  sideNavItems
276
279
  }) => {
277
280
  const [hasContentScrolled, setHasContentScrolled] = useState(false);
278
- const [hasNeighboringContent, setHasNeighboringContent] = useState(false);
279
281
  const [isContentScrollable, setIsContentScrollable] = useState(false);
280
282
  const [isSideNavToggleHighlighted, setIsSideNavToggleHighlighted] = useState(false);
281
283
  const [sideNavItemsList, updateSideNavItemsList] = useState(sideNavItems || []);
@@ -295,13 +297,15 @@ const SideNav = ({
295
297
  const resizeObserverRef = useRef(null);
296
298
  const intersectionObserverRef = useRef(null);
297
299
  const sideNavRef = useRef(null);
300
+ const {
301
+ isAtContainerInlineStart
302
+ } = useElementAtContainerEdge({
303
+ element: sideNavRef.current,
304
+ monitoringElement: sideNavRef.current?.parentElement?.parentElement
305
+ });
306
+ const hasNeighbouringContentAtInlineStart = !isAtContainerInlineStart;
298
307
  const blankElement = useMemo(() => _jsx("div", {}), []);
299
308
  useEffect(() => updateSideNavItemsList(sideNavItems || []), [sideNavItems]);
300
- useEffect(() => {
301
- if (sideNavRef.current) {
302
- setHasNeighboringContent(sideNavRef.current.getBoundingClientRect().x > 0);
303
- }
304
- }, [isCollapsed]);
305
309
  const onMount = useCallback(() => {
306
310
  if (!isCollapsible) {
307
311
  setIsSideNavCollapsed(isCollapsed);
@@ -469,7 +473,7 @@ const SideNav = ({
469
473
  return _jsxs(StyledSideNavContainer, {
470
474
  "aria-label": t("navigation.label"),
471
475
  backgroundColor: uiShellContext?.sideNavBackgroundColor,
472
- hasNeighboringContent: hasNeighboringContent,
476
+ hasNeighbouringContentAtInlineStart: hasNeighbouringContentAtInlineStart,
473
477
  id: "side-nav-expandable",
474
478
  isAppContentWhiteBackground: uiShellContext?.appBackgroundColor === odysseyDesignTokens.HueNeutralWhite,
475
479
  isSideNavCollapsed: isSideNavCollapsed,
@@ -477,12 +481,12 @@ const SideNav = ({
477
481
  odysseyDesignTokens: odysseyDesignTokens,
478
482
  ref: sideNavRef,
479
483
  children: [isCollapsible && _jsx(StyledSideNavToggleButtonContainer, {
480
- hasNeighboringContent: hasNeighboringContent,
484
+ hasNeighbouringContentAtInlineStart: hasNeighbouringContentAtInlineStart,
481
485
  isSideNavCollapsed: isSideNavCollapsed,
482
486
  isSideNavToggleHighlighted: isSideNavToggleHighlighted,
483
487
  odysseyDesignTokens: odysseyDesignTokens,
484
488
  children: _jsx(SideNavToggleButton, {
485
- clickAreaPadding: isSideNavCollapsed && !hasNeighboringContent ? SIDE_NAV_TOGGLE_ICON_SIZE / 2 : 0,
489
+ clickAreaPadding: isSideNavCollapsed && !hasNeighbouringContentAtInlineStart ? SIDE_NAV_TOGGLE_ICON_SIZE / 2 : 0,
486
490
  ariaControls: "side-nav-expandable",
487
491
  isSideNavCollapsed: isSideNavCollapsed,
488
492
  onClick: sideNavExpandClickHandler,
@@ -511,6 +515,7 @@ const SideNav = ({
511
515
  }) : _jsx("div", {}), _jsxs(StyledSideNavScrollableContainer, {
512
516
  odysseyDesignTokens: odysseyDesignTokens,
513
517
  "data-se": "scrollable-region",
518
+ hasBlockStartPadding: !appName,
514
519
  children: [_jsx(StyledSideNavListContainer, {
515
520
  role: "none",
516
521
  ref: scrollableContentRef,