@pictogrammers/components 0.3.1

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 (379) hide show
  1. package/@types/css.d.ts +4 -0
  2. package/@types/html.d.ts +4 -0
  3. package/README.md +49 -0
  4. package/dist/main.js +3819 -0
  5. package/dist/pgAnnoy.js +116 -0
  6. package/dist/pgAvatar.js +136 -0
  7. package/dist/pgButton.js +116 -0
  8. package/dist/pgButtonGroup.js +116 -0
  9. package/dist/pgButtonLink.js +116 -0
  10. package/dist/pgButtonToggle.js +146 -0
  11. package/dist/pgCard.js +116 -0
  12. package/dist/pgCardUser.js +196 -0
  13. package/dist/pgColor.js +136 -0
  14. package/dist/pgDatabase.js +236 -0
  15. package/dist/pgDropdown.js +686 -0
  16. package/dist/pgGrid.js +126 -0
  17. package/dist/pgHeader.js +116 -0
  18. package/dist/pgIcon.js +116 -0
  19. package/dist/pgInputCheck.js +116 -0
  20. package/dist/pgInputCheckList.js +126 -0
  21. package/dist/pgInputFileLocal.js +116 -0
  22. package/dist/pgInputHexRgb.js +126 -0
  23. package/dist/pgInputRange.js +116 -0
  24. package/dist/pgInputSelect.js +116 -0
  25. package/dist/pgInputText.js +116 -0
  26. package/dist/pgInputTextIcon.js +176 -0
  27. package/dist/pgInputUserSelect.js +116 -0
  28. package/dist/pgListTag.js +136 -0
  29. package/dist/pgMarkdown.js +346 -0
  30. package/dist/pgMenuIcon.js +206 -0
  31. package/dist/pgModalAlert.js +126 -0
  32. package/dist/pgModification.js +396 -0
  33. package/dist/pgNav.js +116 -0
  34. package/dist/pgOverlay.js +96 -0
  35. package/dist/pgPicker.js +116 -0
  36. package/dist/pgPreview.js +116 -0
  37. package/dist/pgScroll.js +266 -0
  38. package/dist/pgSearch.js +146 -0
  39. package/dist/pgTab.js +116 -0
  40. package/dist/pgTabs.js +136 -0
  41. package/dist/pgToast.js +136 -0
  42. package/dist/pgToasts.js +136 -0
  43. package/dist/pgTooltip.js +126 -0
  44. package/index.html +302 -0
  45. package/package.json +25 -0
  46. package/pg/annoy/README.md +18 -0
  47. package/pg/annoy/__examples__/basic/basic.html +8 -0
  48. package/pg/annoy/__examples__/basic/basic.ts +11 -0
  49. package/pg/annoy/annoy.css +238 -0
  50. package/pg/annoy/annoy.html +59 -0
  51. package/pg/annoy/annoy.ts +48 -0
  52. package/pg/annoy/index.ts +3 -0
  53. package/pg/avatar/README.md +23 -0
  54. package/pg/avatar/__examples__/basic/basic.html +6 -0
  55. package/pg/avatar/__examples__/basic/basic.ts +41 -0
  56. package/pg/avatar/__examples__/basic/constants.ts +1 -0
  57. package/pg/avatar/avatar.css +45 -0
  58. package/pg/avatar/avatar.html +8 -0
  59. package/pg/avatar/avatar.spec.ts +51 -0
  60. package/pg/avatar/avatar.ts +37 -0
  61. package/pg/avatar/index.ts +3 -0
  62. package/pg/button/README.md +51 -0
  63. package/pg/button/__examples__/basic/basic.html +11 -0
  64. package/pg/button/__examples__/basic/basic.ts +11 -0
  65. package/pg/button/__examples__/states/states.html +8 -0
  66. package/pg/button/__examples__/states/states.ts +20 -0
  67. package/pg/button/button.css +91 -0
  68. package/pg/button/button.html +3 -0
  69. package/pg/button/button.ts +45 -0
  70. package/pg/button/index.ts +3 -0
  71. package/pg/buttonGroup/README.md +28 -0
  72. package/pg/buttonGroup/__examples__/basic/basic.html +12 -0
  73. package/pg/buttonGroup/__examples__/basic/basic.ts +11 -0
  74. package/pg/buttonGroup/buttonGroup.css +4 -0
  75. package/pg/buttonGroup/buttonGroup.html +1 -0
  76. package/pg/buttonGroup/buttonGroup.spec.ts +30 -0
  77. package/pg/buttonGroup/buttonGroup.ts +50 -0
  78. package/pg/buttonGroup/index.ts +3 -0
  79. package/pg/buttonLink/README.md +51 -0
  80. package/pg/buttonLink/__examples__/basic/basic.html +17 -0
  81. package/pg/buttonLink/__examples__/basic/basic.ts +11 -0
  82. package/pg/buttonLink/buttonLink.css +91 -0
  83. package/pg/buttonLink/buttonLink.html +3 -0
  84. package/pg/buttonLink/buttonLink.ts +46 -0
  85. package/pg/buttonLink/index.ts +3 -0
  86. package/pg/buttonToggle/README.md +54 -0
  87. package/pg/buttonToggle/__examples__/basic/basic.html +10 -0
  88. package/pg/buttonToggle/__examples__/basic/basic.ts +23 -0
  89. package/pg/buttonToggle/buttonToggle.css +8 -0
  90. package/pg/buttonToggle/buttonToggle.html +4 -0
  91. package/pg/buttonToggle/buttonToggle.ts +44 -0
  92. package/pg/buttonToggle/index.ts +3 -0
  93. package/pg/card/README.md +21 -0
  94. package/pg/card/__examples__/basic/basic.html +5 -0
  95. package/pg/card/__examples__/basic/basic.ts +11 -0
  96. package/pg/card/card.css +11 -0
  97. package/pg/card/card.html +3 -0
  98. package/pg/card/card.spec.ts +30 -0
  99. package/pg/card/card.ts +13 -0
  100. package/pg/card/index.ts +3 -0
  101. package/pg/cardUser/README.md +22 -0
  102. package/pg/cardUser/__examples__/basic/basic.html +3 -0
  103. package/pg/cardUser/__examples__/basic/basic.ts +30 -0
  104. package/pg/cardUser/__examples__/basic/constants.ts +1 -0
  105. package/pg/cardUser/cardUser.css +67 -0
  106. package/pg/cardUser/cardUser.html +23 -0
  107. package/pg/cardUser/cardUser.spec.ts +46 -0
  108. package/pg/cardUser/cardUser.ts +53 -0
  109. package/pg/cardUser/index.ts +3 -0
  110. package/pg/color/README.md +13 -0
  111. package/pg/color/__examples__/basic/basic.html +4 -0
  112. package/pg/color/__examples__/basic/basic.ts +20 -0
  113. package/pg/color/color.css +21 -0
  114. package/pg/color/color.html +1 -0
  115. package/pg/color/color.ts +97 -0
  116. package/pg/color/constants.ts +357 -0
  117. package/pg/color/index.ts +3 -0
  118. package/pg/color/utils.ts +27 -0
  119. package/pg/database/README.md +28 -0
  120. package/pg/database/__examples__/basic/basic.html +9 -0
  121. package/pg/database/__examples__/basic/basic.ts +37 -0
  122. package/pg/database/database.css +0 -0
  123. package/pg/database/database.html +0 -0
  124. package/pg/database/database.ts +42 -0
  125. package/pg/database/index.ts +3 -0
  126. package/pg/dropdown/README.md +13 -0
  127. package/pg/dropdown/__examples__/basic/basic.html +14 -0
  128. package/pg/dropdown/__examples__/basic/basic.ts +11 -0
  129. package/pg/dropdown/dropdown.css +46 -0
  130. package/pg/dropdown/dropdown.html +5 -0
  131. package/pg/dropdown/dropdown.ts +60 -0
  132. package/pg/dropdown/index.ts +3 -0
  133. package/pg/grid/README.md +97 -0
  134. package/pg/grid/__examples__/basic/basic.html +29 -0
  135. package/pg/grid/__examples__/basic/basic.ts +139 -0
  136. package/pg/grid/grid.css +68 -0
  137. package/pg/grid/grid.html +6 -0
  138. package/pg/grid/grid.spec.ts +66 -0
  139. package/pg/grid/grid.ts +417 -0
  140. package/pg/grid/index.ts +3 -0
  141. package/pg/header/README.md +23 -0
  142. package/pg/header/__examples__/basic/basic.html +8 -0
  143. package/pg/header/__examples__/basic/basic.ts +11 -0
  144. package/pg/header/header.css +42 -0
  145. package/pg/header/header.html +15 -0
  146. package/pg/header/header.ts +28 -0
  147. package/pg/header/index.ts +3 -0
  148. package/pg/icon/README.md +26 -0
  149. package/pg/icon/__examples__/basic/basic.html +16 -0
  150. package/pg/icon/__examples__/basic/basic.ts +34 -0
  151. package/pg/icon/__examples__/basic/constants.ts +2 -0
  152. package/pg/icon/icon.css +9 -0
  153. package/pg/icon/icon.html +3 -0
  154. package/pg/icon/icon.spec.ts +46 -0
  155. package/pg/icon/icon.ts +23 -0
  156. package/pg/icon/index.ts +3 -0
  157. package/pg/inputCheck/README.md +32 -0
  158. package/pg/inputCheck/__examples__/basic/basic.html +8 -0
  159. package/pg/inputCheck/__examples__/basic/basic.ts +23 -0
  160. package/pg/inputCheck/index.ts +3 -0
  161. package/pg/inputCheck/inputCheck.css +45 -0
  162. package/pg/inputCheck/inputCheck.html +6 -0
  163. package/pg/inputCheck/inputCheck.ts +42 -0
  164. package/pg/inputCheckList/README.md +35 -0
  165. package/pg/inputCheckList/__examples__/basic/basic.html +4 -0
  166. package/pg/inputCheckList/__examples__/basic/basic.ts +31 -0
  167. package/pg/inputCheckList/index.ts +3 -0
  168. package/pg/inputCheckList/inputCheckList.css +70 -0
  169. package/pg/inputCheckList/inputCheckList.html +1 -0
  170. package/pg/inputCheckList/inputCheckList.ts +103 -0
  171. package/pg/inputCheckList/templates/option.html +8 -0
  172. package/pg/inputFileLocal/README.md +30 -0
  173. package/pg/inputFileLocal/__examples__/basic/basic.html +4 -0
  174. package/pg/inputFileLocal/__examples__/basic/basic.ts +23 -0
  175. package/pg/inputFileLocal/index.ts +3 -0
  176. package/pg/inputFileLocal/inputFileLocal.css +80 -0
  177. package/pg/inputFileLocal/inputFileLocal.html +5 -0
  178. package/pg/inputFileLocal/inputFileLocal.ts +82 -0
  179. package/pg/inputHexRgb/README.md +15 -0
  180. package/pg/inputHexRgb/__examples__/basic/basic.html +4 -0
  181. package/pg/inputHexRgb/__examples__/basic/basic.ts +23 -0
  182. package/pg/inputHexRgb/index.ts +3 -0
  183. package/pg/inputHexRgb/inputHexRgb.css +96 -0
  184. package/pg/inputHexRgb/inputHexRgb.html +9 -0
  185. package/pg/inputHexRgb/inputHexRgb.ts +79 -0
  186. package/pg/inputHexRgb/utils.ts +27 -0
  187. package/pg/inputRange/README.md +18 -0
  188. package/pg/inputRange/__examples__/basic/basic.html +9 -0
  189. package/pg/inputRange/__examples__/basic/basic.ts +30 -0
  190. package/pg/inputRange/index.ts +3 -0
  191. package/pg/inputRange/inputRange.css +0 -0
  192. package/pg/inputRange/inputRange.html +1 -0
  193. package/pg/inputRange/inputRange.ts +53 -0
  194. package/pg/inputSelect/README.md +25 -0
  195. package/pg/inputSelect/__examples__/basic/basic.html +6 -0
  196. package/pg/inputSelect/__examples__/basic/basic.ts +30 -0
  197. package/pg/inputSelect/index.ts +3 -0
  198. package/pg/inputSelect/inputSelect.css +36 -0
  199. package/pg/inputSelect/inputSelect.html +4 -0
  200. package/pg/inputSelect/inputSelect.ts +57 -0
  201. package/pg/inputText/README.md +27 -0
  202. package/pg/inputText/__examples__/basic/basic.html +9 -0
  203. package/pg/inputText/__examples__/basic/basic.ts +30 -0
  204. package/pg/inputText/index.ts +3 -0
  205. package/pg/inputText/inputText.css +20 -0
  206. package/pg/inputText/inputText.html +1 -0
  207. package/pg/inputText/inputText.spec.ts +59 -0
  208. package/pg/inputText/inputText.ts +59 -0
  209. package/pg/inputTextIcon/README.md +26 -0
  210. package/pg/inputTextIcon/index.ts +3 -0
  211. package/pg/inputTextIcon/inputTextIcon.css +24 -0
  212. package/pg/inputTextIcon/inputTextIcon.html +4 -0
  213. package/pg/inputTextIcon/inputTextIcon.spec.ts +44 -0
  214. package/pg/inputTextIcon/inputTextIcon.ts +26 -0
  215. package/pg/inputUserSelect/README.md +31 -0
  216. package/pg/inputUserSelect/__examples__/basic/basic.html +4 -0
  217. package/pg/inputUserSelect/__examples__/basic/basic.ts +25 -0
  218. package/pg/inputUserSelect/__examples__/basic/constants.ts +33 -0
  219. package/pg/inputUserSelect/index.ts +3 -0
  220. package/pg/inputUserSelect/inputUserSelect.css +174 -0
  221. package/pg/inputUserSelect/inputUserSelect.html +18 -0
  222. package/pg/inputUserSelect/inputUserSelect.ts +266 -0
  223. package/pg/listTag/README.md +26 -0
  224. package/pg/listTag/__examples__/basic/basic.html +16 -0
  225. package/pg/listTag/__examples__/basic/basic.ts +53 -0
  226. package/pg/listTag/__examples__/basic/constants.ts +22 -0
  227. package/pg/listTag/index.ts +3 -0
  228. package/pg/listTag/listTag.css +9 -0
  229. package/pg/listTag/listTag.html +1 -0
  230. package/pg/listTag/listTag.ts +48 -0
  231. package/pg/listTag/partials/tag.html +3 -0
  232. package/pg/markdown/README.md +13 -0
  233. package/pg/markdown/__examples__/basic/basic.html +3 -0
  234. package/pg/markdown/__examples__/basic/basic.ts +51 -0
  235. package/pg/markdown/__examples__/basic/constants.ts +129 -0
  236. package/pg/markdown/index.ts +5 -0
  237. package/pg/markdown/markdown.css +760 -0
  238. package/pg/markdown/markdown.html +1 -0
  239. package/pg/markdown/markdown.md +123 -0
  240. package/pg/markdown/markdown.spec.ts +87 -0
  241. package/pg/markdown/markdown.ts +381 -0
  242. package/pg/markdown/markdownReplace.ts +7 -0
  243. package/pg/menuIcon/README.md +13 -0
  244. package/pg/menuIcon/__examples__/basic/basic.html +3 -0
  245. package/pg/menuIcon/__examples__/basic/basic.ts +15 -0
  246. package/pg/menuIcon/index.ts +3 -0
  247. package/pg/menuIcon/menuIcon.css +168 -0
  248. package/pg/menuIcon/menuIcon.html +64 -0
  249. package/pg/menuIcon/menuIcon.ts +271 -0
  250. package/pg/modalAlert/README.md +17 -0
  251. package/pg/modalAlert/__examples__/basic/basic.html +4 -0
  252. package/pg/modalAlert/__examples__/basic/basic.ts +27 -0
  253. package/pg/modalAlert/index.ts +3 -0
  254. package/pg/modalAlert/modalAlert.css +43 -0
  255. package/pg/modalAlert/modalAlert.html +22 -0
  256. package/pg/modalAlert/modalAlert.ts +45 -0
  257. package/pg/modification/README.md +34 -0
  258. package/pg/modification/__examples__/basic/basic.html +8 -0
  259. package/pg/modification/__examples__/basic/basic.ts +63 -0
  260. package/pg/modification/__examples__/basic/constants.ts +416 -0
  261. package/pg/modification/index.ts +3 -0
  262. package/pg/modification/modification.css +311 -0
  263. package/pg/modification/modification.html +1 -0
  264. package/pg/modification/modification.spec.ts +33 -0
  265. package/pg/modification/modification.ts +201 -0
  266. package/pg/modification/type/date.html +1 -0
  267. package/pg/modification/type/iconAliasCreated.html +13 -0
  268. package/pg/modification/type/iconAliasDeleted.html +13 -0
  269. package/pg/modification/type/iconAuthorModified.html +13 -0
  270. package/pg/modification/type/iconCreated.html +13 -0
  271. package/pg/modification/type/iconDeleted.html +13 -0
  272. package/pg/modification/type/iconDeprecated.html +13 -0
  273. package/pg/modification/type/iconDescriptionModified.html +10 -0
  274. package/pg/modification/type/iconModified.html +14 -0
  275. package/pg/modification/type/iconRenamed.html +13 -0
  276. package/pg/modification/type/iconTagCreated.html +13 -0
  277. package/pg/modification/type/iconTagDeleted.html +13 -0
  278. package/pg/modification/type/news.html +5 -0
  279. package/pg/nav/README.md +16 -0
  280. package/pg/nav/__examples__/basic/basic.html +5 -0
  281. package/pg/nav/__examples__/basic/basic.ts +11 -0
  282. package/pg/nav/index.ts +3 -0
  283. package/pg/nav/nav.css +14 -0
  284. package/pg/nav/nav.html +16 -0
  285. package/pg/nav/nav.ts +21 -0
  286. package/pg/overlay/README.md +37 -0
  287. package/pg/overlay/__examples__/basic/basic.css +3 -0
  288. package/pg/overlay/__examples__/basic/basic.html +3 -0
  289. package/pg/overlay/__examples__/basic/basic.ts +13 -0
  290. package/pg/overlay/index.ts +3 -0
  291. package/pg/overlay/overlay.ts +26 -0
  292. package/pg/picker/README.md +13 -0
  293. package/pg/picker/index.ts +3 -0
  294. package/pg/picker/picker.css +56 -0
  295. package/pg/picker/picker.html +8 -0
  296. package/pg/picker/picker.ts +66 -0
  297. package/pg/preview/README.md +19 -0
  298. package/pg/preview/__examples__/basic/basic.html +11 -0
  299. package/pg/preview/__examples__/basic/basic.ts +22 -0
  300. package/pg/preview/index.ts +3 -0
  301. package/pg/preview/preview.css +34 -0
  302. package/pg/preview/preview.html +5 -0
  303. package/pg/preview/preview.ts +38 -0
  304. package/pg/scroll/README.md +42 -0
  305. package/pg/scroll/__examples__/basic/basic.css +4 -0
  306. package/pg/scroll/__examples__/basic/basic.html +11 -0
  307. package/pg/scroll/__examples__/basic/basic.ts +88 -0
  308. package/pg/scroll/index.ts +3 -0
  309. package/pg/scroll/scroll.css +7 -0
  310. package/pg/scroll/scroll.html +3 -0
  311. package/pg/scroll/scroll.ts +158 -0
  312. package/pg/search/README.md +59 -0
  313. package/pg/search/__examples__/basic/basic.html +3 -0
  314. package/pg/search/__examples__/basic/basic.ts +29 -0
  315. package/pg/search/__examples__/basic/constants.ts +3 -0
  316. package/pg/search/index.ts +3 -0
  317. package/pg/search/search.css +188 -0
  318. package/pg/search/search.html +18 -0
  319. package/pg/search/search.ts +252 -0
  320. package/pg/search/utils.ts +12 -0
  321. package/pg/shared/README.md +28 -0
  322. package/pg/shared/copy.ts +25 -0
  323. package/pg/shared/database.ts +35 -0
  324. package/pg/shared/databaseService.ts +230 -0
  325. package/pg/shared/debounce.ts +12 -0
  326. package/pg/shared/enums/modificationType.ts +19 -0
  327. package/pg/shared/filter.ts +14 -0
  328. package/pg/shared/http.ts +83 -0
  329. package/pg/shared/iconFilter.spec.ts +61 -0
  330. package/pg/shared/iconFilter.ts +71 -0
  331. package/pg/shared/list.ts +34 -0
  332. package/pg/shared/models/alias.ts +40 -0
  333. package/pg/shared/models/font.ts +31 -0
  334. package/pg/shared/models/fontIcon.ts +25 -0
  335. package/pg/shared/models/fontVersion.ts +22 -0
  336. package/pg/shared/models/icon.ts +97 -0
  337. package/pg/shared/models/modification.ts +45 -0
  338. package/pg/shared/models/style.ts +12 -0
  339. package/pg/shared/models/tag.ts +37 -0
  340. package/pg/shared/models/user.ts +35 -0
  341. package/pg/shared/models/version.ts +20 -0
  342. package/pg/shared/removeDiacritics.ts +94 -0
  343. package/pg/shared/toast.ts +47 -0
  344. package/pg/shared/uuid.ts +6 -0
  345. package/pg/tab/README.md +18 -0
  346. package/pg/tab/index.ts +3 -0
  347. package/pg/tab/tab.css +13 -0
  348. package/pg/tab/tab.html +3 -0
  349. package/pg/tab/tab.ts +51 -0
  350. package/pg/tabs/README.md +31 -0
  351. package/pg/tabs/__examples__/basic/basic.html +13 -0
  352. package/pg/tabs/__examples__/basic/basic.ts +11 -0
  353. package/pg/tabs/index.ts +3 -0
  354. package/pg/tabs/partials/tab.html +3 -0
  355. package/pg/tabs/tabs.css +69 -0
  356. package/pg/tabs/tabs.html +4 -0
  357. package/pg/tabs/tabs.ts +102 -0
  358. package/pg/toast/README.md +13 -0
  359. package/pg/toast/index.ts +3 -0
  360. package/pg/toast/toast.css +112 -0
  361. package/pg/toast/toast.html +13 -0
  362. package/pg/toast/toast.ts +39 -0
  363. package/pg/toasts/README.md +37 -0
  364. package/pg/toasts/__examples__/basic/basic.html +11 -0
  365. package/pg/toasts/__examples__/basic/basic.ts +86 -0
  366. package/pg/toasts/index.ts +3 -0
  367. package/pg/toasts/toasts.css +8 -0
  368. package/pg/toasts/toasts.html +1 -0
  369. package/pg/toasts/toasts.ts +51 -0
  370. package/pg/tooltip/README.md +51 -0
  371. package/pg/tooltip/__examples__/basic/basic.css +38 -0
  372. package/pg/tooltip/__examples__/basic/basic.html +21 -0
  373. package/pg/tooltip/__examples__/basic/basic.ts +55 -0
  374. package/pg/tooltip/addTooltip.ts +31 -0
  375. package/pg/tooltip/index.ts +20 -0
  376. package/pg/tooltip/position.ts +15 -0
  377. package/pg/tooltip/tooltip.css +36 -0
  378. package/pg/tooltip/tooltip.html +4 -0
  379. package/pg/tooltip/tooltip.ts +170 -0
package/dist/pgGrid.js ADDED
@@ -0,0 +1,126 @@
1
+ /*
2
+ * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
3
+ * This devtool is neither made for production nor for readable output files.
4
+ * It uses "eval()" calls to create a separate source file in the browser devtools.
5
+ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
6
+ * or disable the default devtool with "devtool: false".
7
+ * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
8
+ */
9
+ /******/ (() => { // webpackBootstrap
10
+ /******/ "use strict";
11
+ /******/ var __webpack_modules__ = ({
12
+
13
+ /***/ "./node_modules/@pictogrammers/element/dist/element.esm.js":
14
+ /*!*****************************************************************!*\
15
+ !*** ./node_modules/@pictogrammers/element/dist/element.esm.js ***!
16
+ \*****************************************************************/
17
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
18
+
19
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Component\": () => (/* binding */ Component),\n/* harmony export */ \"Local\": () => (/* binding */ Local),\n/* harmony export */ \"Part\": () => (/* binding */ Part),\n/* harmony export */ \"Prop\": () => (/* binding */ Prop),\n/* harmony export */ \"TransmutePart\": () => (/* binding */ TransmutePart),\n/* harmony export */ \"getAttributes\": () => (/* binding */ getAttributes),\n/* harmony export */ \"node\": () => (/* binding */ node),\n/* harmony export */ \"selectComponent\": () => (/* binding */ selectComponent),\n/* harmony export */ \"selectPart\": () => (/* binding */ selectPart)\n/* harmony export */ });\nvar init = Symbol('init');\r\nvar template = Symbol('template');\r\nvar style = Symbol('style');\r\nvar parent = Symbol('parent');\r\nfunction extendTemplate(base, append) {\r\n if (append && append.match(/<parent\\/>/)) {\r\n return append.replace(/<parent\\/>/, base);\r\n }\r\n else {\r\n return \"\".concat(base).concat(append || '');\r\n }\r\n}\r\nfunction camelToDash(str) {\r\n return str.replace(/([a-zA-Z])(?=[A-Z])/g, '$1-').toLowerCase();\r\n}\r\nfunction dashToCamel(str) {\r\n return str.replace(/-([a-z])/g, function (m) { return m[1].toUpperCase(); });\r\n}\r\nfunction Component(config) {\r\n if (config === void 0) { config = {}; }\r\n return function (cls) {\r\n if (cls.prototype[parent]) {\r\n cls.prototype[parent].push(cls.prototype);\r\n cls.prototype[style] = \"\".concat(cls.prototype[style]).concat(config.style);\r\n cls.prototype[template] = extendTemplate(cls.prototype[template], config.template || null);\r\n }\r\n else {\r\n cls.prototype[parent] = [cls.prototype];\r\n cls.prototype[style] = config.style || '';\r\n cls.prototype[template] = config.template || '';\r\n }\r\n if (!cls.symbols) {\r\n cls.symbols = {};\r\n }\r\n var connectedCallback = cls.prototype.connectedCallback || (function () { });\r\n var disconnectedCallback = cls.prototype.disconnectedCallback || (function () { });\r\n cls.prototype.connectedCallback = function () {\r\n var _this = this;\r\n if (!this[init] && !config.template) {\r\n if (config.useShadow === false) {\r\n // Base class with no template\r\n }\r\n else {\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n }\r\n else if (!this[init] && config.template) {\r\n var $template = document.createElement('template');\r\n $template.innerHTML = \"\".concat(cls.prototype[template], \"<style>\").concat(cls.prototype[style], \"</style>\");\r\n var $node = document.importNode($template.content, true);\r\n if (config.useShadow === false) {\r\n this.appendChild($node);\r\n }\r\n else {\r\n this.attachShadow({ mode: 'open' }).appendChild($node);\r\n }\r\n }\r\n else if (this[init] && config.style) {\r\n /*if (this.shadowRoot) {\r\n const style = document.createElement('style');\r\n style.appendChild(document.createTextNode(config.style));\r\n this.appendChild(style);\r\n }*/\r\n // } else if (this[init] && config.template) {\r\n // This is allowed now via <parent/>\r\n // throw new Error('template from base class cannot be overriden. Fix: remove template from @Component');\r\n }\r\n else if (this[init] && !config.template) {\r\n throw new Error('You need to pass a template for an extended element.');\r\n }\r\n if (this.componentWillMount) {\r\n this.componentWillMount();\r\n }\r\n this[parent].map(function (p) {\r\n if (p.render) {\r\n p.render.call(_this, cls.observedAttributes\r\n ? cls.observedAttributes.reduce(function (a, c) {\r\n var n = dashToCamel(c);\r\n a[n] = true;\r\n return a;\r\n }, {})\r\n : {});\r\n }\r\n });\r\n this[init] = true;\r\n connectedCallback.call(this);\r\n if (this.componentDidMount) {\r\n this.componentDidMount();\r\n }\r\n };\r\n cls.prototype.disconnectedCallback = function () {\r\n if (this.componentWillUnmount) {\r\n this.componentWillUnmount();\r\n }\r\n disconnectedCallback.call(this);\r\n if (this.componentDidUnmount) {\r\n this.componentDidUnmount();\r\n }\r\n };\r\n cls.prototype.attributeChangedCallback = function (name, oldValue, newValue) {\r\n var normalizedName = dashToCamel(name);\r\n this[normalizedName] = newValue;\r\n };\r\n if (config.selector && !window.customElements.get(config.selector)) {\r\n window.customElements.define(config.selector, cls);\r\n }\r\n };\r\n}\r\nvar transmute = Symbol('transmute');\r\nfunction TransmutePart(part, selector) {\r\n return function (cls) {\r\n var _a;\r\n if (cls.prototype[transmute]) {\r\n cls.prototype[transmute][part] = selector;\r\n }\r\n else {\r\n cls.prototype[transmute] = (_a = {}, _a[part] = selector, _a);\r\n }\r\n };\r\n}\r\nfunction Prop() {\r\n return function (target, propertyKey, descriptor) {\r\n var constructor = target.constructor;\r\n if (!constructor.observedAttributes) {\r\n constructor.observedAttributes = [];\r\n }\r\n var observedAttributes = constructor.observedAttributes;\r\n if (!constructor.symbols) {\r\n constructor.symbols = {};\r\n }\r\n var symbols = constructor.symbols;\r\n var normalizedPropertyKey = camelToDash(propertyKey);\r\n constructor.observedAttributes = observedAttributes.concat([normalizedPropertyKey]);\r\n var symbol = Symbol(propertyKey);\r\n symbols[propertyKey] = symbol;\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n return this[symbol];\r\n },\r\n set: function (value) {\r\n var _this = this;\r\n this[symbol] = value;\r\n if (this[init]) {\r\n this[parent].map(function (p) {\r\n var _a;\r\n if (p.render) {\r\n p.render.call(_this, (_a = {}, _a[propertyKey] = true, _a));\r\n }\r\n });\r\n }\r\n }\r\n });\r\n };\r\n}\r\nfunction Part() {\r\n return function (target, propertyKey, descriptor) {\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n var _a;\r\n var key = propertyKey.replace(/^\\$/, '');\r\n return (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(\"[part~=\".concat(key, \"]\"));\r\n }\r\n });\r\n };\r\n}\r\nfunction Local(initialValue, key) {\r\n if (initialValue === void 0) { initialValue = null; }\r\n return function (target, propertyKey, descriptor) {\r\n var getKey = function (self) {\r\n return (key ? key : \"\".concat(self.constructor.name, \":\").concat(propertyKey));\r\n };\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n var k = getKey(this);\r\n return window.localStorage.getItem(k) || initialValue;\r\n },\r\n set: function (value) {\r\n var k = getKey(this);\r\n if (value === null) {\r\n window.localStorage.removeItem(k);\r\n }\r\n else {\r\n window.localStorage.setItem(k, value);\r\n }\r\n }\r\n });\r\n };\r\n}\r\nfunction node(template, init) {\r\n var $template = document.createElement('template');\r\n $template.innerHTML = template;\r\n var $node = document.importNode($template.content, true);\r\n for (var _i = 0, _a = Object.entries(init); _i < _a.length; _i++) {\r\n var _b = _a[_i], part = _b[0], attributes = _b[1];\r\n var $part = $node.querySelector(\"[part~=\\\"\".concat(part, \"\\\"]\"));\r\n if ($part) {\r\n for (var _c = 0, _d = Object.entries(attributes); _c < _d.length; _c++) {\r\n var _e = _d[_c], prop = _e[0], value = _e[1];\r\n if (value instanceof Function) {\r\n var val = value();\r\n if (val === null) {\r\n $part.removeAttribute(prop);\r\n }\r\n else {\r\n $part.setAttribute(prop, value());\r\n }\r\n }\r\n else {\r\n $part[prop] = value;\r\n }\r\n }\r\n }\r\n }\r\n return $node;\r\n}\r\n// JEST\r\nfunction selectComponent(tag) {\r\n return document.querySelector(tag);\r\n}\r\nfunction selectPart(component, name) {\r\n return component.shadowRoot.querySelector(\"[part=\".concat(name, \"]\"));\r\n}\r\nfunction getAttributes(tag) {\r\n var symbols = customElements.get(tag).symbols;\r\n return Object.keys(symbols);\r\n}\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./node_modules/@pictogrammers/element/dist/element.esm.js?");
20
+
21
+ /***/ }),
22
+
23
+ /***/ "./src/pg/grid/grid.css":
24
+ /*!******************************!*\
25
+ !*** ./src/pg/grid/grid.css ***!
26
+ \******************************/
27
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
28
+
29
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\"* {\\r\\n font-family: var(--pg-font-family);\\r\\n}\\r\\n\\r\\n:host {\\r\\n display: block;\\r\\n}\\r\\n\\r\\n[part~=none] {\\r\\n display: none;\\r\\n}\\r\\n\\r\\n[part~=none].show {\\r\\n display: block;\\r\\n}\\r\\n\\r\\n[part~=grid] {\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n[part~=grid] > button {\\r\\n border: 0;\\r\\n background: transparent;\\r\\n padding: 0.625rem;\\r\\n outline: none;\\r\\n width: 2.75rem;\\r\\n height: 2.75rem;\\r\\n position: absolute;\\r\\n left: 0;\\r\\n top: 0;\\r\\n border: 0;\\r\\n border-radius: 0.25rem;\\r\\n}\\r\\n\\r\\n[part~=grid] > button.hover {\\r\\n background: rgba(0, 0, 0, 0.1);\\r\\n}\\r\\n\\r\\n[part~=grid] > button:focus,\\r\\n[part~=grid] > button:active {\\r\\n background: rgba(0, 0, 0, 0.15);\\r\\n box-shadow: 0 0.0125rem 0.25rem rgba(0, 0, 0, 0.2) inset;\\r\\n}\\r\\n\\r\\n[part~=grid] > button > svg {\\r\\n fill: #453C4F;\\r\\n width: 1.5rem;\\r\\n height: 1.5rem;\\r\\n}\\r\\n\\r\\n[part~=grid] > button > svg {\\r\\n fill: #453C4F;\\r\\n}\\r\\n\\r\\n[part~=grid]::-webkit-scrollbar {\\r\\n width: 1em;\\r\\n}\\r\\n\\r\\n[part~=grid]::-webkit-scrollbar-track {\\r\\n box-shadow: inset 0 0 6px rgba(0,0,0,0.2);\\r\\n border-radius: 0.25rem;\\r\\n}\\r\\n\\r\\n[part~=grid]::-webkit-scrollbar-thumb {\\r\\n background-color: #453C4F;\\r\\n outline: 1px solid slategrey;\\r\\n border-radius: 0.25rem;\\r\\n}\");\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/grid/grid.css?");
30
+
31
+ /***/ }),
32
+
33
+ /***/ "./src/pg/grid/grid.html":
34
+ /*!*******************************!*\
35
+ !*** ./src/pg/grid/grid.html ***!
36
+ \*******************************/
37
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
38
+
39
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\"<div part=\\\"none\\\">\\r\\n <slot></slot>\\r\\n</div>\\r\\n<pg-scroll part=\\\"scroll\\\">\\r\\n <div part=\\\"grid\\\"></div>\\r\\n</pg-scroll>\");\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/grid/grid.html?");
40
+
41
+ /***/ }),
42
+
43
+ /***/ "./src/pg/grid/grid.ts":
44
+ /*!*****************************!*\
45
+ !*** ./src/pg/grid/grid.ts ***!
46
+ \*****************************/
47
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
48
+
49
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @pictogrammers/element */ \"./node_modules/@pictogrammers/element/dist/element.esm.js\");\n/* harmony import */ var _shared_debounce__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../shared/debounce */ \"./src/pg/shared/debounce.ts\");\n/* harmony import */ var _grid_html__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./grid.html */ \"./src/pg/grid/grid.html\");\n/* harmony import */ var _grid_css__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./grid.css */ \"./src/pg/grid/grid.css\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n};\r\n\r\n// import { createPopper } from '@popperjs/core';\r\n\r\n\r\n\r\nconst KEY = {\r\n ArrowUp: 'ArrowUp',\r\n ArrowRight: 'ArrowRight',\r\n ArrowDown: 'ArrowDown',\r\n ArrowLeft: 'ArrowLeft'\r\n};\r\nlet PgGrid = class PgGrid extends HTMLElement {\r\n constructor() {\r\n super(...arguments);\r\n this.icons = [];\r\n this.size = 24;\r\n this.padding = 8;\r\n this.gap = 4;\r\n this.width = 'auto';\r\n this.height = 'auto';\r\n this.currentCount = 0;\r\n this.currentSize = 0;\r\n this.currentPadding = 0;\r\n this.currentGap = 0;\r\n this.rowHeight = 0;\r\n this.items = [];\r\n this.svg = 'http://www.w3.org/2000/svg';\r\n this.debounceRender = (0,_shared_debounce__WEBPACK_IMPORTED_MODULE_1__.debounce)(() => this.render({}), 300);\r\n this.color = 'svg';\r\n this.resizeObserver = new ResizeObserver(() => {\r\n this.debounceRender();\r\n });\r\n this.index = 0;\r\n this.hoverLast = 0;\r\n this.currentRow = 0;\r\n this.timeouts = [];\r\n this.cacheHeight = 0;\r\n this.cacheViewWidth = 0;\r\n this.canOpenTooltip = true;\r\n this.preventClose = false;\r\n this.currentIndex = 0;\r\n }\r\n connectedCallback() {\r\n this.resizeObserver.observe(this.$grid);\r\n this.addEventListener('mousemove', this.handleTooltip.bind(this));\r\n this.addEventListener('mouseleave', (e) => {\r\n this.index = -2;\r\n this.handleTooltip(e);\r\n });\r\n this.$scroll.addEventListener('calculate', (e) => {\r\n const { offsetY, height, viewWidth, viewHeight } = e.detail;\r\n this.calculate(offsetY, height, viewWidth, viewHeight);\r\n });\r\n }\r\n /**\r\n * Simplify all the mouse to usable data.\r\n *\r\n * @param e MouseEvent\r\n */\r\n getMetaFromMouse(e) {\r\n const { width, height, gap, extra } = this.getIconMetrics();\r\n var rect = e.target.getBoundingClientRect();\r\n const x = e.clientX - rect.left;\r\n const y = e.clientY - rect.top;\r\n console.log(x, y);\r\n const column = this.getColumnFromX(x, width, gap, extra);\r\n const row = this.getRowFromY(y, height, gap, extra);\r\n const index = column !== -1 && row !== -1 ? column + (row * this.columns) : -1;\r\n // First Column + [Other Columns + Extra Space] x column\r\n const gridX = (width + gap) + ((column - 1) * width) + (column * (gap + extra));\r\n const gridY = (row * height) + ((row + 1) * gap);\r\n return {\r\n gridX,\r\n gridY,\r\n x: gridX + rect.left,\r\n y: gridY + rect.top,\r\n width,\r\n height,\r\n column,\r\n row,\r\n gap,\r\n extra,\r\n index,\r\n icon: this.icons[index]\r\n };\r\n }\r\n getColumnFromX(x, width, gap, extra) {\r\n x = Math.round(x);\r\n if (x < gap) {\r\n return -1;\r\n }\r\n if (x <= width + gap) {\r\n return 0;\r\n }\r\n const column = Math.floor((x - width - gap) / (width + gap + extra)) + 1;\r\n const space = x - (column * (width + gap + extra));\r\n if (space < (gap + extra)) {\r\n return -1;\r\n }\r\n return column;\r\n }\r\n getRowFromY(y, height, gap, extra) {\r\n if (y < gap) {\r\n return -1;\r\n }\r\n if (y <= height + gap) {\r\n return 0;\r\n }\r\n const row = Math.floor((y - height - gap) / (height + gap)) + 1;\r\n const space = y - (row * (height + gap));\r\n if (space < gap) {\r\n return -1;\r\n }\r\n return row;\r\n }\r\n /**\r\n * Handle Tooltip\r\n *\r\n * this.index\r\n * -1 = closed\r\n * -2 = force close\r\n */\r\n handleTooltip(e) {\r\n const mouseMeta = this.getMetaFromMouse(e);\r\n const { column, index } = mouseMeta;\r\n if (this.hoverLast >= 0) {\r\n this.items[this.hoverLast][0].classList.toggle('hover', false);\r\n }\r\n var gridIndex = index - (this.currentRow * this.columns);\r\n if (gridIndex >= 0) {\r\n this.items[gridIndex][0].classList.toggle('hover', true);\r\n this.hoverLast = gridIndex;\r\n }\r\n if (this.index !== index) {\r\n if (index === -1 || this.index === -2) {\r\n mouseMeta.index = this.index;\r\n this.hideTooltip(this.icons[this.index], mouseMeta);\r\n this.index = -1;\r\n }\r\n else {\r\n if (this.icons[index]) {\r\n if (column > this.columns - 1) {\r\n mouseMeta.index = this.index;\r\n this.hideTooltip(this.icons[this.index], mouseMeta);\r\n this.index = -1;\r\n }\r\n else {\r\n this.showTooltip(this.icons[index], mouseMeta);\r\n this.index = index;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n updateHover() {\r\n this.items[this.index][0].classList.toggle('hover', false);\r\n }\r\n syncVirtual(count) {\r\n for (let i = this.currentCount; i < count; i++) {\r\n this.currentCount = i + 1;\r\n const btn = document.createElement('button');\r\n btn.dataset.index = `${i}`;\r\n btn.addEventListener('click', () => {\r\n const index = i + (this.columns * this.currentRow);\r\n this.handleClick(this.icons[index]);\r\n });\r\n btn.addEventListener('keydown', (e) => {\r\n const index = i + (this.columns * this.currentRow);\r\n this.moveFocus(e, index);\r\n });\r\n btn.addEventListener('contextmenu', (e) => {\r\n var rect = this.$grid.getBoundingClientRect();\r\n const x = Math.floor(e.clientX - rect.left);\r\n const y = Math.floor(e.clientY - rect.top);\r\n this.showContextMenu(i, x, y);\r\n e.preventDefault();\r\n });\r\n const svg = document.createElementNS(this.svg, 'svg');\r\n svg.setAttribute('viewBox', '0 0 24 24');\r\n const path = document.createElementNS(this.svg, 'path');\r\n svg.appendChild(path);\r\n btn.appendChild(svg);\r\n this.$grid.appendChild(btn);\r\n this.items.push([btn, svg, path]);\r\n }\r\n for (let i = this.currentCount; i > count; i--) {\r\n const ele = this.items.pop();\r\n this.$grid.removeChild(ele[0]);\r\n this.currentCount--;\r\n }\r\n const { size, padding, gap, width, height, rowHeight, scrollWidth, extra } = this.getIconMetrics();\r\n let x = gap;\r\n let y = gap;\r\n // todo reverse the code above to get the columnIndex\r\n this.items.forEach(([btn, svg], i) => {\r\n btn.style.padding = `${padding}px`;\r\n btn.style.width = `${width}px`;\r\n btn.style.height = `${height}px`;\r\n btn.style.transform = `translate(${x}px, ${y}px)`;\r\n svg.style.width = `${size}px`;\r\n svg.style.height = `${size}px`;\r\n x += width + gap + extra;\r\n if (i % this.columns === this.columns - 1) {\r\n y += height + gap;\r\n x = gap;\r\n }\r\n });\r\n }\r\n calculate(offsetY, height, viewWidth, viewHeight) {\r\n const rowHeight = this.rowHeight;\r\n const count = this.icons.length;\r\n const rows = Math.ceil(viewHeight / rowHeight) + 1;\r\n const row = Math.floor(offsetY / rowHeight);\r\n this.$grid.style.transform = `translateY(${-1 * offsetY % rowHeight}px)`;\r\n if (this.cacheHeight !== height || this.cacheViewWidth !== viewWidth) {\r\n this.syncVirtual(rows * this.columns);\r\n this.cacheHeight = height;\r\n this.cacheViewWidth = viewWidth;\r\n }\r\n if (this.currentRow !== row) {\r\n this.items.forEach(([btn, svg, path], i) => {\r\n const index = i + (row * this.columns);\r\n if (index < count) {\r\n path.setAttribute('d', this.icons[index].data);\r\n btn.style.display = 'block';\r\n }\r\n else {\r\n btn.style.display = 'none';\r\n }\r\n });\r\n this.currentRow = row;\r\n }\r\n }\r\n getIconMetrics() {\r\n const size = parseInt(this.size, 10);\r\n const padding = parseInt(this.padding, 10);\r\n const gap = parseInt(this.gap, 10);\r\n const { width: scrollWidth } = this.$scroll.getBoundingClientRect();\r\n const sizePadding = size + (padding * 2);\r\n const rowHeight = sizePadding + gap;\r\n const extra = (scrollWidth - gap - (rowHeight * this.columns)) / (this.columns - 1);\r\n return {\r\n size,\r\n padding,\r\n gap,\r\n width: sizePadding,\r\n height: sizePadding,\r\n rowHeight,\r\n extra,\r\n scrollWidth\r\n };\r\n }\r\n calculateColumns(width, rowHeight) {\r\n const actualWidth = width - this.currentGap;\r\n const columns = Math.floor(actualWidth / rowHeight);\r\n return columns > 0 ? columns : 1;\r\n }\r\n render(changes) {\r\n // Calculate Icon Size\r\n const { size, padding, gap, rowHeight, scrollWidth } = this.getIconMetrics();\r\n if (this.currentSize !== size || this.currentPadding !== padding || this.currentGap !== gap) {\r\n this.currentSize = size;\r\n this.currentPadding = padding;\r\n this.currentGap = gap;\r\n this.rowHeight = rowHeight;\r\n }\r\n // Calculate Columns\r\n const columns = this.calculateColumns(scrollWidth, rowHeight);\r\n if (this.columns !== columns) {\r\n this.columns = columns;\r\n }\r\n // Virtual Grid\r\n const count = this.icons.length;\r\n if (count) {\r\n const rows = Math.ceil(count / this.columns);\r\n this.currentRow = -1;\r\n console.log('---', gap + (rows * rowHeight));\r\n console.log('init', this.$scroll.height);\r\n this.$scroll.setAttribute('height', (gap + (rows * rowHeight)).toString());\r\n }\r\n else {\r\n this.$scroll.setAttribute('height', '0');\r\n }\r\n this.$none.classList.toggle('show', count === 0);\r\n }\r\n moveFocus(e, index) {\r\n let newIndex;\r\n switch (e.key) {\r\n case KEY.ArrowLeft:\r\n newIndex = index - 1;\r\n if (newIndex >= 0) {\r\n this.items[newIndex][0].focus();\r\n e.preventDefault();\r\n }\r\n break;\r\n case KEY.ArrowUp:\r\n newIndex = index - this.columns;\r\n if (newIndex >= 0) {\r\n this.items[newIndex][0].focus();\r\n e.preventDefault();\r\n }\r\n break;\r\n case KEY.ArrowRight:\r\n newIndex = index + 1;\r\n if (newIndex < this.icons.length) {\r\n this.items[newIndex][0].focus();\r\n e.preventDefault();\r\n }\r\n break;\r\n case KEY.ArrowDown:\r\n newIndex = index + this.columns;\r\n if (newIndex < this.icons.length) {\r\n this.items[newIndex][0].focus();\r\n e.preventDefault();\r\n }\r\n else if (newIndex !== this.icons.length - 1) {\r\n this.items[this.icons.length - 1][0].focus();\r\n e.preventDefault();\r\n }\r\n break;\r\n }\r\n }\r\n handleClick(icon) {\r\n this.dispatchEvent(new CustomEvent('select', {\r\n detail: icon\r\n }));\r\n }\r\n showContextMenu(index, x, y) {\r\n this.dispatchEvent(new CustomEvent('openmenu'));\r\n }\r\n hideContextMenu() {\r\n this.dispatchEvent(new CustomEvent('closemenu'));\r\n this.canOpenTooltip = true;\r\n }\r\n showTooltip(icon, mouseMeta) {\r\n if (!this.canOpenTooltip) {\r\n return;\r\n }\r\n this.dispatchEvent(new CustomEvent('entericon', {\r\n detail: mouseMeta\r\n }));\r\n }\r\n hideTooltip(icon, mouseMeta) {\r\n this.dispatchEvent(new CustomEvent('leaveicon', {\r\n detail: mouseMeta\r\n }));\r\n }\r\n getPositionFromIndex(index) {\r\n return {\r\n x: index % this.columns,\r\n y: Math.floor(index / this.columns)\r\n };\r\n }\r\n};\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgGrid.prototype, \"icons\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgGrid.prototype, \"size\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgGrid.prototype, \"padding\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgGrid.prototype, \"gap\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgGrid.prototype, \"width\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgGrid.prototype, \"height\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Part)()\r\n], PgGrid.prototype, \"$none\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Part)()\r\n], PgGrid.prototype, \"$scroll\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Part)()\r\n], PgGrid.prototype, \"$grid\", void 0);\r\nPgGrid = __decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Component)({\r\n selector: 'pg-grid',\r\n style: _grid_css__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\r\n template: _grid_html__WEBPACK_IMPORTED_MODULE_2__[\"default\"]\r\n })\r\n], PgGrid);\r\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PgGrid);\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/grid/grid.ts?");
50
+
51
+ /***/ }),
52
+
53
+ /***/ "./src/pg/shared/debounce.ts":
54
+ /*!***********************************!*\
55
+ !*** ./src/pg/shared/debounce.ts ***!
56
+ \***********************************/
57
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
58
+
59
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"debounce\": () => (/* binding */ debounce)\n/* harmony export */ });\nconst debounce = (func, waitFor) => {\r\n let timeout;\r\n return (...args) => new Promise(resolve => {\r\n if (timeout) {\r\n clearTimeout(timeout);\r\n }\r\n timeout = setTimeout(() => resolve(func(...args)), waitFor);\r\n });\r\n};\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/shared/debounce.ts?");
60
+
61
+ /***/ })
62
+
63
+ /******/ });
64
+ /************************************************************************/
65
+ /******/ // The module cache
66
+ /******/ var __webpack_module_cache__ = {};
67
+ /******/
68
+ /******/ // The require function
69
+ /******/ function __webpack_require__(moduleId) {
70
+ /******/ // Check if module is in cache
71
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
72
+ /******/ if (cachedModule !== undefined) {
73
+ /******/ return cachedModule.exports;
74
+ /******/ }
75
+ /******/ // Create a new module (and put it into the cache)
76
+ /******/ var module = __webpack_module_cache__[moduleId] = {
77
+ /******/ // no module.id needed
78
+ /******/ // no module.loaded needed
79
+ /******/ exports: {}
80
+ /******/ };
81
+ /******/
82
+ /******/ // Execute the module function
83
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
84
+ /******/
85
+ /******/ // Return the exports of the module
86
+ /******/ return module.exports;
87
+ /******/ }
88
+ /******/
89
+ /************************************************************************/
90
+ /******/ /* webpack/runtime/define property getters */
91
+ /******/ (() => {
92
+ /******/ // define getter functions for harmony exports
93
+ /******/ __webpack_require__.d = (exports, definition) => {
94
+ /******/ for(var key in definition) {
95
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
96
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
97
+ /******/ }
98
+ /******/ }
99
+ /******/ };
100
+ /******/ })();
101
+ /******/
102
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
103
+ /******/ (() => {
104
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
105
+ /******/ })();
106
+ /******/
107
+ /******/ /* webpack/runtime/make namespace object */
108
+ /******/ (() => {
109
+ /******/ // define __esModule on exports
110
+ /******/ __webpack_require__.r = (exports) => {
111
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
112
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
113
+ /******/ }
114
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
115
+ /******/ };
116
+ /******/ })();
117
+ /******/
118
+ /************************************************************************/
119
+ /******/
120
+ /******/ // startup
121
+ /******/ // Load entry module and return exports
122
+ /******/ // This entry module can't be inlined because the eval devtool is used.
123
+ /******/ var __webpack_exports__ = __webpack_require__("./src/pg/grid/grid.ts");
124
+ /******/
125
+ /******/ })()
126
+ ;
@@ -0,0 +1,116 @@
1
+ /*
2
+ * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
3
+ * This devtool is neither made for production nor for readable output files.
4
+ * It uses "eval()" calls to create a separate source file in the browser devtools.
5
+ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
6
+ * or disable the default devtool with "devtool: false".
7
+ * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
8
+ */
9
+ /******/ (() => { // webpackBootstrap
10
+ /******/ "use strict";
11
+ /******/ var __webpack_modules__ = ({
12
+
13
+ /***/ "./node_modules/@pictogrammers/element/dist/element.esm.js":
14
+ /*!*****************************************************************!*\
15
+ !*** ./node_modules/@pictogrammers/element/dist/element.esm.js ***!
16
+ \*****************************************************************/
17
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
18
+
19
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Component\": () => (/* binding */ Component),\n/* harmony export */ \"Local\": () => (/* binding */ Local),\n/* harmony export */ \"Part\": () => (/* binding */ Part),\n/* harmony export */ \"Prop\": () => (/* binding */ Prop),\n/* harmony export */ \"TransmutePart\": () => (/* binding */ TransmutePart),\n/* harmony export */ \"getAttributes\": () => (/* binding */ getAttributes),\n/* harmony export */ \"node\": () => (/* binding */ node),\n/* harmony export */ \"selectComponent\": () => (/* binding */ selectComponent),\n/* harmony export */ \"selectPart\": () => (/* binding */ selectPart)\n/* harmony export */ });\nvar init = Symbol('init');\r\nvar template = Symbol('template');\r\nvar style = Symbol('style');\r\nvar parent = Symbol('parent');\r\nfunction extendTemplate(base, append) {\r\n if (append && append.match(/<parent\\/>/)) {\r\n return append.replace(/<parent\\/>/, base);\r\n }\r\n else {\r\n return \"\".concat(base).concat(append || '');\r\n }\r\n}\r\nfunction camelToDash(str) {\r\n return str.replace(/([a-zA-Z])(?=[A-Z])/g, '$1-').toLowerCase();\r\n}\r\nfunction dashToCamel(str) {\r\n return str.replace(/-([a-z])/g, function (m) { return m[1].toUpperCase(); });\r\n}\r\nfunction Component(config) {\r\n if (config === void 0) { config = {}; }\r\n return function (cls) {\r\n if (cls.prototype[parent]) {\r\n cls.prototype[parent].push(cls.prototype);\r\n cls.prototype[style] = \"\".concat(cls.prototype[style]).concat(config.style);\r\n cls.prototype[template] = extendTemplate(cls.prototype[template], config.template || null);\r\n }\r\n else {\r\n cls.prototype[parent] = [cls.prototype];\r\n cls.prototype[style] = config.style || '';\r\n cls.prototype[template] = config.template || '';\r\n }\r\n if (!cls.symbols) {\r\n cls.symbols = {};\r\n }\r\n var connectedCallback = cls.prototype.connectedCallback || (function () { });\r\n var disconnectedCallback = cls.prototype.disconnectedCallback || (function () { });\r\n cls.prototype.connectedCallback = function () {\r\n var _this = this;\r\n if (!this[init] && !config.template) {\r\n if (config.useShadow === false) {\r\n // Base class with no template\r\n }\r\n else {\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n }\r\n else if (!this[init] && config.template) {\r\n var $template = document.createElement('template');\r\n $template.innerHTML = \"\".concat(cls.prototype[template], \"<style>\").concat(cls.prototype[style], \"</style>\");\r\n var $node = document.importNode($template.content, true);\r\n if (config.useShadow === false) {\r\n this.appendChild($node);\r\n }\r\n else {\r\n this.attachShadow({ mode: 'open' }).appendChild($node);\r\n }\r\n }\r\n else if (this[init] && config.style) {\r\n /*if (this.shadowRoot) {\r\n const style = document.createElement('style');\r\n style.appendChild(document.createTextNode(config.style));\r\n this.appendChild(style);\r\n }*/\r\n // } else if (this[init] && config.template) {\r\n // This is allowed now via <parent/>\r\n // throw new Error('template from base class cannot be overriden. Fix: remove template from @Component');\r\n }\r\n else if (this[init] && !config.template) {\r\n throw new Error('You need to pass a template for an extended element.');\r\n }\r\n if (this.componentWillMount) {\r\n this.componentWillMount();\r\n }\r\n this[parent].map(function (p) {\r\n if (p.render) {\r\n p.render.call(_this, cls.observedAttributes\r\n ? cls.observedAttributes.reduce(function (a, c) {\r\n var n = dashToCamel(c);\r\n a[n] = true;\r\n return a;\r\n }, {})\r\n : {});\r\n }\r\n });\r\n this[init] = true;\r\n connectedCallback.call(this);\r\n if (this.componentDidMount) {\r\n this.componentDidMount();\r\n }\r\n };\r\n cls.prototype.disconnectedCallback = function () {\r\n if (this.componentWillUnmount) {\r\n this.componentWillUnmount();\r\n }\r\n disconnectedCallback.call(this);\r\n if (this.componentDidUnmount) {\r\n this.componentDidUnmount();\r\n }\r\n };\r\n cls.prototype.attributeChangedCallback = function (name, oldValue, newValue) {\r\n var normalizedName = dashToCamel(name);\r\n this[normalizedName] = newValue;\r\n };\r\n if (config.selector && !window.customElements.get(config.selector)) {\r\n window.customElements.define(config.selector, cls);\r\n }\r\n };\r\n}\r\nvar transmute = Symbol('transmute');\r\nfunction TransmutePart(part, selector) {\r\n return function (cls) {\r\n var _a;\r\n if (cls.prototype[transmute]) {\r\n cls.prototype[transmute][part] = selector;\r\n }\r\n else {\r\n cls.prototype[transmute] = (_a = {}, _a[part] = selector, _a);\r\n }\r\n };\r\n}\r\nfunction Prop() {\r\n return function (target, propertyKey, descriptor) {\r\n var constructor = target.constructor;\r\n if (!constructor.observedAttributes) {\r\n constructor.observedAttributes = [];\r\n }\r\n var observedAttributes = constructor.observedAttributes;\r\n if (!constructor.symbols) {\r\n constructor.symbols = {};\r\n }\r\n var symbols = constructor.symbols;\r\n var normalizedPropertyKey = camelToDash(propertyKey);\r\n constructor.observedAttributes = observedAttributes.concat([normalizedPropertyKey]);\r\n var symbol = Symbol(propertyKey);\r\n symbols[propertyKey] = symbol;\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n return this[symbol];\r\n },\r\n set: function (value) {\r\n var _this = this;\r\n this[symbol] = value;\r\n if (this[init]) {\r\n this[parent].map(function (p) {\r\n var _a;\r\n if (p.render) {\r\n p.render.call(_this, (_a = {}, _a[propertyKey] = true, _a));\r\n }\r\n });\r\n }\r\n }\r\n });\r\n };\r\n}\r\nfunction Part() {\r\n return function (target, propertyKey, descriptor) {\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n var _a;\r\n var key = propertyKey.replace(/^\\$/, '');\r\n return (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(\"[part~=\".concat(key, \"]\"));\r\n }\r\n });\r\n };\r\n}\r\nfunction Local(initialValue, key) {\r\n if (initialValue === void 0) { initialValue = null; }\r\n return function (target, propertyKey, descriptor) {\r\n var getKey = function (self) {\r\n return (key ? key : \"\".concat(self.constructor.name, \":\").concat(propertyKey));\r\n };\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n var k = getKey(this);\r\n return window.localStorage.getItem(k) || initialValue;\r\n },\r\n set: function (value) {\r\n var k = getKey(this);\r\n if (value === null) {\r\n window.localStorage.removeItem(k);\r\n }\r\n else {\r\n window.localStorage.setItem(k, value);\r\n }\r\n }\r\n });\r\n };\r\n}\r\nfunction node(template, init) {\r\n var $template = document.createElement('template');\r\n $template.innerHTML = template;\r\n var $node = document.importNode($template.content, true);\r\n for (var _i = 0, _a = Object.entries(init); _i < _a.length; _i++) {\r\n var _b = _a[_i], part = _b[0], attributes = _b[1];\r\n var $part = $node.querySelector(\"[part~=\\\"\".concat(part, \"\\\"]\"));\r\n if ($part) {\r\n for (var _c = 0, _d = Object.entries(attributes); _c < _d.length; _c++) {\r\n var _e = _d[_c], prop = _e[0], value = _e[1];\r\n if (value instanceof Function) {\r\n var val = value();\r\n if (val === null) {\r\n $part.removeAttribute(prop);\r\n }\r\n else {\r\n $part.setAttribute(prop, value());\r\n }\r\n }\r\n else {\r\n $part[prop] = value;\r\n }\r\n }\r\n }\r\n }\r\n return $node;\r\n}\r\n// JEST\r\nfunction selectComponent(tag) {\r\n return document.querySelector(tag);\r\n}\r\nfunction selectPart(component, name) {\r\n return component.shadowRoot.querySelector(\"[part=\".concat(name, \"]\"));\r\n}\r\nfunction getAttributes(tag) {\r\n var symbols = customElements.get(tag).symbols;\r\n return Object.keys(symbols);\r\n}\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./node_modules/@pictogrammers/element/dist/element.esm.js?");
20
+
21
+ /***/ }),
22
+
23
+ /***/ "./src/pg/header/header.css":
24
+ /*!**********************************!*\
25
+ !*** ./src/pg/header/header.css ***!
26
+ \**********************************/
27
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
28
+
29
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\":host {\\r\\n display: block;\\r\\n}\\r\\nheader {\\r\\n display: grid;\\r\\n grid-template-columns: auto 1fr;\\r\\n grid-template-rows: 1fr;\\r\\n grid-row: 1;\\r\\n grid-column: 1 / span 2;\\r\\n background: var(--pg-header-background, #fff);\\r\\n color: var(--pg-header-color, #453C4F);\\r\\n font-family: var(--pg-font-family);\\r\\n height: 3rem;\\r\\n}\\r\\nheader > a {\\r\\n grid-column: 1;\\r\\n display: inline-flex;\\r\\n color: var(--pg-header-color, #453C4F);\\r\\n text-decoration: none;\\r\\n align-items: center;\\r\\n}\\r\\nheader > a svg,\\r\\nheader > a slot::slotted(svg) {\\r\\n display: inline-flex;\\r\\n width: 1.75rem;\\r\\n height: 1.75rem;\\r\\n margin: 0 0.75rem 0 1rem;\\r\\n}\\r\\nheader > a > span {\\r\\n display: inline-flex;\\r\\n color: var(--pg-header-color, #453C4F);\\r\\n font-size: 1.5rem;\\r\\n margin: 0;\\r\\n font-weight: normal;\\r\\n padding-bottom: 1px;\\r\\n}\\r\\nheader > div {\\r\\n display: flex;\\r\\n grid-column: 2;\\r\\n justify-self: right;\\r\\n margin-right: 1rem;\\r\\n}\");\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/header/header.css?");
30
+
31
+ /***/ }),
32
+
33
+ /***/ "./src/pg/header/header.html":
34
+ /*!***********************************!*\
35
+ !*** ./src/pg/header/header.html ***!
36
+ \***********************************/
37
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
38
+
39
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\"<header>\\r\\n <a href=\\\"/\\\">\\r\\n <slot name=\\\"logo\\\">\\r\\n <svg viewBox=\\\"0 0 24 24\\\">\\r\\n <path part=\\\"path\\\" fill=\\\"currentColor\\\" d=\\\"\\\"></path>\\r\\n </svg>\\r\\n </slot>\\r\\n <span part=\\\"name\\\"></span>\\r\\n </a>\\r\\n <div>\\r\\n <slot name=\\\"nav\\\"></slot>\\r\\n <slot name=\\\"search\\\"></slot>\\r\\n <slot name=\\\"menu\\\"></slot>\\r\\n </div>\\r\\n</header>\");\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/header/header.html?");
40
+
41
+ /***/ }),
42
+
43
+ /***/ "./src/pg/header/header.ts":
44
+ /*!*********************************!*\
45
+ !*** ./src/pg/header/header.ts ***!
46
+ \*********************************/
47
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
48
+
49
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @pictogrammers/element */ \"./node_modules/@pictogrammers/element/dist/element.esm.js\");\n/* harmony import */ var _header_html__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./header.html */ \"./src/pg/header/header.html\");\n/* harmony import */ var _header_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./header.css */ \"./src/pg/header/header.css\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n};\r\n\r\n\r\n\r\nconst noIcon = 'M0 0h24v24H0V0zm2 2v20h20V2H2z';\r\nlet PgHeader = class PgHeader extends HTMLElement {\r\n constructor() {\r\n super(...arguments);\r\n this.logo = noIcon;\r\n this.name = 'Default';\r\n }\r\n render(changes) {\r\n if (changes.logo) {\r\n this.$path.setAttribute('d', this.logo);\r\n }\r\n if (changes.name) {\r\n this.$name.innerText = this.name;\r\n }\r\n }\r\n};\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgHeader.prototype, \"logo\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgHeader.prototype, \"name\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Part)()\r\n], PgHeader.prototype, \"$path\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Part)()\r\n], PgHeader.prototype, \"$name\", void 0);\r\nPgHeader = __decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Component)({\r\n selector: 'pg-header',\r\n style: _header_css__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\r\n template: _header_html__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\r\n })\r\n], PgHeader);\r\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PgHeader);\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/header/header.ts?");
50
+
51
+ /***/ })
52
+
53
+ /******/ });
54
+ /************************************************************************/
55
+ /******/ // The module cache
56
+ /******/ var __webpack_module_cache__ = {};
57
+ /******/
58
+ /******/ // The require function
59
+ /******/ function __webpack_require__(moduleId) {
60
+ /******/ // Check if module is in cache
61
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
62
+ /******/ if (cachedModule !== undefined) {
63
+ /******/ return cachedModule.exports;
64
+ /******/ }
65
+ /******/ // Create a new module (and put it into the cache)
66
+ /******/ var module = __webpack_module_cache__[moduleId] = {
67
+ /******/ // no module.id needed
68
+ /******/ // no module.loaded needed
69
+ /******/ exports: {}
70
+ /******/ };
71
+ /******/
72
+ /******/ // Execute the module function
73
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
74
+ /******/
75
+ /******/ // Return the exports of the module
76
+ /******/ return module.exports;
77
+ /******/ }
78
+ /******/
79
+ /************************************************************************/
80
+ /******/ /* webpack/runtime/define property getters */
81
+ /******/ (() => {
82
+ /******/ // define getter functions for harmony exports
83
+ /******/ __webpack_require__.d = (exports, definition) => {
84
+ /******/ for(var key in definition) {
85
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
86
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
87
+ /******/ }
88
+ /******/ }
89
+ /******/ };
90
+ /******/ })();
91
+ /******/
92
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
93
+ /******/ (() => {
94
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
95
+ /******/ })();
96
+ /******/
97
+ /******/ /* webpack/runtime/make namespace object */
98
+ /******/ (() => {
99
+ /******/ // define __esModule on exports
100
+ /******/ __webpack_require__.r = (exports) => {
101
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
102
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
103
+ /******/ }
104
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
105
+ /******/ };
106
+ /******/ })();
107
+ /******/
108
+ /************************************************************************/
109
+ /******/
110
+ /******/ // startup
111
+ /******/ // Load entry module and return exports
112
+ /******/ // This entry module can't be inlined because the eval devtool is used.
113
+ /******/ var __webpack_exports__ = __webpack_require__("./src/pg/header/header.ts");
114
+ /******/
115
+ /******/ })()
116
+ ;
package/dist/pgIcon.js ADDED
@@ -0,0 +1,116 @@
1
+ /*
2
+ * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
3
+ * This devtool is neither made for production nor for readable output files.
4
+ * It uses "eval()" calls to create a separate source file in the browser devtools.
5
+ * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
6
+ * or disable the default devtool with "devtool: false".
7
+ * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
8
+ */
9
+ /******/ (() => { // webpackBootstrap
10
+ /******/ "use strict";
11
+ /******/ var __webpack_modules__ = ({
12
+
13
+ /***/ "./node_modules/@pictogrammers/element/dist/element.esm.js":
14
+ /*!*****************************************************************!*\
15
+ !*** ./node_modules/@pictogrammers/element/dist/element.esm.js ***!
16
+ \*****************************************************************/
17
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
18
+
19
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Component\": () => (/* binding */ Component),\n/* harmony export */ \"Local\": () => (/* binding */ Local),\n/* harmony export */ \"Part\": () => (/* binding */ Part),\n/* harmony export */ \"Prop\": () => (/* binding */ Prop),\n/* harmony export */ \"TransmutePart\": () => (/* binding */ TransmutePart),\n/* harmony export */ \"getAttributes\": () => (/* binding */ getAttributes),\n/* harmony export */ \"node\": () => (/* binding */ node),\n/* harmony export */ \"selectComponent\": () => (/* binding */ selectComponent),\n/* harmony export */ \"selectPart\": () => (/* binding */ selectPart)\n/* harmony export */ });\nvar init = Symbol('init');\r\nvar template = Symbol('template');\r\nvar style = Symbol('style');\r\nvar parent = Symbol('parent');\r\nfunction extendTemplate(base, append) {\r\n if (append && append.match(/<parent\\/>/)) {\r\n return append.replace(/<parent\\/>/, base);\r\n }\r\n else {\r\n return \"\".concat(base).concat(append || '');\r\n }\r\n}\r\nfunction camelToDash(str) {\r\n return str.replace(/([a-zA-Z])(?=[A-Z])/g, '$1-').toLowerCase();\r\n}\r\nfunction dashToCamel(str) {\r\n return str.replace(/-([a-z])/g, function (m) { return m[1].toUpperCase(); });\r\n}\r\nfunction Component(config) {\r\n if (config === void 0) { config = {}; }\r\n return function (cls) {\r\n if (cls.prototype[parent]) {\r\n cls.prototype[parent].push(cls.prototype);\r\n cls.prototype[style] = \"\".concat(cls.prototype[style]).concat(config.style);\r\n cls.prototype[template] = extendTemplate(cls.prototype[template], config.template || null);\r\n }\r\n else {\r\n cls.prototype[parent] = [cls.prototype];\r\n cls.prototype[style] = config.style || '';\r\n cls.prototype[template] = config.template || '';\r\n }\r\n if (!cls.symbols) {\r\n cls.symbols = {};\r\n }\r\n var connectedCallback = cls.prototype.connectedCallback || (function () { });\r\n var disconnectedCallback = cls.prototype.disconnectedCallback || (function () { });\r\n cls.prototype.connectedCallback = function () {\r\n var _this = this;\r\n if (!this[init] && !config.template) {\r\n if (config.useShadow === false) {\r\n // Base class with no template\r\n }\r\n else {\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n }\r\n else if (!this[init] && config.template) {\r\n var $template = document.createElement('template');\r\n $template.innerHTML = \"\".concat(cls.prototype[template], \"<style>\").concat(cls.prototype[style], \"</style>\");\r\n var $node = document.importNode($template.content, true);\r\n if (config.useShadow === false) {\r\n this.appendChild($node);\r\n }\r\n else {\r\n this.attachShadow({ mode: 'open' }).appendChild($node);\r\n }\r\n }\r\n else if (this[init] && config.style) {\r\n /*if (this.shadowRoot) {\r\n const style = document.createElement('style');\r\n style.appendChild(document.createTextNode(config.style));\r\n this.appendChild(style);\r\n }*/\r\n // } else if (this[init] && config.template) {\r\n // This is allowed now via <parent/>\r\n // throw new Error('template from base class cannot be overriden. Fix: remove template from @Component');\r\n }\r\n else if (this[init] && !config.template) {\r\n throw new Error('You need to pass a template for an extended element.');\r\n }\r\n if (this.componentWillMount) {\r\n this.componentWillMount();\r\n }\r\n this[parent].map(function (p) {\r\n if (p.render) {\r\n p.render.call(_this, cls.observedAttributes\r\n ? cls.observedAttributes.reduce(function (a, c) {\r\n var n = dashToCamel(c);\r\n a[n] = true;\r\n return a;\r\n }, {})\r\n : {});\r\n }\r\n });\r\n this[init] = true;\r\n connectedCallback.call(this);\r\n if (this.componentDidMount) {\r\n this.componentDidMount();\r\n }\r\n };\r\n cls.prototype.disconnectedCallback = function () {\r\n if (this.componentWillUnmount) {\r\n this.componentWillUnmount();\r\n }\r\n disconnectedCallback.call(this);\r\n if (this.componentDidUnmount) {\r\n this.componentDidUnmount();\r\n }\r\n };\r\n cls.prototype.attributeChangedCallback = function (name, oldValue, newValue) {\r\n var normalizedName = dashToCamel(name);\r\n this[normalizedName] = newValue;\r\n };\r\n if (config.selector && !window.customElements.get(config.selector)) {\r\n window.customElements.define(config.selector, cls);\r\n }\r\n };\r\n}\r\nvar transmute = Symbol('transmute');\r\nfunction TransmutePart(part, selector) {\r\n return function (cls) {\r\n var _a;\r\n if (cls.prototype[transmute]) {\r\n cls.prototype[transmute][part] = selector;\r\n }\r\n else {\r\n cls.prototype[transmute] = (_a = {}, _a[part] = selector, _a);\r\n }\r\n };\r\n}\r\nfunction Prop() {\r\n return function (target, propertyKey, descriptor) {\r\n var constructor = target.constructor;\r\n if (!constructor.observedAttributes) {\r\n constructor.observedAttributes = [];\r\n }\r\n var observedAttributes = constructor.observedAttributes;\r\n if (!constructor.symbols) {\r\n constructor.symbols = {};\r\n }\r\n var symbols = constructor.symbols;\r\n var normalizedPropertyKey = camelToDash(propertyKey);\r\n constructor.observedAttributes = observedAttributes.concat([normalizedPropertyKey]);\r\n var symbol = Symbol(propertyKey);\r\n symbols[propertyKey] = symbol;\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n return this[symbol];\r\n },\r\n set: function (value) {\r\n var _this = this;\r\n this[symbol] = value;\r\n if (this[init]) {\r\n this[parent].map(function (p) {\r\n var _a;\r\n if (p.render) {\r\n p.render.call(_this, (_a = {}, _a[propertyKey] = true, _a));\r\n }\r\n });\r\n }\r\n }\r\n });\r\n };\r\n}\r\nfunction Part() {\r\n return function (target, propertyKey, descriptor) {\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n var _a;\r\n var key = propertyKey.replace(/^\\$/, '');\r\n return (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(\"[part~=\".concat(key, \"]\"));\r\n }\r\n });\r\n };\r\n}\r\nfunction Local(initialValue, key) {\r\n if (initialValue === void 0) { initialValue = null; }\r\n return function (target, propertyKey, descriptor) {\r\n var getKey = function (self) {\r\n return (key ? key : \"\".concat(self.constructor.name, \":\").concat(propertyKey));\r\n };\r\n Object.defineProperty(target, propertyKey, {\r\n get: function () {\r\n var k = getKey(this);\r\n return window.localStorage.getItem(k) || initialValue;\r\n },\r\n set: function (value) {\r\n var k = getKey(this);\r\n if (value === null) {\r\n window.localStorage.removeItem(k);\r\n }\r\n else {\r\n window.localStorage.setItem(k, value);\r\n }\r\n }\r\n });\r\n };\r\n}\r\nfunction node(template, init) {\r\n var $template = document.createElement('template');\r\n $template.innerHTML = template;\r\n var $node = document.importNode($template.content, true);\r\n for (var _i = 0, _a = Object.entries(init); _i < _a.length; _i++) {\r\n var _b = _a[_i], part = _b[0], attributes = _b[1];\r\n var $part = $node.querySelector(\"[part~=\\\"\".concat(part, \"\\\"]\"));\r\n if ($part) {\r\n for (var _c = 0, _d = Object.entries(attributes); _c < _d.length; _c++) {\r\n var _e = _d[_c], prop = _e[0], value = _e[1];\r\n if (value instanceof Function) {\r\n var val = value();\r\n if (val === null) {\r\n $part.removeAttribute(prop);\r\n }\r\n else {\r\n $part.setAttribute(prop, value());\r\n }\r\n }\r\n else {\r\n $part[prop] = value;\r\n }\r\n }\r\n }\r\n }\r\n return $node;\r\n}\r\n// JEST\r\nfunction selectComponent(tag) {\r\n return document.querySelector(tag);\r\n}\r\nfunction selectPart(component, name) {\r\n return component.shadowRoot.querySelector(\"[part=\".concat(name, \"]\"));\r\n}\r\nfunction getAttributes(tag) {\r\n var symbols = customElements.get(tag).symbols;\r\n return Object.keys(symbols);\r\n}\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./node_modules/@pictogrammers/element/dist/element.esm.js?");
20
+
21
+ /***/ }),
22
+
23
+ /***/ "./src/pg/icon/icon.css":
24
+ /*!******************************!*\
25
+ !*** ./src/pg/icon/icon.css ***!
26
+ \******************************/
27
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
28
+
29
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\":host {\\r\\n display: inline-flex;\\r\\n color: var(--pg-icon-color, #453C4F);\\r\\n}\\r\\n\\r\\n[part=\\\"svg\\\"] {\\r\\n width: var(--pg-icon-width, 1.5rem);\\r\\n height: var(--pg-icon-height, 1.5rem);\\r\\n}\");\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/icon/icon.css?");
30
+
31
+ /***/ }),
32
+
33
+ /***/ "./src/pg/icon/icon.html":
34
+ /*!*******************************!*\
35
+ !*** ./src/pg/icon/icon.html ***!
36
+ \*******************************/
37
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
38
+
39
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (\"<svg part=\\\"svg\\\" viewBox=\\\"0 0 24 24\\\">\\r\\n <path part=\\\"path\\\" fill=\\\"currentColor\\\" d=\\\"M13,14H11V10H13M13,18H11V16H13M1,21H23L12,2L1,21Z\\\"/>\\r\\n</svg>\");\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/icon/icon.html?");
40
+
41
+ /***/ }),
42
+
43
+ /***/ "./src/pg/icon/icon.ts":
44
+ /*!*****************************!*\
45
+ !*** ./src/pg/icon/icon.ts ***!
46
+ \*****************************/
47
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
48
+
49
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var _pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @pictogrammers/element */ \"./node_modules/@pictogrammers/element/dist/element.esm.js\");\n/* harmony import */ var _icon_html__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./icon.html */ \"./src/pg/icon/icon.html\");\n/* harmony import */ var _icon_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./icon.css */ \"./src/pg/icon/icon.css\");\nvar __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n};\r\n\r\n\r\n\r\nconst noIcon = 'M0 0h24v24H0V0zm2 2v20h20V2H2z';\r\nlet PgIcon = class PgIcon extends HTMLElement {\r\n constructor() {\r\n super(...arguments);\r\n this.path = noIcon;\r\n }\r\n render(changes) {\r\n if (changes.path) {\r\n this.$path.setAttribute('d', this.path);\r\n }\r\n }\r\n};\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Prop)()\r\n], PgIcon.prototype, \"path\", void 0);\r\n__decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Part)()\r\n], PgIcon.prototype, \"$path\", void 0);\r\nPgIcon = __decorate([\r\n (0,_pictogrammers_element__WEBPACK_IMPORTED_MODULE_0__.Component)({\r\n selector: 'pg-icon',\r\n style: _icon_css__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\r\n template: _icon_html__WEBPACK_IMPORTED_MODULE_1__[\"default\"]\r\n })\r\n], PgIcon);\r\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PgIcon);\r\n\n\n//# sourceURL=webpack://@pictogrammers/components/./src/pg/icon/icon.ts?");
50
+
51
+ /***/ })
52
+
53
+ /******/ });
54
+ /************************************************************************/
55
+ /******/ // The module cache
56
+ /******/ var __webpack_module_cache__ = {};
57
+ /******/
58
+ /******/ // The require function
59
+ /******/ function __webpack_require__(moduleId) {
60
+ /******/ // Check if module is in cache
61
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
62
+ /******/ if (cachedModule !== undefined) {
63
+ /******/ return cachedModule.exports;
64
+ /******/ }
65
+ /******/ // Create a new module (and put it into the cache)
66
+ /******/ var module = __webpack_module_cache__[moduleId] = {
67
+ /******/ // no module.id needed
68
+ /******/ // no module.loaded needed
69
+ /******/ exports: {}
70
+ /******/ };
71
+ /******/
72
+ /******/ // Execute the module function
73
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
74
+ /******/
75
+ /******/ // Return the exports of the module
76
+ /******/ return module.exports;
77
+ /******/ }
78
+ /******/
79
+ /************************************************************************/
80
+ /******/ /* webpack/runtime/define property getters */
81
+ /******/ (() => {
82
+ /******/ // define getter functions for harmony exports
83
+ /******/ __webpack_require__.d = (exports, definition) => {
84
+ /******/ for(var key in definition) {
85
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
86
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
87
+ /******/ }
88
+ /******/ }
89
+ /******/ };
90
+ /******/ })();
91
+ /******/
92
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
93
+ /******/ (() => {
94
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
95
+ /******/ })();
96
+ /******/
97
+ /******/ /* webpack/runtime/make namespace object */
98
+ /******/ (() => {
99
+ /******/ // define __esModule on exports
100
+ /******/ __webpack_require__.r = (exports) => {
101
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
102
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
103
+ /******/ }
104
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
105
+ /******/ };
106
+ /******/ })();
107
+ /******/
108
+ /************************************************************************/
109
+ /******/
110
+ /******/ // startup
111
+ /******/ // Load entry module and return exports
112
+ /******/ // This entry module can't be inlined because the eval devtool is used.
113
+ /******/ var __webpack_exports__ = __webpack_require__("./src/pg/icon/icon.ts");
114
+ /******/
115
+ /******/ })()
116
+ ;