solid-ui 2.4.9 → 2.4.10-1fc14625

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 (249) hide show
  1. package/LICENSE.md +0 -0
  2. package/README.md +0 -0
  3. package/lib/acl/access-controller.d.ts +0 -0
  4. package/lib/acl/access-controller.d.ts.map +0 -0
  5. package/lib/acl/access-controller.js +0 -0
  6. package/lib/acl/access-controller.js.map +0 -0
  7. package/lib/acl/access-groups.d.ts +0 -0
  8. package/lib/acl/access-groups.d.ts.map +0 -0
  9. package/lib/acl/access-groups.js +0 -0
  10. package/lib/acl/access-groups.js.map +0 -0
  11. package/lib/acl/acl-control.d.ts +0 -0
  12. package/lib/acl/acl-control.d.ts.map +0 -0
  13. package/lib/acl/acl-control.js +0 -0
  14. package/lib/acl/acl-control.js.map +0 -0
  15. package/lib/acl/acl.d.ts +0 -0
  16. package/lib/acl/acl.d.ts.map +0 -0
  17. package/lib/acl/acl.js +0 -0
  18. package/lib/acl/acl.js.map +0 -0
  19. package/lib/acl/add-agent-buttons.d.ts +0 -0
  20. package/lib/acl/add-agent-buttons.d.ts.map +0 -0
  21. package/lib/acl/add-agent-buttons.js +0 -0
  22. package/lib/acl/add-agent-buttons.js.map +0 -0
  23. package/lib/acl/index.d.ts +0 -0
  24. package/lib/acl/index.d.ts.map +0 -0
  25. package/lib/acl/index.js +0 -0
  26. package/lib/acl/index.js.map +0 -0
  27. package/lib/acl/styles.d.ts +0 -0
  28. package/lib/acl/styles.d.ts.map +0 -0
  29. package/lib/acl/styles.js +0 -0
  30. package/lib/acl/styles.js.map +0 -0
  31. package/lib/acl/types.d.ts +0 -0
  32. package/lib/acl/types.d.ts.map +0 -0
  33. package/lib/acl/types.js +0 -0
  34. package/lib/acl/types.js.map +0 -0
  35. package/lib/authn/authSession.d.ts +0 -0
  36. package/lib/authn/authSession.d.ts.map +0 -0
  37. package/lib/authn/authSession.js +0 -0
  38. package/lib/authn/authSession.js.map +0 -0
  39. package/lib/authn/authn.d.ts +0 -0
  40. package/lib/authn/authn.d.ts.map +1 -1
  41. package/lib/authn/authn.js +45 -10
  42. package/lib/authn/authn.js.map +1 -1
  43. package/lib/authn/config-default.js +0 -0
  44. package/lib/authn/config-default.js.map +0 -0
  45. package/lib/authn/index.d.ts +0 -0
  46. package/lib/authn/index.d.ts.map +0 -0
  47. package/lib/authn/index.js +0 -0
  48. package/lib/authn/index.js.map +0 -0
  49. package/lib/authn/signup.js +0 -0
  50. package/lib/authn/signup.js.map +0 -0
  51. package/lib/authn/types.d.ts +0 -0
  52. package/lib/authn/types.d.ts.map +0 -0
  53. package/lib/authn/types.js +0 -0
  54. package/lib/authn/types.js.map +0 -0
  55. package/lib/chat/bookmarks.js +0 -0
  56. package/lib/chat/bookmarks.js.map +0 -0
  57. package/lib/chat/dateFolder.js +0 -0
  58. package/lib/chat/dateFolder.js.map +0 -0
  59. package/lib/chat/infinite.js +0 -0
  60. package/lib/chat/infinite.js.map +0 -0
  61. package/lib/chat/message.js +0 -0
  62. package/lib/chat/message.js.map +0 -0
  63. package/lib/chat/messageTools.js +0 -0
  64. package/lib/chat/messageTools.js.map +0 -0
  65. package/lib/chat/thread.js +0 -0
  66. package/lib/chat/thread.js.map +0 -0
  67. package/lib/create/create.d.ts +0 -0
  68. package/lib/create/create.d.ts.map +0 -0
  69. package/lib/create/create.js +0 -0
  70. package/lib/create/create.js.map +0 -0
  71. package/lib/create/index.d.ts +0 -0
  72. package/lib/create/index.d.ts.map +0 -0
  73. package/lib/create/index.js +0 -0
  74. package/lib/create/index.js.map +0 -0
  75. package/lib/create/types.d.ts +0 -0
  76. package/lib/create/types.d.ts.map +0 -0
  77. package/lib/create/types.js +0 -0
  78. package/lib/create/types.js.map +0 -0
  79. package/lib/debug.d.ts +0 -0
  80. package/lib/debug.d.ts.map +0 -0
  81. package/lib/debug.js +0 -0
  82. package/lib/debug.js.map +0 -0
  83. package/lib/folders.js +0 -0
  84. package/lib/folders.js.map +0 -0
  85. package/lib/header/empty-profile.d.ts +0 -0
  86. package/lib/header/empty-profile.d.ts.map +0 -0
  87. package/lib/header/empty-profile.js +0 -0
  88. package/lib/header/empty-profile.js.map +0 -0
  89. package/lib/header/headerHelpers.d.ts +0 -0
  90. package/lib/header/headerHelpers.d.ts.map +0 -0
  91. package/lib/header/headerHelpers.js +0 -0
  92. package/lib/header/headerHelpers.js.map +0 -0
  93. package/lib/header/index.d.ts +5 -1
  94. package/lib/header/index.d.ts.map +1 -1
  95. package/lib/header/index.js +59 -5
  96. package/lib/header/index.js.map +1 -1
  97. package/lib/header/styleMap.d.ts +16 -1
  98. package/lib/header/styleMap.d.ts.map +1 -1
  99. package/lib/header/styleMap.js +21 -2
  100. package/lib/header/styleMap.js.map +1 -1
  101. package/lib/iconBase.d.ts +0 -0
  102. package/lib/iconBase.d.ts.map +0 -0
  103. package/lib/iconBase.js +0 -0
  104. package/lib/iconBase.js.map +0 -0
  105. package/lib/icons/solid_logo.d.ts +0 -0
  106. package/lib/icons/solid_logo.d.ts.map +0 -0
  107. package/lib/icons/solid_logo.js +0 -0
  108. package/lib/icons/solid_logo.js.map +0 -0
  109. package/lib/index.d.ts +0 -0
  110. package/lib/index.d.ts.map +0 -0
  111. package/lib/index.js +0 -0
  112. package/lib/index.js.map +0 -0
  113. package/lib/jss/index.d.ts +0 -0
  114. package/lib/jss/index.d.ts.map +0 -0
  115. package/lib/jss/index.js +0 -0
  116. package/lib/jss/index.js.map +0 -0
  117. package/lib/log.d.ts +0 -0
  118. package/lib/log.d.ts.map +0 -0
  119. package/lib/log.js +0 -0
  120. package/lib/log.js.map +0 -0
  121. package/lib/logic.d.ts +0 -0
  122. package/lib/logic.d.ts.map +0 -0
  123. package/lib/logic.js +0 -0
  124. package/lib/logic.js.map +0 -0
  125. package/lib/matrix/index.d.ts +0 -0
  126. package/lib/matrix/index.d.ts.map +0 -0
  127. package/lib/matrix/index.js +0 -0
  128. package/lib/matrix/index.js.map +0 -0
  129. package/lib/matrix/matrix.d.ts +0 -0
  130. package/lib/matrix/matrix.d.ts.map +0 -0
  131. package/lib/matrix/matrix.js +0 -0
  132. package/lib/matrix/matrix.js.map +0 -0
  133. package/lib/matrix/types.d.ts +0 -0
  134. package/lib/matrix/types.d.ts.map +0 -0
  135. package/lib/matrix/types.js +0 -0
  136. package/lib/matrix/types.js.map +0 -0
  137. package/lib/media/index.d.ts +0 -0
  138. package/lib/media/index.d.ts.map +0 -0
  139. package/lib/media/index.js +0 -0
  140. package/lib/media/index.js.map +0 -0
  141. package/lib/media/media-capture.d.ts +0 -0
  142. package/lib/media/media-capture.d.ts.map +0 -0
  143. package/lib/media/media-capture.js +0 -0
  144. package/lib/media/media-capture.js.map +0 -0
  145. package/lib/messageArea.js +0 -0
  146. package/lib/messageArea.js.map +0 -0
  147. package/lib/noun_Camera_1618446_000000.js +0 -0
  148. package/lib/noun_Camera_1618446_000000.js.map +0 -0
  149. package/lib/ns.js +0 -0
  150. package/lib/ns.js.map +0 -0
  151. package/lib/pad.d.ts +0 -0
  152. package/lib/pad.d.ts.map +0 -0
  153. package/lib/pad.js +0 -0
  154. package/lib/pad.js.map +0 -0
  155. package/lib/participation.d.ts +0 -0
  156. package/lib/participation.d.ts.map +0 -0
  157. package/lib/participation.js +0 -0
  158. package/lib/participation.js.map +0 -0
  159. package/lib/preferences.js +0 -0
  160. package/lib/preferences.js.map +0 -0
  161. package/lib/stories/decorators.js +0 -0
  162. package/lib/stories/decorators.js.map +0 -0
  163. package/lib/style.js +0 -0
  164. package/lib/style.js.map +0 -0
  165. package/lib/table.js +0 -0
  166. package/lib/table.js.map +0 -0
  167. package/lib/tabs.d.ts +0 -0
  168. package/lib/tabs.d.ts.map +0 -0
  169. package/lib/tabs.js +0 -0
  170. package/lib/tabs.js.map +0 -0
  171. package/lib/typings.d.js +0 -0
  172. package/lib/typings.d.js.map +0 -0
  173. package/lib/utils/index.js +0 -0
  174. package/lib/utils/index.js.map +0 -0
  175. package/lib/utils/label.d.ts +0 -0
  176. package/lib/utils/label.d.ts.map +0 -0
  177. package/lib/utils/label.js +0 -0
  178. package/lib/utils/label.js.map +0 -0
  179. package/lib/versionInfo.d.ts +0 -1
  180. package/lib/versionInfo.d.ts.map +1 -1
  181. package/lib/versionInfo.js +18 -19
  182. package/lib/versionInfo.js.map +1 -1
  183. package/lib/webpack-bundle.js +143 -36
  184. package/lib/webpack-bundle.js.map +1 -1
  185. package/lib/widgets/buttons/iconLinks.d.ts +0 -0
  186. package/lib/widgets/buttons/iconLinks.d.ts.map +0 -0
  187. package/lib/widgets/buttons/iconLinks.js +0 -0
  188. package/lib/widgets/buttons/iconLinks.js.map +0 -0
  189. package/lib/widgets/buttons.d.ts +0 -0
  190. package/lib/widgets/buttons.d.ts.map +0 -0
  191. package/lib/widgets/buttons.js +0 -0
  192. package/lib/widgets/buttons.js.map +0 -0
  193. package/lib/widgets/dragAndDrop.js +0 -0
  194. package/lib/widgets/dragAndDrop.js.map +0 -0
  195. package/lib/widgets/error.d.ts +0 -0
  196. package/lib/widgets/error.d.ts.map +0 -0
  197. package/lib/widgets/error.js +0 -0
  198. package/lib/widgets/error.js.map +0 -0
  199. package/lib/widgets/forms/autocomplete/autocompleteBar.d.ts +0 -0
  200. package/lib/widgets/forms/autocomplete/autocompleteBar.d.ts.map +0 -0
  201. package/lib/widgets/forms/autocomplete/autocompleteBar.js +0 -0
  202. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +0 -0
  203. package/lib/widgets/forms/autocomplete/autocompleteField.d.ts +0 -0
  204. package/lib/widgets/forms/autocomplete/autocompleteField.d.ts.map +0 -0
  205. package/lib/widgets/forms/autocomplete/autocompleteField.js +0 -0
  206. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +0 -0
  207. package/lib/widgets/forms/autocomplete/autocompletePicker.d.ts +0 -0
  208. package/lib/widgets/forms/autocomplete/autocompletePicker.d.ts.map +0 -0
  209. package/lib/widgets/forms/autocomplete/autocompletePicker.js +0 -0
  210. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +0 -0
  211. package/lib/widgets/forms/autocomplete/language.d.ts +0 -0
  212. package/lib/widgets/forms/autocomplete/language.d.ts.map +0 -0
  213. package/lib/widgets/forms/autocomplete/language.js +0 -0
  214. package/lib/widgets/forms/autocomplete/language.js.map +0 -0
  215. package/lib/widgets/forms/autocomplete/publicData.d.ts +0 -0
  216. package/lib/widgets/forms/autocomplete/publicData.d.ts.map +1 -1
  217. package/lib/widgets/forms/autocomplete/publicData.js +0 -0
  218. package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
  219. package/lib/widgets/forms/basic.d.ts +0 -0
  220. package/lib/widgets/forms/basic.d.ts.map +0 -0
  221. package/lib/widgets/forms/basic.js +0 -0
  222. package/lib/widgets/forms/basic.js.map +0 -0
  223. package/lib/widgets/forms/comment.d.ts +0 -0
  224. package/lib/widgets/forms/comment.d.ts.map +0 -0
  225. package/lib/widgets/forms/comment.js +0 -0
  226. package/lib/widgets/forms/comment.js.map +0 -0
  227. package/lib/widgets/forms/fieldFunction.d.ts +0 -0
  228. package/lib/widgets/forms/fieldFunction.d.ts.map +0 -0
  229. package/lib/widgets/forms/fieldFunction.js +0 -0
  230. package/lib/widgets/forms/fieldFunction.js.map +0 -0
  231. package/lib/widgets/forms/fieldParams.d.ts +0 -0
  232. package/lib/widgets/forms/fieldParams.d.ts.map +0 -0
  233. package/lib/widgets/forms/fieldParams.js +0 -0
  234. package/lib/widgets/forms/fieldParams.js.map +0 -0
  235. package/lib/widgets/forms/formStyle.d.ts +0 -0
  236. package/lib/widgets/forms/formStyle.d.ts.map +0 -0
  237. package/lib/widgets/forms/formStyle.js +0 -0
  238. package/lib/widgets/forms/formStyle.js.map +0 -0
  239. package/lib/widgets/forms.js +0 -0
  240. package/lib/widgets/forms.js.map +0 -0
  241. package/lib/widgets/index.js +0 -0
  242. package/lib/widgets/index.js.map +0 -0
  243. package/lib/widgets/peoplePicker.js +0 -0
  244. package/lib/widgets/peoplePicker.js.map +0 -0
  245. package/lib/widgets/widgetHelpers.d.ts +0 -0
  246. package/lib/widgets/widgetHelpers.d.ts.map +0 -0
  247. package/lib/widgets/widgetHelpers.js +0 -0
  248. package/lib/widgets/widgetHelpers.js.map +0 -0
  249. package/package.json +3 -3
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/lib/debug.d.ts CHANGED
File without changes
File without changes
package/lib/debug.js CHANGED
File without changes
package/lib/debug.js.map CHANGED
File without changes
package/lib/folders.js CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -27,6 +27,10 @@ export declare function rebuildHeader(header: HTMLElement, store: IndexedFormula
27
27
  * @ignore exporting this only for the unit test
28
28
  */
29
29
  export declare function createBanner(store: IndexedFormula, pod: NamedNode, user: NamedNode | null, options?: HeaderOptions): Promise<HTMLElement>;
30
+ /**
31
+ * @ignore exporting this only for the unit test
32
+ */
33
+ export declare function createHelpMenu(): HTMLDivElement;
30
34
  /**
31
35
  * @ignore exporting this only for the unit test
32
36
  */
@@ -38,7 +42,7 @@ export declare function createUserMenuButton(label: string, onClick: EventListen
38
42
  /**
39
43
  * @ignore exporting this only for the unit test
40
44
  */
41
- export declare function createUserMenuLink(label: string, href: string): HTMLElement;
45
+ export declare function createUserMenuLink(label: string, href: string, target?: string): HTMLElement;
42
46
  /**
43
47
  * @ignore exporting this only for the unit test
44
48
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAMlD,oBAAY,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,oBAAY,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,oBAAY,SAAS,GAAG,YAAY,GAAG,cAAc,CAAA;AAMrD,oBAAY,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAA;CACvB,CAAA;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAE,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,aAAa,iBAU/E;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,uBAMjH;AACD;;GAEG;AACH,wBAAsB,YAAY,CAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAqBhJ;AACD;;GAEG;AACH,wBAAgB,wBAAwB,mBAKvC;AACD;;GAEG;AACH,wBAAgB,oBAAoB,CAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kCAAkC,GAAG,WAAW,CAM7G;AACD;;GAEG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,CAM5E;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA0D3H;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAKnE;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,WAAW,CAe3F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAOlD,oBAAY,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,oBAAY,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,oBAAY,SAAS,GAAG,YAAY,GAAG,cAAc,CAAA;AAMrD,oBAAY,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAA;CACvB,CAAA;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAE,KAAK,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,aAAa,iBAU/E;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,uBAMjH;AACD;;GAEG;AACH,wBAAsB,YAAY,CAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA6BhJ;AACD;;GAEG;AACH,wBAAgB,cAAc,mBAyC7B;AACD;;GAEG;AACH,wBAAgB,wBAAwB,mBAKvC;AACD;;GAEG;AACH,wBAAgB,oBAAoB,CAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kCAAkC,GAAG,WAAW,CAM7G;AACD;;GAEG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAC,MAAM,GAAG,WAAW,CAO5F;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA0D3H;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAKnE;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,WAAW,CAe3F"}
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports.createBanner = createBanner;
11
+ exports.createHelpMenu = createHelpMenu;
11
12
  exports.createLoginSignUpButtons = createLoginSignUpButtons;
12
13
  exports.createUserMenu = createUserMenu;
13
14
  exports.createUserMenuButton = createUserMenuButton;
@@ -21,6 +22,8 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
21
22
 
22
23
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
23
24
 
25
+ var _ = require("..");
26
+
24
27
  var _authn = require("../authn/authn");
25
28
 
26
29
  var widgets = _interopRequireWildcard(require("../widgets"));
@@ -129,7 +132,7 @@ function createBanner(_x3, _x4, _x5, _x6) {
129
132
 
130
133
  function _createBanner() {
131
134
  _createBanner = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(store, pod, user, options) {
132
- var podLink, image, menu, banner;
135
+ var podLink, image, userMenu, helpMenu, banner, leftSideOfHeader;
133
136
  return _regenerator["default"].wrap(function _callee3$(_context3) {
134
137
  while (1) {
135
138
  switch (_context3.prev = _context3.next) {
@@ -163,14 +166,19 @@ function _createBanner() {
163
166
  _context3.t0 = createLoginSignUpButtons();
164
167
 
165
168
  case 14:
166
- menu = _context3.t0;
169
+ userMenu = _context3.t0;
170
+ helpMenu = createHelpMenu();
167
171
  banner = document.createElement('div');
168
172
  (0, _headerHelpers.addStyleClassToElement)(banner, ['header-banner']);
169
173
  banner.appendChild(podLink);
170
- banner.appendChild(menu);
174
+ leftSideOfHeader = document.createElement('div');
175
+ (0, _headerHelpers.addStyleClassToElement)(leftSideOfHeader, ['header-banner__right-menu']);
176
+ leftSideOfHeader.appendChild(userMenu);
177
+ leftSideOfHeader.appendChild(helpMenu);
178
+ banner.appendChild(leftSideOfHeader);
171
179
  return _context3.abrupt("return", banner);
172
180
 
173
- case 20:
181
+ case 25:
174
182
  case "end":
175
183
  return _context3.stop();
176
184
  }
@@ -180,6 +188,51 @@ function _createBanner() {
180
188
  return _createBanner.apply(this, arguments);
181
189
  }
182
190
 
191
+ function createHelpMenu() {
192
+ var helpMenuList = document.createElement('ul');
193
+ (0, _headerHelpers.addStyleClassToElement)(helpMenuList, ['header-user-menu__list']);
194
+ helpMenuList.appendChild(createUserMenuItem(createUserMenuLink('User guide', 'https://github.com/solid/userguide', '_blank')));
195
+ helpMenuList.appendChild(createUserMenuItem(createUserMenuLink('Report a problem', 'https://github.com/solid/solidos/issues', '_blank')));
196
+ var helpMenu = document.createElement('nav');
197
+ (0, _headerHelpers.addStyleClassToElement)(helpMenu, ['header-user-menu__navigation-menu']);
198
+ helpMenu.setAttribute('aria-hidden', 'true');
199
+ helpMenu.appendChild(helpMenuList);
200
+ var helpIcon = _.icons.iconBase + 'noun_144.svg';
201
+ var helpMenuContainer = document.createElement('div');
202
+ (0, _headerHelpers.addStyleClassToElement)(helpMenuContainer, ['header-banner__user-menu']);
203
+ (0, _headerHelpers.addStyleClassToElement)(helpMenuContainer, ['header-user-menu']);
204
+ helpMenuContainer.appendChild(helpMenu);
205
+ var helpMenuTrigger = document.createElement('button');
206
+ (0, _headerHelpers.addStyleClassToElement)(helpMenuTrigger, ['header-user-menu__trigger']);
207
+ helpMenuTrigger.type = 'button';
208
+ var helpMenuIcon = document.createElement('img');
209
+ helpMenuIcon.src = helpIcon;
210
+ (0, _headerHelpers.addStyleClassToElement)(helpMenuIcon, ['header-banner__help-icon']);
211
+ helpMenuContainer.appendChild(helpMenuTrigger);
212
+ helpMenuTrigger.appendChild(helpMenuIcon);
213
+ var throttledMenuToggle = (0, _headerHelpers.throttle)(function (event) {
214
+ return toggleMenu(event, helpMenuTrigger, helpMenu);
215
+ }, 50);
216
+ helpMenuTrigger.addEventListener('click', throttledMenuToggle);
217
+ var timer = setTimeout(function () {
218
+ return null;
219
+ }, 0);
220
+ helpMenuContainer.addEventListener('mouseover', function (event) {
221
+ clearTimeout(timer);
222
+ throttledMenuToggle(event);
223
+ });
224
+ helpMenuContainer.addEventListener('mouseout', function (event) {
225
+ timer = setTimeout(function () {
226
+ return throttledMenuToggle(event);
227
+ }, 200);
228
+ });
229
+ return helpMenuContainer;
230
+ }
231
+ /**
232
+ * @ignore exporting this only for the unit test
233
+ */
234
+
235
+
183
236
  function createLoginSignUpButtons() {
184
237
  var profileLoginButtonPre = document.createElement('div');
185
238
  (0, _headerHelpers.addStyleClassToElement)(profileLoginButtonPre, ['header-banner__login']);
@@ -203,11 +256,12 @@ function createUserMenuButton(label, onClick) {
203
256
  */
204
257
 
205
258
 
206
- function createUserMenuLink(label, href) {
259
+ function createUserMenuLink(label, href, target) {
207
260
  var link = document.createElement('a');
208
261
  (0, _headerHelpers.addStyleClassToElement)(link, ['header-user-menu__link']);
209
262
  link.href = href;
210
263
  link.innerText = label;
264
+ if (target) link.target = target;
211
265
  return link;
212
266
  }
213
267
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/header/index.ts"],"names":["initHeader","store","options","header","document","getElementById","pod","rebuildHeader","authSession","onLogout","onLogin","user","innerHTML","createBanner","appendChild","podLink","createElement","href","uri","image","src","logo","createUserMenu","createLoginSignUpButtons","menu","banner","profileLoginButtonPre","createUserMenuButton","label","onClick","button","addEventListener","innerText","createUserMenuLink","link","fetcher","load","loggedInMenuList","createUserMenuItem","menuList","forEach","menuItem","menuItemType","url","logout","loggedInMenu","setAttribute","loggedInMenuTrigger","type","profileImg","getProfileImg","loggedInMenuContainer","throttledMenuToggle","event","toggleMenu","timer","setTimeout","clearTimeout","child","menuProfileItem","profileUrl","widgets","findImage","emptyProfile","profileImage","style","backgroundImage","trigger","isExpanded","getAttribute","expand","close","toString"],"mappings":"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","sourcesContent":["/* global EventListenerOrEventListenerObject */\n/*\n This file was copied from mashlib/src/global/header.ts file. It is modified to\n work in solid-ui by adjusting where imported functions are found.\n */\nimport { IndexedFormula, NamedNode } from 'rdflib'\nimport { loginStatusBox, authSession, currentUser } from '../authn/authn'\nimport * as widgets from '../widgets'\nimport { emptyProfile } from './empty-profile'\nimport { addStyleClassToElement, getPod, throttle } from './headerHelpers'\n\nexport type MenuItemLink = {\n label: string,\n url: string\n}\n\nexport type MenuItemButton = {\n label: string,\n onclick: () => {}\n}\n\nexport type MenuItems = MenuItemLink | MenuItemButton\n\n/*\nHeaderOptions allow for customizing the logo and menu list. If a logo is not provided the default\n is solid. Menulist will always show a link to logout and to the users profile.\n */\nexport type HeaderOptions = {\n logo?: string,\n menuList?: MenuItems[]\n}\n\n/**\n * Initialize header component, the header object returned depends on whether the user is authenticated.\n * @param store the data store\n * @param options allow the header to be customized with a personalized logo and a menu list of links or buttons.\n * @returns a header for an authenticated user with menu items given or a login screen\n */\nexport async function initHeader (store: IndexedFormula, options?: HeaderOptions) {\n const header = document.getElementById('PageHeader')\n if (!header) {\n return\n }\n\n const pod = getPod()\n rebuildHeader(header, store, pod, options)()\n authSession.onLogout(rebuildHeader(header, store, pod, options))\n authSession.onLogin(rebuildHeader(header, store, pod, options))\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function rebuildHeader (header: HTMLElement, store: IndexedFormula, pod: NamedNode, options?: HeaderOptions) {\n return async () => {\n const user = currentUser()\n header.innerHTML = ''\n header.appendChild(await createBanner(store, pod, user, options))\n }\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport async function createBanner (store: IndexedFormula, pod: NamedNode, user: NamedNode | null, options?: HeaderOptions): Promise<HTMLElement> {\n const podLink = document.createElement('a')\n podLink.href = pod.uri\n addStyleClassToElement(podLink, ['header-banner__link'])\n const image = document.createElement('img')\n if (options) {\n image.src = options.logo ? options.logo : 'https://solidproject.org/assets/img/solid-emblem.svg'\n }\n addStyleClassToElement(image, ['header-banner__icon'])\n podLink.appendChild(image)\n\n const menu = user\n ? await createUserMenu(store, user, options)\n : createLoginSignUpButtons()\n\n const banner = document.createElement('div')\n addStyleClassToElement(banner, ['header-banner'])\n banner.appendChild(podLink)\n banner.appendChild(menu)\n\n return banner\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createLoginSignUpButtons () {\n const profileLoginButtonPre = document.createElement('div')\n addStyleClassToElement(profileLoginButtonPre, ['header-banner__login'])\n profileLoginButtonPre.appendChild(loginStatusBox(document, null, {}))\n return profileLoginButtonPre\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createUserMenuButton (label: string, onClick: EventListenerOrEventListenerObject): HTMLElement {\n const button = document.createElement('button')\n addStyleClassToElement(button, ['header-user-menu__button'])\n button.addEventListener('click', onClick)\n button.innerText = label\n return button\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createUserMenuLink (label: string, href: string): HTMLElement {\n const link = document.createElement('a')\n addStyleClassToElement(link, ['header-user-menu__link'])\n link.href = href\n link.innerText = label\n return link\n}\n\n/**\n * @ignore exporting this only for the unit test\n */\nexport async function createUserMenu (store: IndexedFormula, user: NamedNode, options?: HeaderOptions): Promise<HTMLElement> {\n const fetcher = (<any>store).fetcher\n if (fetcher) {\n // Making sure that Profile is loaded before building menu\n await fetcher.load(user)\n }\n const loggedInMenuList = document.createElement('ul')\n addStyleClassToElement(loggedInMenuList, ['header-user-menu__list'])\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuLink('Show your profile', user.uri)))\n if (options) {\n if (options.menuList) {\n options.menuList.forEach(function (menuItem) {\n const menuItemType: string = (menuItem as MenuItemLink).url ? 'url' : 'onclick'\n if (menuItemType === 'url') {\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuLink(menuItem.label, menuItem[menuItemType])))\n } else {\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuButton(menuItem.label, menuItem[menuItemType])))\n }\n })\n }\n }\n\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuButton('Log out', () => authSession.logout())))\n\n const loggedInMenu = document.createElement('nav')\n\n addStyleClassToElement(loggedInMenu, ['header-user-menu__navigation-menu'])\n loggedInMenu.setAttribute('aria-hidden', 'true')\n loggedInMenu.appendChild(loggedInMenuList)\n\n const loggedInMenuTrigger = document.createElement('button')\n addStyleClassToElement(loggedInMenuTrigger, ['header-user-menu__trigger'])\n loggedInMenuTrigger.type = 'button'\n const profileImg = getProfileImg(store, user)\n if (typeof profileImg === 'string') {\n loggedInMenuTrigger.innerHTML = profileImg\n } else {\n loggedInMenuTrigger.appendChild(profileImg)\n }\n\n const loggedInMenuContainer = document.createElement('div')\n addStyleClassToElement(loggedInMenuContainer, ['header-banner__user-menu'])\n addStyleClassToElement(loggedInMenuContainer, ['header-user-menu'])\n loggedInMenuContainer.appendChild(loggedInMenuTrigger)\n loggedInMenuContainer.appendChild(loggedInMenu)\n\n const throttledMenuToggle = throttle((event: Event) => toggleMenu(event, loggedInMenuTrigger, loggedInMenu), 50)\n loggedInMenuTrigger.addEventListener('click', throttledMenuToggle)\n let timer = setTimeout(() => null, 0)\n loggedInMenuContainer.addEventListener('mouseover', event => {\n clearTimeout(timer)\n throttledMenuToggle(event)\n })\n loggedInMenuContainer.addEventListener('mouseout', event => {\n timer = setTimeout(() => throttledMenuToggle(event), 200)\n })\n\n return loggedInMenuContainer\n}\n\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createUserMenuItem (child: HTMLElement): HTMLElement {\n const menuProfileItem = document.createElement('li')\n addStyleClassToElement(menuProfileItem, ['header-user-menu__list-item'])\n menuProfileItem.appendChild(child)\n return menuProfileItem\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function getProfileImg (store: IndexedFormula, user: NamedNode): string | HTMLElement {\n const profileUrl = null\n try {\n const profileUrl = widgets.findImage(user)\n if (!profileUrl) {\n return emptyProfile\n }\n } catch {\n return emptyProfile\n }\n\n const profileImage = document.createElement('div')\n addStyleClassToElement(profileImage, ['header-user-menu__photo'])\n profileImage.style.backgroundImage = `url(\"${profileUrl}\")`\n return profileImage\n}\n\n/**\n * @internal\n */\nfunction toggleMenu (event: Event, trigger: HTMLButtonElement, menu: HTMLElement): void {\n const isExpanded = trigger.getAttribute('aria-expanded') === 'true'\n const expand = event.type === 'mouseover'\n const close = event.type === 'mouseout'\n if ((isExpanded && expand) || (!isExpanded && close)) {\n return\n }\n trigger.setAttribute('aria-expanded', (!isExpanded).toString())\n menu.setAttribute('aria-hidden', isExpanded.toString())\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/header/index.ts"],"names":["initHeader","store","options","header","document","getElementById","pod","rebuildHeader","authSession","onLogout","onLogin","user","innerHTML","createBanner","appendChild","podLink","createElement","href","uri","image","src","logo","createUserMenu","createLoginSignUpButtons","userMenu","helpMenu","createHelpMenu","banner","leftSideOfHeader","helpMenuList","createUserMenuItem","createUserMenuLink","setAttribute","helpIcon","icons","iconBase","helpMenuContainer","helpMenuTrigger","type","helpMenuIcon","throttledMenuToggle","event","toggleMenu","addEventListener","timer","setTimeout","clearTimeout","profileLoginButtonPre","createUserMenuButton","label","onClick","button","innerText","target","link","fetcher","load","loggedInMenuList","menuList","forEach","menuItem","menuItemType","url","logout","loggedInMenu","loggedInMenuTrigger","profileImg","getProfileImg","loggedInMenuContainer","child","menuProfileItem","profileUrl","widgets","findImage","emptyProfile","profileImage","style","backgroundImage","trigger","menu","isExpanded","getAttribute","expand","close","toString"],"mappings":"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","sourcesContent":["/* global EventListenerOrEventListenerObject */\n/*\n This file was copied from mashlib/src/global/header.ts file. It is modified to\n work in solid-ui by adjusting where imported functions are found.\n */\nimport { IndexedFormula, NamedNode } from 'rdflib'\nimport { icons } from '..'\nimport { loginStatusBox, authSession, currentUser } from '../authn/authn'\nimport * as widgets from '../widgets'\nimport { emptyProfile } from './empty-profile'\nimport { addStyleClassToElement, getPod, throttle } from './headerHelpers'\n\nexport type MenuItemLink = {\n label: string,\n url: string\n}\n\nexport type MenuItemButton = {\n label: string,\n onclick: () => {}\n}\n\nexport type MenuItems = MenuItemLink | MenuItemButton\n\n/*\nHeaderOptions allow for customizing the logo and menu list. If a logo is not provided the default\n is solid. Menulist will always show a link to logout and to the users profile.\n */\nexport type HeaderOptions = {\n logo?: string,\n menuList?: MenuItems[]\n}\n\n/**\n * Initialize header component, the header object returned depends on whether the user is authenticated.\n * @param store the data store\n * @param options allow the header to be customized with a personalized logo and a menu list of links or buttons.\n * @returns a header for an authenticated user with menu items given or a login screen\n */\nexport async function initHeader (store: IndexedFormula, options?: HeaderOptions) {\n const header = document.getElementById('PageHeader')\n if (!header) {\n return\n }\n\n const pod = getPod()\n rebuildHeader(header, store, pod, options)()\n authSession.onLogout(rebuildHeader(header, store, pod, options))\n authSession.onLogin(rebuildHeader(header, store, pod, options))\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function rebuildHeader (header: HTMLElement, store: IndexedFormula, pod: NamedNode, options?: HeaderOptions) {\n return async () => {\n const user = currentUser()\n header.innerHTML = ''\n header.appendChild(await createBanner(store, pod, user, options))\n }\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport async function createBanner (store: IndexedFormula, pod: NamedNode, user: NamedNode | null, options?: HeaderOptions): Promise<HTMLElement> {\n const podLink = document.createElement('a')\n podLink.href = pod.uri\n addStyleClassToElement(podLink, ['header-banner__link'])\n const image = document.createElement('img')\n if (options) {\n image.src = options.logo ? options.logo : 'https://solidproject.org/assets/img/solid-emblem.svg'\n }\n addStyleClassToElement(image, ['header-banner__icon'])\n podLink.appendChild(image)\n\n const userMenu = user\n ? await createUserMenu(store, user, options)\n : createLoginSignUpButtons()\n\n const helpMenu = createHelpMenu()\n\n const banner = document.createElement('div')\n addStyleClassToElement(banner, ['header-banner'])\n banner.appendChild(podLink)\n\n const leftSideOfHeader = document.createElement('div')\n addStyleClassToElement(leftSideOfHeader, ['header-banner__right-menu'])\n leftSideOfHeader.appendChild(userMenu)\n leftSideOfHeader.appendChild(helpMenu)\n\n banner.appendChild(leftSideOfHeader)\n\n return banner\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createHelpMenu () {\n const helpMenuList = document.createElement('ul')\n addStyleClassToElement(helpMenuList, ['header-user-menu__list'])\n helpMenuList.appendChild(createUserMenuItem(createUserMenuLink('User guide', 'https://github.com/solid/userguide', '_blank')))\n helpMenuList.appendChild(createUserMenuItem(createUserMenuLink('Report a problem', 'https://github.com/solid/solidos/issues', '_blank')))\n\n const helpMenu = document.createElement('nav')\n\n addStyleClassToElement(helpMenu, ['header-user-menu__navigation-menu'])\n helpMenu.setAttribute('aria-hidden', 'true')\n helpMenu.appendChild(helpMenuList)\n\n const helpIcon = icons.iconBase + 'noun_144.svg'\n\n const helpMenuContainer = document.createElement('div')\n addStyleClassToElement(helpMenuContainer, ['header-banner__user-menu'])\n addStyleClassToElement(helpMenuContainer, ['header-user-menu'])\n helpMenuContainer.appendChild(helpMenu)\n\n const helpMenuTrigger = document.createElement('button')\n addStyleClassToElement(helpMenuTrigger, ['header-user-menu__trigger'])\n helpMenuTrigger.type = 'button'\n\n const helpMenuIcon = document.createElement('img')\n helpMenuIcon.src = helpIcon\n addStyleClassToElement(helpMenuIcon, ['header-banner__help-icon'])\n helpMenuContainer.appendChild(helpMenuTrigger)\n helpMenuTrigger.appendChild(helpMenuIcon)\n\n const throttledMenuToggle = throttle((event: Event) => toggleMenu(event, helpMenuTrigger, helpMenu), 50)\n helpMenuTrigger.addEventListener('click', throttledMenuToggle)\n let timer = setTimeout(() => null, 0)\n helpMenuContainer.addEventListener('mouseover', event => {\n clearTimeout(timer)\n throttledMenuToggle(event)\n })\n helpMenuContainer.addEventListener('mouseout', event => {\n timer = setTimeout(() => throttledMenuToggle(event), 200)\n })\n\n return helpMenuContainer\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createLoginSignUpButtons () {\n const profileLoginButtonPre = document.createElement('div')\n addStyleClassToElement(profileLoginButtonPre, ['header-banner__login'])\n profileLoginButtonPre.appendChild(loginStatusBox(document, null, {}))\n return profileLoginButtonPre\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createUserMenuButton (label: string, onClick: EventListenerOrEventListenerObject): HTMLElement {\n const button = document.createElement('button')\n addStyleClassToElement(button, ['header-user-menu__button'])\n button.addEventListener('click', onClick)\n button.innerText = label\n return button\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createUserMenuLink (label: string, href: string, target?:string): HTMLElement {\n const link = document.createElement('a')\n addStyleClassToElement(link, ['header-user-menu__link'])\n link.href = href\n link.innerText = label\n if (target) link.target = target\n return link\n}\n\n/**\n * @ignore exporting this only for the unit test\n */\nexport async function createUserMenu (store: IndexedFormula, user: NamedNode, options?: HeaderOptions): Promise<HTMLElement> {\n const fetcher = (<any>store).fetcher\n if (fetcher) {\n // Making sure that Profile is loaded before building menu\n await fetcher.load(user)\n }\n const loggedInMenuList = document.createElement('ul')\n addStyleClassToElement(loggedInMenuList, ['header-user-menu__list'])\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuLink('Show your profile', user.uri)))\n if (options) {\n if (options.menuList) {\n options.menuList.forEach(function (menuItem) {\n const menuItemType: string = (menuItem as MenuItemLink).url ? 'url' : 'onclick'\n if (menuItemType === 'url') {\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuLink(menuItem.label, menuItem[menuItemType])))\n } else {\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuButton(menuItem.label, menuItem[menuItemType])))\n }\n })\n }\n }\n\n loggedInMenuList.appendChild(createUserMenuItem(createUserMenuButton('Log out', () => authSession.logout())))\n\n const loggedInMenu = document.createElement('nav')\n\n addStyleClassToElement(loggedInMenu, ['header-user-menu__navigation-menu'])\n loggedInMenu.setAttribute('aria-hidden', 'true')\n loggedInMenu.appendChild(loggedInMenuList)\n\n const loggedInMenuTrigger = document.createElement('button')\n addStyleClassToElement(loggedInMenuTrigger, ['header-user-menu__trigger'])\n loggedInMenuTrigger.type = 'button'\n const profileImg = getProfileImg(store, user)\n if (typeof profileImg === 'string') {\n loggedInMenuTrigger.innerHTML = profileImg\n } else {\n loggedInMenuTrigger.appendChild(profileImg)\n }\n\n const loggedInMenuContainer = document.createElement('div')\n addStyleClassToElement(loggedInMenuContainer, ['header-banner__user-menu'])\n addStyleClassToElement(loggedInMenuContainer, ['header-user-menu'])\n loggedInMenuContainer.appendChild(loggedInMenuTrigger)\n loggedInMenuContainer.appendChild(loggedInMenu)\n\n const throttledMenuToggle = throttle((event: Event) => toggleMenu(event, loggedInMenuTrigger, loggedInMenu), 50)\n loggedInMenuTrigger.addEventListener('click', throttledMenuToggle)\n let timer = setTimeout(() => null, 0)\n loggedInMenuContainer.addEventListener('mouseover', event => {\n clearTimeout(timer)\n throttledMenuToggle(event)\n })\n loggedInMenuContainer.addEventListener('mouseout', event => {\n timer = setTimeout(() => throttledMenuToggle(event), 200)\n })\n\n return loggedInMenuContainer\n}\n\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createUserMenuItem (child: HTMLElement): HTMLElement {\n const menuProfileItem = document.createElement('li')\n addStyleClassToElement(menuProfileItem, ['header-user-menu__list-item'])\n menuProfileItem.appendChild(child)\n return menuProfileItem\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function getProfileImg (store: IndexedFormula, user: NamedNode): string | HTMLElement {\n const profileUrl = null\n try {\n const profileUrl = widgets.findImage(user)\n if (!profileUrl) {\n return emptyProfile\n }\n } catch {\n return emptyProfile\n }\n\n const profileImage = document.createElement('div')\n addStyleClassToElement(profileImage, ['header-user-menu__photo'])\n profileImage.style.backgroundImage = `url(\"${profileUrl}\")`\n return profileImage\n}\n\n/**\n * @internal\n */\nfunction toggleMenu (event: Event, trigger: HTMLButtonElement, menu: HTMLElement): void {\n const isExpanded = trigger.getAttribute('aria-expanded') === 'true'\n const expand = event.type === 'mouseover'\n const close = event.type === 'mouseout'\n if ((isExpanded && expand) || (!isExpanded && close)) {\n return\n }\n trigger.setAttribute('aria-expanded', (!isExpanded).toString())\n menu.setAttribute('aria-hidden', isExpanded.toString())\n}\n"],"file":"index.js"}
@@ -14,6 +14,9 @@ export declare const styleMap: {
14
14
  '&:focus, &:hover': {
15
15
  backgroundColor: string;
16
16
  };
17
+ a: {
18
+ textDecoration: string;
19
+ };
17
20
  };
18
21
  'header-user-menu__trigger': {
19
22
  background: string;
@@ -71,19 +74,22 @@ export declare const styleMap: {
71
74
  backgroundPosition: string;
72
75
  backgroundRepeat: string;
73
76
  backgroundSize: string;
74
- margin: string;
75
77
  height: string;
76
78
  width: string;
77
79
  };
78
80
  'header-banner': {
79
81
  boxShadow: string;
80
82
  display: string;
83
+ justifyContent: string;
81
84
  padding: string;
82
85
  marginBottom: string;
83
86
  };
84
87
  'header-banner__link': {
85
88
  display: string;
86
89
  };
90
+ 'header-banner__right-menu': {
91
+ display: string;
92
+ };
87
93
  'header-banner__login': {
88
94
  marginLeft: string;
89
95
  input: {
@@ -95,10 +101,19 @@ export declare const styleMap: {
95
101
  borderLeft: string;
96
102
  marginLeft: string;
97
103
  };
104
+ 'header-banner__help-menu': {
105
+ borderLeft: string;
106
+ marginLeft: string;
107
+ };
98
108
  'header-banner__icon': {
99
109
  backgroundSize: string;
100
110
  height: string;
101
111
  width: string;
102
112
  };
113
+ 'header-banner__help-icon': {
114
+ backgroundSize: string;
115
+ height: string;
116
+ width: string;
117
+ };
103
118
  };
104
119
  //# sourceMappingURL=styleMap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styleMap.d.ts","sourceRoot":"","sources":["../../src/header/styleMap.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyGpB,CAAA"}
1
+ {"version":3,"file":"styleMap.d.ts","sourceRoot":"","sources":["../../src/header/styleMap.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwHpB,CAAA"}
@@ -18,7 +18,11 @@ var styleMap = {
18
18
  padding: '1em',
19
19
  width: '100%',
20
20
  '&:focus, &:hover': {
21
- backgroundColor: 'linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%)'
21
+ backgroundColor: 'linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%)' // backgroundColor: '#eee'
22
+
23
+ },
24
+ a: {
25
+ textDecoration: 'none'
22
26
  }
23
27
  },
24
28
  'header-user-menu__trigger': {
@@ -83,7 +87,6 @@ var styleMap = {
83
87
  backgroundPosition: 'center',
84
88
  backgroundRepeat: 'no-repeat',
85
89
  backgroundSize: 'cover',
86
- margin: '5px',
87
90
  height: '50px',
88
91
  // $icon-size - $image-margin * 2 image-margin was 5px in mashlib and icon size 60px
89
92
  width: '50px'
@@ -92,12 +95,16 @@ var styleMap = {
92
95
  boxShadow: '0px 1px 4px #000000',
93
96
  // the color was defined in mashlib as a SASS variable $divider_color
94
97
  display: 'flex',
98
+ justifyContent: 'space-between',
95
99
  padding: '0 1.5em',
96
100
  marginBottom: '4px'
97
101
  },
98
102
  'header-banner__link': {
99
103
  display: 'block'
100
104
  },
105
+ 'header-banner__right-menu': {
106
+ display: 'flex'
107
+ },
101
108
  'header-banner__login': {
102
109
  marginLeft: 'auto',
103
110
  input: {
@@ -111,12 +118,24 @@ var styleMap = {
111
118
  // the color was defined in mashlib as a SASS variable $divider_color
112
119
  marginLeft: 'auto'
113
120
  },
121
+ 'header-banner__help-menu': {
122
+ borderLeft: 'solid 1px #000000',
123
+ // the color was defined in mashlib as a SASS variable $divider_color
124
+ marginLeft: 'auto'
125
+ },
114
126
  'header-banner__icon': {
115
127
  backgroundSize: '65px 60px',
116
128
  height: '60px !important',
117
129
  // this is the icon size
118
130
  width: '65px !important' // may just be 65px round($icon-size * 352 / 322);
119
131
 
132
+ },
133
+ 'header-banner__help-icon': {
134
+ backgroundSize: '55px 50px',
135
+ height: '50px !important',
136
+ // this is the icon size
137
+ width: '55px !important' // may just be 65px round($icon-size * 352 / 430);
138
+
120
139
  }
121
140
  };
122
141
  exports.styleMap = styleMap;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/header/styleMap.ts"],"names":["styleMap","background","border","color","cursor","display","fontFamily","fontSize","textAlign","padding","width","backgroundColor","height","img","borderRadius","listStyle","margin","borderRight","position","right","top","borderBottom","backgroundPosition","backgroundRepeat","backgroundSize","boxShadow","marginBottom","marginLeft","input","borderLeft"],"mappings":"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","sourcesContent":["export const styleMap = {\n 'header-user-menu': {\n },\n 'header-user-menu__link': {\n background: 'none',\n border: '0',\n color: 'black',\n cursor: 'pointer',\n display: 'block',\n fontFamily: 'Arial',\n fontSize: '1em',\n textAlign: 'left',\n padding: '1em',\n width: '100%',\n '&:focus, &:hover': {\n backgroundColor: 'linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%)'\n }\n },\n 'header-user-menu__trigger': {\n background: 'none',\n border: '0',\n cursor: 'pointer',\n width: '60px', // defined in mashlib as a SASS variable $icon_size\n height: '60px', // defined in mashlib as a SASS variable $icon_size\n img: {\n borderRadius: '50%',\n height: '56px', // defined in mashlib as a SASS variable $icon_size - 4px\n width: '56px'\n }\n },\n 'header-user-menu__button': {\n background: 'none',\n border: '0',\n color: 'black',\n cursor: 'pointer',\n display: 'block',\n fontFamily: 'Arial',\n fontSize: '1em',\n textAlign: 'left',\n padding: '1em',\n width: '100%',\n '&:focus, &:hover': {\n backgroundColor: 'linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%)'\n }\n },\n 'header-user-menu__list': {\n listStyle: 'none',\n margin: '0',\n padding: '0'\n },\n 'header-user-menu__navigation-menu': {\n background: 'white',\n border: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n borderRight: '0',\n position: 'absolute',\n right: '0',\n top: '60px', // defined in mashlib as a SASS variable $icon_size\n width: '200px',\n 'z-index': '1',\n '&[aria-hidden = true]': {\n display: 'none'\n }\n },\n 'header-user-menu__list-item': {\n borderBottom: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n '&:last-child': {\n border: '0'\n }\n },\n 'header-user-menu__photo': {\n borderRadius: '50%',\n backgroundPosition: 'center',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n margin: '5px',\n height: '50px', // $icon-size - $image-margin * 2 image-margin was 5px in mashlib and icon size 60px\n width: '50px'\n },\n 'header-banner': {\n boxShadow: '0px 1px 4px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n display: 'flex',\n padding: '0 1.5em',\n marginBottom: '4px'\n },\n 'header-banner__link': {\n display: 'block'\n },\n\n 'header-banner__login': {\n marginLeft: 'auto',\n input: {\n // hacks to override the default style of login and signup button from solid-ui\n margin: '0.75em 0 0.75em 0.5em !important',\n padding: '0.5em !important'\n }\n },\n 'header-banner__user-menu': {\n borderLeft: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n marginLeft: 'auto'\n },\n 'header-banner__icon': {\n backgroundSize: '65px 60px',\n height: '60px !important', // this is the icon size\n width: '65px !important' // may just be 65px round($icon-size * 352 / 322);\n }\n}\n"],"file":"styleMap.js"}
1
+ {"version":3,"sources":["../../src/header/styleMap.ts"],"names":["styleMap","background","border","color","cursor","display","fontFamily","fontSize","textAlign","padding","width","backgroundColor","a","textDecoration","height","img","borderRadius","listStyle","margin","borderRight","position","right","top","borderBottom","backgroundPosition","backgroundRepeat","backgroundSize","boxShadow","justifyContent","marginBottom","marginLeft","input","borderLeft"],"mappings":"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","sourcesContent":["export const styleMap = {\n 'header-user-menu': {\n },\n 'header-user-menu__link': {\n background: 'none',\n border: '0',\n color: 'black',\n cursor: 'pointer',\n display: 'block',\n fontFamily: 'Arial',\n fontSize: '1em',\n textAlign: 'left',\n padding: '1em',\n width: '100%',\n '&:focus, &:hover': {\n backgroundColor: 'linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%)'\n // backgroundColor: '#eee'\n },\n a: {\n textDecoration: 'none'\n }\n },\n 'header-user-menu__trigger': {\n background: 'none',\n border: '0',\n cursor: 'pointer',\n width: '60px', // defined in mashlib as a SASS variable $icon_size\n height: '60px', // defined in mashlib as a SASS variable $icon_size\n img: {\n borderRadius: '50%',\n height: '56px', // defined in mashlib as a SASS variable $icon_size - 4px\n width: '56px'\n }\n },\n 'header-user-menu__button': {\n background: 'none',\n border: '0',\n color: 'black',\n cursor: 'pointer',\n display: 'block',\n fontFamily: 'Arial',\n fontSize: '1em',\n textAlign: 'left',\n padding: '1em',\n width: '100%',\n '&:focus, &:hover': {\n backgroundColor: 'linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%)'\n }\n },\n 'header-user-menu__list': {\n listStyle: 'none',\n margin: '0',\n padding: '0'\n },\n 'header-user-menu__navigation-menu': {\n background: 'white',\n border: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n borderRight: '0',\n position: 'absolute',\n right: '0',\n top: '60px', // defined in mashlib as a SASS variable $icon_size\n width: '200px',\n 'z-index': '1',\n '&[aria-hidden = true]': {\n display: 'none'\n }\n },\n 'header-user-menu__list-item': {\n borderBottom: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n '&:last-child': {\n border: '0'\n }\n },\n 'header-user-menu__photo': {\n borderRadius: '50%',\n backgroundPosition: 'center',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n height: '50px', // $icon-size - $image-margin * 2 image-margin was 5px in mashlib and icon size 60px\n width: '50px'\n },\n 'header-banner': {\n boxShadow: '0px 1px 4px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n display: 'flex',\n justifyContent: 'space-between',\n padding: '0 1.5em',\n marginBottom: '4px'\n },\n 'header-banner__link': {\n display: 'block'\n },\n 'header-banner__right-menu': {\n display: 'flex'\n },\n 'header-banner__login': {\n marginLeft: 'auto',\n input: {\n // hacks to override the default style of login and signup button from solid-ui\n margin: '0.75em 0 0.75em 0.5em !important',\n padding: '0.5em !important'\n }\n },\n 'header-banner__user-menu': {\n borderLeft: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n marginLeft: 'auto'\n },\n 'header-banner__help-menu': {\n borderLeft: 'solid 1px #000000', // the color was defined in mashlib as a SASS variable $divider_color\n marginLeft: 'auto'\n },\n 'header-banner__icon': {\n backgroundSize: '65px 60px',\n height: '60px !important', // this is the icon size\n width: '65px !important' // may just be 65px round($icon-size * 352 / 322);\n },\n 'header-banner__help-icon': {\n backgroundSize: '55px 50px',\n height: '50px !important', // this is the icon size\n width: '55px !important' // may just be 65px round($icon-size * 352 / 430);\n }\n}\n"],"file":"styleMap.js"}
package/lib/iconBase.d.ts CHANGED
File without changes
File without changes
package/lib/iconBase.js CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/lib/index.d.ts CHANGED
File without changes
File without changes
package/lib/index.js CHANGED
File without changes
package/lib/index.js.map CHANGED
File without changes
File without changes
File without changes
package/lib/jss/index.js CHANGED
File without changes
File without changes
package/lib/log.d.ts CHANGED
File without changes
package/lib/log.d.ts.map CHANGED
File without changes
package/lib/log.js CHANGED
File without changes
package/lib/log.js.map CHANGED
File without changes
package/lib/logic.d.ts CHANGED
File without changes
File without changes
package/lib/logic.js CHANGED
File without changes
package/lib/logic.js.map CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/lib/ns.js CHANGED
File without changes
package/lib/ns.js.map CHANGED
File without changes
package/lib/pad.d.ts CHANGED
File without changes
package/lib/pad.d.ts.map CHANGED
File without changes
package/lib/pad.js CHANGED
File without changes
package/lib/pad.js.map CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes