@pine-ds/core 2.14.0 → 2.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (722) hide show
  1. package/components/attributes.js +87 -0
  2. package/components/attributes.js.map +1 -0
  3. package/{dist/esm/pds-label-62469596.js → components/form.js} +2 -10
  4. package/components/form.js.map +1 -0
  5. package/components/index2.js +3 -2
  6. package/components/index2.js.map +1 -1
  7. package/components/pds-accordion.js +4 -7
  8. package/components/pds-accordion.js.map +1 -1
  9. package/components/pds-avatar.js +4 -7
  10. package/components/pds-avatar.js.map +1 -1
  11. package/components/pds-box.js +1 -1
  12. package/components/pds-box.js.map +1 -1
  13. package/components/pds-button2.js +6 -12
  14. package/components/pds-button2.js.map +1 -1
  15. package/components/pds-checkbox2.js +8 -10
  16. package/components/pds-checkbox2.js.map +1 -1
  17. package/components/pds-chip.js +4 -4
  18. package/components/pds-chip.js.map +1 -1
  19. package/components/pds-copytext.js +4 -7
  20. package/components/pds-copytext.js.map +1 -1
  21. package/components/pds-divider.js +4 -7
  22. package/components/pds-divider.js.map +1 -1
  23. package/components/pds-icon2.js +1 -1
  24. package/components/pds-icon2.js.map +1 -1
  25. package/components/pds-image.js +4 -7
  26. package/components/pds-image.js.map +1 -1
  27. package/components/pds-input.js +112 -12
  28. package/components/pds-input.js.map +1 -1
  29. package/components/pds-label.js +1 -29
  30. package/components/pds-label.js.map +1 -1
  31. package/components/pds-link.js +5 -8
  32. package/components/pds-link.js.map +1 -1
  33. package/components/pds-loader.js +4 -7
  34. package/components/pds-loader.js.map +1 -1
  35. package/components/pds-popover.js +1 -1
  36. package/components/pds-popover.js.map +1 -1
  37. package/components/pds-progress.js +4 -7
  38. package/components/pds-progress.js.map +1 -1
  39. package/components/pds-radio.js +8 -10
  40. package/components/pds-radio.js.map +1 -1
  41. package/components/pds-row.js +1 -1
  42. package/components/pds-row.js.map +1 -1
  43. package/components/pds-select.js +6 -4
  44. package/components/pds-select.js.map +1 -1
  45. package/components/pds-sortable-item.js +1 -1
  46. package/components/pds-sortable-item.js.map +1 -1
  47. package/components/pds-sortable.js +4 -7
  48. package/components/pds-sortable.js.map +1 -1
  49. package/components/pds-switch.js +8 -10
  50. package/components/pds-switch.js.map +1 -1
  51. package/components/pds-tab.js +1 -1
  52. package/components/pds-tab.js.map +1 -1
  53. package/components/pds-table-body.js +3 -6
  54. package/components/pds-table-body.js.map +1 -1
  55. package/components/pds-table-cell2.js +5 -8
  56. package/components/pds-table-cell2.js.map +1 -1
  57. package/components/pds-table-head-cell2.js +6 -9
  58. package/components/pds-table-head-cell2.js.map +1 -1
  59. package/components/pds-table-head.js +4 -7
  60. package/components/pds-table-head.js.map +1 -1
  61. package/components/pds-table-row.js +4 -7
  62. package/components/pds-table-row.js.map +1 -1
  63. package/components/pds-table.js +3 -6
  64. package/components/pds-table.js.map +1 -1
  65. package/components/pds-tabpanel.js +1 -1
  66. package/components/pds-tabpanel.js.map +1 -1
  67. package/components/pds-tabs.js +4 -7
  68. package/components/pds-tabs.js.map +1 -1
  69. package/components/pds-text.js +1 -1
  70. package/components/pds-text.js.map +1 -1
  71. package/components/pds-textarea.js +108 -18
  72. package/components/pds-textarea.js.map +1 -1
  73. package/components/pds-tooltip.js +15 -8
  74. package/components/pds-tooltip.js.map +1 -1
  75. package/components/utils.js +21 -0
  76. package/components/utils.js.map +1 -0
  77. package/dist/cjs/attributes-73ee8de7.js +90 -0
  78. package/dist/cjs/attributes-73ee8de7.js.map +1 -0
  79. package/dist/cjs/{pds-label-05f073ea.js → form-4f00637c.js} +1 -10
  80. package/dist/cjs/form-4f00637c.js.map +1 -0
  81. package/dist/cjs/{index-3ad62856.js → index-034a8bb0.js} +4 -2
  82. package/dist/cjs/index-034a8bb0.js.map +1 -0
  83. package/dist/cjs/loader.cjs.js +1 -1
  84. package/dist/cjs/pds-accordion.cjs.entry.js +5 -8
  85. package/dist/cjs/pds-accordion.cjs.entry.js.map +1 -1
  86. package/dist/cjs/pds-avatar.cjs.entry.js +5 -8
  87. package/dist/cjs/pds-avatar.cjs.entry.js.map +1 -1
  88. package/dist/cjs/pds-box.cjs.entry.js +1 -1
  89. package/dist/cjs/pds-box.cjs.entry.js.map +1 -1
  90. package/dist/cjs/pds-button.cjs.entry.js +7 -13
  91. package/dist/cjs/pds-button.cjs.entry.js.map +1 -1
  92. package/dist/cjs/pds-checkbox.cjs.entry.js +9 -11
  93. package/dist/cjs/pds-checkbox.cjs.entry.js.map +1 -1
  94. package/dist/cjs/pds-chip.cjs.entry.js +5 -5
  95. package/dist/cjs/pds-chip.cjs.entry.js.map +1 -1
  96. package/dist/cjs/pds-copytext.cjs.entry.js +5 -8
  97. package/dist/cjs/pds-copytext.cjs.entry.js.map +1 -1
  98. package/dist/cjs/pds-divider.cjs.entry.js +4 -7
  99. package/dist/cjs/pds-divider.cjs.entry.js.map +1 -1
  100. package/dist/cjs/pds-icon.cjs.entry.js +1 -1
  101. package/dist/cjs/pds-icon.cjs.entry.js.map +1 -1
  102. package/dist/cjs/pds-image.cjs.entry.js +4 -7
  103. package/dist/cjs/pds-image.cjs.entry.js.map +1 -1
  104. package/dist/cjs/pds-input.cjs.entry.js +106 -12
  105. package/dist/cjs/pds-input.cjs.entry.js.map +1 -1
  106. package/dist/cjs/pds-label-e0d9a97d.js +13 -0
  107. package/dist/cjs/pds-label-e0d9a97d.js.map +1 -0
  108. package/dist/cjs/pds-link.cjs.entry.js +6 -9
  109. package/dist/cjs/pds-link.cjs.entry.js.map +1 -1
  110. package/dist/cjs/pds-loader.cjs.entry.js +4 -7
  111. package/dist/cjs/pds-loader.cjs.entry.js.map +1 -1
  112. package/dist/cjs/pds-popover.cjs.entry.js +1 -1
  113. package/dist/cjs/pds-popover.cjs.entry.js.map +1 -1
  114. package/dist/cjs/pds-progress.cjs.entry.js +4 -7
  115. package/dist/cjs/pds-progress.cjs.entry.js.map +1 -1
  116. package/dist/cjs/pds-radio.cjs.entry.js +9 -11
  117. package/dist/cjs/pds-radio.cjs.entry.js.map +1 -1
  118. package/dist/cjs/pds-row.cjs.entry.js +1 -1
  119. package/dist/cjs/pds-row.cjs.entry.js.map +1 -1
  120. package/dist/cjs/pds-select.cjs.entry.js +7 -5
  121. package/dist/cjs/pds-select.cjs.entry.js.map +1 -1
  122. package/dist/cjs/pds-sortable-item.cjs.entry.js +2 -2
  123. package/dist/cjs/pds-sortable-item.cjs.entry.js.map +1 -1
  124. package/dist/cjs/pds-sortable.cjs.entry.js +4 -7
  125. package/dist/cjs/pds-sortable.cjs.entry.js.map +1 -1
  126. package/dist/cjs/pds-switch.cjs.entry.js +9 -11
  127. package/dist/cjs/pds-switch.cjs.entry.js.map +1 -1
  128. package/dist/cjs/pds-tab.cjs.entry.js +1 -1
  129. package/dist/cjs/pds-tab.cjs.entry.js.map +1 -1
  130. package/dist/cjs/pds-table-body.cjs.entry.js +3 -6
  131. package/dist/cjs/pds-table-body.cjs.entry.js.map +1 -1
  132. package/dist/cjs/pds-table-cell.cjs.entry.js +5 -8
  133. package/dist/cjs/pds-table-cell.cjs.entry.js.map +1 -1
  134. package/dist/cjs/pds-table-head-cell.cjs.entry.js +6 -9
  135. package/dist/cjs/pds-table-head-cell.cjs.entry.js.map +1 -1
  136. package/dist/cjs/pds-table-head.cjs.entry.js +4 -7
  137. package/dist/cjs/pds-table-head.cjs.entry.js.map +1 -1
  138. package/dist/cjs/pds-table-row.cjs.entry.js +4 -7
  139. package/dist/cjs/pds-table-row.cjs.entry.js.map +1 -1
  140. package/dist/cjs/pds-table.cjs.entry.js +3 -6
  141. package/dist/cjs/pds-table.cjs.entry.js.map +1 -1
  142. package/dist/cjs/pds-tabpanel.cjs.entry.js +1 -1
  143. package/dist/cjs/pds-tabpanel.cjs.entry.js.map +1 -1
  144. package/dist/cjs/pds-tabs.cjs.entry.js +4 -7
  145. package/dist/cjs/pds-tabs.cjs.entry.js.map +1 -1
  146. package/dist/cjs/pds-text.cjs.entry.js +1 -1
  147. package/dist/cjs/pds-text.cjs.entry.js.map +1 -1
  148. package/dist/cjs/pds-textarea.cjs.entry.js +102 -18
  149. package/dist/cjs/pds-textarea.cjs.entry.js.map +1 -1
  150. package/dist/cjs/pds-tooltip.cjs.entry.js +15 -8
  151. package/dist/cjs/pds-tooltip.cjs.entry.js.map +1 -1
  152. package/dist/cjs/pine-core.cjs.js +1 -1
  153. package/dist/cjs/utils-39c972f8.js +24 -0
  154. package/dist/cjs/utils-39c972f8.js.map +1 -0
  155. package/dist/collection/components/pds-accordion/pds-accordion.css +20 -28
  156. package/dist/collection/components/pds-accordion/pds-accordion.js +3 -3
  157. package/dist/collection/components/pds-accordion/pds-accordion.js.map +1 -1
  158. package/dist/collection/components/pds-avatar/pds-avatar.css +12 -19
  159. package/dist/collection/components/pds-avatar/pds-avatar.js +3 -3
  160. package/dist/collection/components/pds-avatar/pds-avatar.js.map +1 -1
  161. package/dist/collection/components/pds-box/pds-box.css +21 -30
  162. package/dist/collection/components/pds-button/pds-button.css +48 -74
  163. package/dist/collection/components/pds-button/pds-button.js +3 -3
  164. package/dist/collection/components/pds-button/pds-button.js.map +1 -1
  165. package/dist/collection/components/pds-checkbox/pds-checkbox.css +32 -48
  166. package/dist/collection/components/pds-checkbox/pds-checkbox.js +5 -5
  167. package/dist/collection/components/pds-checkbox/pds-checkbox.js.map +1 -1
  168. package/dist/collection/components/pds-chip/pds-chip.css +75 -125
  169. package/dist/collection/components/pds-chip/pds-chip.js +3 -3
  170. package/dist/collection/components/pds-chip/pds-chip.js.map +1 -1
  171. package/dist/collection/components/pds-chip/pds-chip.tokens.css +23 -0
  172. package/dist/collection/components/pds-copytext/pds-copytext.css +23 -36
  173. package/dist/collection/components/pds-copytext/pds-copytext.js +3 -3
  174. package/dist/collection/components/pds-copytext/pds-copytext.js.map +1 -1
  175. package/dist/collection/components/pds-divider/pds-divider.css +29 -41
  176. package/dist/collection/components/pds-divider/pds-divider.js +3 -3
  177. package/dist/collection/components/pds-divider/pds-divider.js.map +1 -1
  178. package/dist/collection/components/pds-image/pds-image.css +1 -1
  179. package/dist/collection/components/pds-image/pds-image.js +4 -4
  180. package/dist/collection/components/pds-image/pds-image.js.map +1 -1
  181. package/dist/collection/components/pds-input/input-interface.js +2 -0
  182. package/dist/collection/components/pds-input/input-interface.js.map +1 -0
  183. package/dist/collection/components/pds-input/pds-input.css +34 -59
  184. package/dist/collection/components/pds-input/pds-input.js +215 -17
  185. package/dist/collection/components/pds-input/pds-input.js.map +1 -1
  186. package/dist/collection/components/pds-input/pds-input.tokens.css +6 -0
  187. package/dist/collection/components/pds-input/stories/pds-input.stories.js +8 -2
  188. package/dist/collection/components/pds-link/pds-link.css +15 -27
  189. package/dist/collection/components/pds-link/pds-link.js +4 -4
  190. package/dist/collection/components/pds-link/pds-link.js.map +1 -1
  191. package/dist/collection/components/pds-loader/pds-loader.css +16 -29
  192. package/dist/collection/components/pds-loader/pds-loader.js +3 -3
  193. package/dist/collection/components/pds-loader/pds-loader.js.map +1 -1
  194. package/dist/collection/components/pds-popover/pds-popover.css +14 -35
  195. package/dist/collection/components/pds-progress/pds-progress.css +11 -20
  196. package/dist/collection/components/pds-progress/pds-progress.js +3 -3
  197. package/dist/collection/components/pds-progress/pds-progress.js.map +1 -1
  198. package/dist/collection/components/pds-radio/pds-radio.css +28 -45
  199. package/dist/collection/components/pds-radio/pds-radio.js +5 -5
  200. package/dist/collection/components/pds-radio/pds-radio.js.map +1 -1
  201. package/dist/collection/components/pds-row/pds-row.css +2 -3
  202. package/dist/collection/components/pds-select/pds-select.css +23 -51
  203. package/dist/collection/components/pds-select/pds-select.js +3 -2
  204. package/dist/collection/components/pds-select/pds-select.js.map +1 -1
  205. package/dist/collection/components/pds-sortable/pds-sortable-item/pds-sortable-item.css +13 -22
  206. package/dist/collection/components/pds-sortable/pds-sortable.css +2 -4
  207. package/dist/collection/components/pds-sortable/pds-sortable.js +3 -3
  208. package/dist/collection/components/pds-sortable/pds-sortable.js.map +1 -1
  209. package/dist/collection/components/pds-switch/pds-switch.css +30 -51
  210. package/dist/collection/components/pds-switch/pds-switch.js +5 -5
  211. package/dist/collection/components/pds-switch/pds-switch.js.map +1 -1
  212. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js +3 -3
  213. package/dist/collection/components/pds-table/pds-table-body/pds-table-body.js.map +1 -1
  214. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.css +11 -18
  215. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js +4 -4
  216. package/dist/collection/components/pds-table/pds-table-cell/pds-table-cell.js.map +1 -1
  217. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.css +1 -2
  218. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js +3 -3
  219. package/dist/collection/components/pds-table/pds-table-head/pds-table-head.js.map +1 -1
  220. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.css +12 -19
  221. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js +4 -4
  222. package/dist/collection/components/pds-table/pds-table-head-cell/pds-table-head-cell.js.map +1 -1
  223. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.css +1 -2
  224. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js +3 -3
  225. package/dist/collection/components/pds-table/pds-table-row/pds-table-row.js.map +1 -1
  226. package/dist/collection/components/pds-table/pds-table.js +3 -3
  227. package/dist/collection/components/pds-table/pds-table.js.map +1 -1
  228. package/dist/collection/components/pds-tabs/pds-tab/pds-tab.css +23 -36
  229. package/dist/collection/components/pds-tabs/pds-tabpanel/pds-tabpanel.css +2 -2
  230. package/dist/collection/components/pds-tabs/pds-tabs.css +8 -11
  231. package/dist/collection/components/pds-tabs/pds-tabs.js +3 -3
  232. package/dist/collection/components/pds-tabs/pds-tabs.js.map +1 -1
  233. package/dist/collection/components/pds-text/pds-text.css +37 -58
  234. package/dist/collection/components/pds-textarea/pds-textarea.css +23 -39
  235. package/dist/collection/components/pds-textarea/pds-textarea.js +204 -17
  236. package/dist/collection/components/pds-textarea/pds-textarea.js.map +1 -1
  237. package/dist/collection/components/pds-textarea/stories/pds-textarea.stories.js +11 -1
  238. package/dist/collection/components/pds-textarea/textarea-interface.js.map +1 -1
  239. package/dist/collection/components/pds-tooltip/pds-tooltip.css +59 -64
  240. package/dist/collection/components/pds-tooltip/pds-tooltip.js +14 -4
  241. package/dist/collection/components/pds-tooltip/pds-tooltip.js.map +1 -1
  242. package/dist/collection/global/styles/utils/label.css +16 -0
  243. package/dist/collection/utils/attributes.js +84 -0
  244. package/dist/collection/utils/attributes.js.map +1 -0
  245. package/dist/collection/utils/utils.js +14 -3
  246. package/dist/collection/utils/utils.js.map +1 -1
  247. package/dist/docs.json +243 -18
  248. package/dist/esm/attributes-fe2c8c91.js +87 -0
  249. package/dist/esm/attributes-fe2c8c91.js.map +1 -0
  250. package/dist/esm/form-1b7b69e3.js +31 -0
  251. package/dist/esm/form-1b7b69e3.js.map +1 -0
  252. package/dist/esm/{index-56752d25.js → index-d320cfa9.js} +4 -3
  253. package/dist/esm/index-d320cfa9.js.map +1 -0
  254. package/dist/esm/loader.js +1 -1
  255. package/dist/esm/pds-accordion.entry.js +5 -8
  256. package/dist/esm/pds-accordion.entry.js.map +1 -1
  257. package/dist/esm/pds-avatar.entry.js +5 -8
  258. package/dist/esm/pds-avatar.entry.js.map +1 -1
  259. package/dist/esm/pds-box.entry.js +1 -1
  260. package/dist/esm/pds-box.entry.js.map +1 -1
  261. package/dist/esm/pds-button.entry.js +6 -12
  262. package/dist/esm/pds-button.entry.js.map +1 -1
  263. package/dist/esm/pds-checkbox.entry.js +9 -11
  264. package/dist/esm/pds-checkbox.entry.js.map +1 -1
  265. package/dist/esm/pds-chip.entry.js +5 -5
  266. package/dist/esm/pds-chip.entry.js.map +1 -1
  267. package/dist/esm/pds-copytext.entry.js +5 -8
  268. package/dist/esm/pds-copytext.entry.js.map +1 -1
  269. package/dist/esm/pds-divider.entry.js +4 -7
  270. package/dist/esm/pds-divider.entry.js.map +1 -1
  271. package/dist/esm/pds-icon.entry.js +1 -1
  272. package/dist/esm/pds-icon.entry.js.map +1 -1
  273. package/dist/esm/pds-image.entry.js +4 -7
  274. package/dist/esm/pds-image.entry.js.map +1 -1
  275. package/dist/esm/pds-input.entry.js +107 -13
  276. package/dist/esm/pds-input.entry.js.map +1 -1
  277. package/dist/esm/pds-label-949a17b6.js +11 -0
  278. package/dist/esm/pds-label-949a17b6.js.map +1 -0
  279. package/dist/esm/pds-link.entry.js +6 -9
  280. package/dist/esm/pds-link.entry.js.map +1 -1
  281. package/dist/esm/pds-loader.entry.js +4 -7
  282. package/dist/esm/pds-loader.entry.js.map +1 -1
  283. package/dist/esm/pds-popover.entry.js +1 -1
  284. package/dist/esm/pds-popover.entry.js.map +1 -1
  285. package/dist/esm/pds-progress.entry.js +4 -7
  286. package/dist/esm/pds-progress.entry.js.map +1 -1
  287. package/dist/esm/pds-radio.entry.js +9 -11
  288. package/dist/esm/pds-radio.entry.js.map +1 -1
  289. package/dist/esm/pds-row.entry.js +1 -1
  290. package/dist/esm/pds-row.entry.js.map +1 -1
  291. package/dist/esm/pds-select.entry.js +6 -4
  292. package/dist/esm/pds-select.entry.js.map +1 -1
  293. package/dist/esm/pds-sortable-item.entry.js +2 -2
  294. package/dist/esm/pds-sortable-item.entry.js.map +1 -1
  295. package/dist/esm/pds-sortable.entry.js +4 -7
  296. package/dist/esm/pds-sortable.entry.js.map +1 -1
  297. package/dist/esm/pds-switch.entry.js +9 -11
  298. package/dist/esm/pds-switch.entry.js.map +1 -1
  299. package/dist/esm/pds-tab.entry.js +1 -1
  300. package/dist/esm/pds-tab.entry.js.map +1 -1
  301. package/dist/esm/pds-table-body.entry.js +3 -6
  302. package/dist/esm/pds-table-body.entry.js.map +1 -1
  303. package/dist/esm/pds-table-cell.entry.js +5 -8
  304. package/dist/esm/pds-table-cell.entry.js.map +1 -1
  305. package/dist/esm/pds-table-head-cell.entry.js +6 -9
  306. package/dist/esm/pds-table-head-cell.entry.js.map +1 -1
  307. package/dist/esm/pds-table-head.entry.js +4 -7
  308. package/dist/esm/pds-table-head.entry.js.map +1 -1
  309. package/dist/esm/pds-table-row.entry.js +4 -7
  310. package/dist/esm/pds-table-row.entry.js.map +1 -1
  311. package/dist/esm/pds-table.entry.js +3 -6
  312. package/dist/esm/pds-table.entry.js.map +1 -1
  313. package/dist/esm/pds-tabpanel.entry.js +1 -1
  314. package/dist/esm/pds-tabpanel.entry.js.map +1 -1
  315. package/dist/esm/pds-tabs.entry.js +4 -7
  316. package/dist/esm/pds-tabs.entry.js.map +1 -1
  317. package/dist/esm/pds-text.entry.js +1 -1
  318. package/dist/esm/pds-text.entry.js.map +1 -1
  319. package/dist/esm/pds-textarea.entry.js +102 -18
  320. package/dist/esm/pds-textarea.entry.js.map +1 -1
  321. package/dist/esm/pds-tooltip.entry.js +15 -8
  322. package/dist/esm/pds-tooltip.entry.js.map +1 -1
  323. package/dist/esm/pine-core.js +1 -1
  324. package/dist/esm/utils-5e425aaf.js +21 -0
  325. package/dist/esm/utils-5e425aaf.js.map +1 -0
  326. package/dist/esm-es5/attributes-fe2c8c91.js +2 -0
  327. package/dist/esm-es5/attributes-fe2c8c91.js.map +1 -0
  328. package/dist/esm-es5/form-1b7b69e3.js +2 -0
  329. package/dist/esm-es5/form-1b7b69e3.js.map +1 -0
  330. package/dist/esm-es5/{index-56752d25.js → index-d320cfa9.js} +2 -2
  331. package/dist/{pine-core/p-dec11fa5.system.js.map → esm-es5/index-d320cfa9.js.map} +1 -1
  332. package/dist/esm-es5/loader.js +1 -1
  333. package/dist/esm-es5/loader.js.map +1 -1
  334. package/dist/esm-es5/pds-accordion.entry.js +1 -1
  335. package/dist/esm-es5/pds-accordion.entry.js.map +1 -1
  336. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  337. package/dist/esm-es5/pds-avatar.entry.js.map +1 -1
  338. package/dist/esm-es5/pds-box.entry.js +1 -1
  339. package/dist/esm-es5/pds-box.entry.js.map +1 -1
  340. package/dist/esm-es5/pds-button.entry.js +1 -1
  341. package/dist/esm-es5/pds-button.entry.js.map +1 -1
  342. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  343. package/dist/esm-es5/pds-checkbox.entry.js.map +1 -1
  344. package/dist/esm-es5/pds-chip.entry.js +1 -1
  345. package/dist/esm-es5/pds-chip.entry.js.map +1 -1
  346. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  347. package/dist/esm-es5/pds-copytext.entry.js.map +1 -1
  348. package/dist/esm-es5/pds-divider.entry.js +1 -1
  349. package/dist/esm-es5/pds-divider.entry.js.map +1 -1
  350. package/dist/esm-es5/pds-icon.entry.js +1 -1
  351. package/dist/esm-es5/pds-icon.entry.js.map +1 -1
  352. package/dist/esm-es5/pds-image.entry.js +1 -1
  353. package/dist/esm-es5/pds-image.entry.js.map +1 -1
  354. package/dist/esm-es5/pds-input.entry.js +1 -1
  355. package/dist/esm-es5/pds-input.entry.js.map +1 -1
  356. package/dist/esm-es5/pds-label-949a17b6.js +2 -0
  357. package/dist/esm-es5/pds-label-949a17b6.js.map +1 -0
  358. package/dist/esm-es5/pds-link.entry.js +1 -1
  359. package/dist/esm-es5/pds-link.entry.js.map +1 -1
  360. package/dist/esm-es5/pds-loader.entry.js +1 -1
  361. package/dist/esm-es5/pds-loader.entry.js.map +1 -1
  362. package/dist/esm-es5/pds-popover.entry.js +1 -1
  363. package/dist/esm-es5/pds-popover.entry.js.map +1 -1
  364. package/dist/esm-es5/pds-progress.entry.js +1 -1
  365. package/dist/esm-es5/pds-progress.entry.js.map +1 -1
  366. package/dist/esm-es5/pds-radio.entry.js +1 -1
  367. package/dist/esm-es5/pds-radio.entry.js.map +1 -1
  368. package/dist/esm-es5/pds-row.entry.js +1 -1
  369. package/dist/esm-es5/pds-row.entry.js.map +1 -1
  370. package/dist/esm-es5/pds-select.entry.js +1 -1
  371. package/dist/esm-es5/pds-select.entry.js.map +1 -1
  372. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  373. package/dist/esm-es5/pds-sortable-item.entry.js.map +1 -1
  374. package/dist/esm-es5/pds-sortable.entry.js +1 -1
  375. package/dist/esm-es5/pds-sortable.entry.js.map +1 -1
  376. package/dist/esm-es5/pds-switch.entry.js +1 -1
  377. package/dist/esm-es5/pds-switch.entry.js.map +1 -1
  378. package/dist/esm-es5/pds-tab.entry.js +1 -1
  379. package/dist/esm-es5/pds-tab.entry.js.map +1 -1
  380. package/dist/esm-es5/pds-table-body.entry.js +1 -1
  381. package/dist/esm-es5/pds-table-body.entry.js.map +1 -1
  382. package/dist/esm-es5/pds-table-cell.entry.js +1 -1
  383. package/dist/esm-es5/pds-table-cell.entry.js.map +1 -1
  384. package/dist/esm-es5/pds-table-head-cell.entry.js +1 -1
  385. package/dist/esm-es5/pds-table-head-cell.entry.js.map +1 -1
  386. package/dist/esm-es5/pds-table-head.entry.js +1 -1
  387. package/dist/esm-es5/pds-table-head.entry.js.map +1 -1
  388. package/dist/esm-es5/pds-table-row.entry.js +1 -1
  389. package/dist/esm-es5/pds-table-row.entry.js.map +1 -1
  390. package/dist/esm-es5/pds-table.entry.js +1 -1
  391. package/dist/esm-es5/pds-table.entry.js.map +1 -1
  392. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  393. package/dist/esm-es5/pds-tabpanel.entry.js.map +1 -1
  394. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  395. package/dist/esm-es5/pds-tabs.entry.js.map +1 -1
  396. package/dist/esm-es5/pds-text.entry.js +1 -1
  397. package/dist/esm-es5/pds-text.entry.js.map +1 -1
  398. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  399. package/dist/esm-es5/pds-textarea.entry.js.map +1 -1
  400. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  401. package/dist/esm-es5/pds-tooltip.entry.js.map +1 -1
  402. package/dist/esm-es5/pine-core.js +1 -1
  403. package/dist/esm-es5/pine-core.js.map +1 -1
  404. package/dist/esm-es5/utils-5e425aaf.js +2 -0
  405. package/dist/esm-es5/utils-5e425aaf.js.map +1 -0
  406. package/dist/pine-core/p-017e1978.system.js +2 -0
  407. package/dist/pine-core/p-017e1978.system.js.map +1 -0
  408. package/dist/pine-core/p-07a7c5bb.entry.js +2 -0
  409. package/dist/pine-core/p-07a7c5bb.entry.js.map +1 -0
  410. package/dist/pine-core/p-0c09ce7a.js +2 -0
  411. package/dist/pine-core/p-0c09ce7a.js.map +1 -0
  412. package/dist/pine-core/p-0e4226b8.entry.js +2 -0
  413. package/dist/pine-core/p-0e4226b8.entry.js.map +1 -0
  414. package/dist/pine-core/p-19be5a8e.system.entry.js +2 -0
  415. package/dist/pine-core/p-19be5a8e.system.entry.js.map +1 -0
  416. package/dist/pine-core/p-1da5aaf3.entry.js +2 -0
  417. package/dist/pine-core/p-1da5aaf3.entry.js.map +1 -0
  418. package/dist/pine-core/p-1e9d6f92.system.entry.js +2 -0
  419. package/dist/pine-core/p-1e9d6f92.system.entry.js.map +1 -0
  420. package/dist/pine-core/p-1edca70e.entry.js +8 -0
  421. package/dist/pine-core/{p-d3365f49.system.entry.js.map → p-1edca70e.entry.js.map} +1 -1
  422. package/dist/pine-core/p-1fd67cb4.system.entry.js +9 -0
  423. package/dist/pine-core/p-1fd67cb4.system.entry.js.map +1 -0
  424. package/dist/pine-core/p-26679956.system.entry.js +2 -0
  425. package/dist/pine-core/p-26679956.system.entry.js.map +1 -0
  426. package/dist/pine-core/p-285cd9d1.system.entry.js +2 -0
  427. package/dist/pine-core/p-285cd9d1.system.entry.js.map +1 -0
  428. package/dist/pine-core/p-29bb6589.entry.js +2 -0
  429. package/dist/pine-core/p-29bb6589.entry.js.map +1 -0
  430. package/dist/pine-core/p-2c0ef946.entry.js +2 -0
  431. package/dist/pine-core/p-2c0ef946.entry.js.map +1 -0
  432. package/dist/pine-core/p-2d52d5f7.entry.js +2 -0
  433. package/dist/pine-core/p-2d52d5f7.entry.js.map +1 -0
  434. package/dist/pine-core/p-2fedf634.system.entry.js +2 -0
  435. package/dist/pine-core/p-2fedf634.system.entry.js.map +1 -0
  436. package/dist/pine-core/p-30cd9f18.entry.js +2 -0
  437. package/dist/pine-core/p-30cd9f18.entry.js.map +1 -0
  438. package/dist/pine-core/p-372a04fa.system.entry.js +2 -0
  439. package/dist/pine-core/p-372a04fa.system.entry.js.map +1 -0
  440. package/dist/pine-core/p-397ce1a8.system.entry.js +2 -0
  441. package/dist/pine-core/p-397ce1a8.system.entry.js.map +1 -0
  442. package/dist/pine-core/p-399617f0.system.entry.js +2 -0
  443. package/dist/pine-core/p-399617f0.system.entry.js.map +1 -0
  444. package/dist/pine-core/p-3c6a0b2a.system.entry.js +2 -0
  445. package/dist/pine-core/p-3c6a0b2a.system.entry.js.map +1 -0
  446. package/dist/pine-core/p-3fbb568f.entry.js +2 -0
  447. package/dist/pine-core/p-3fbb568f.entry.js.map +1 -0
  448. package/dist/pine-core/p-46fb585d.js +2 -0
  449. package/dist/pine-core/p-46fb585d.js.map +1 -0
  450. package/dist/pine-core/p-47291f05.js +2 -0
  451. package/dist/pine-core/p-47291f05.js.map +1 -0
  452. package/dist/pine-core/p-4c252abb.system.entry.js +2 -0
  453. package/dist/pine-core/p-4c252abb.system.entry.js.map +1 -0
  454. package/dist/pine-core/p-4d1fbb88.system.entry.js +2 -0
  455. package/dist/pine-core/p-4d1fbb88.system.entry.js.map +1 -0
  456. package/dist/pine-core/p-4e2fe44a.system.entry.js +2 -0
  457. package/dist/pine-core/p-4e2fe44a.system.entry.js.map +1 -0
  458. package/dist/pine-core/p-521ac753.system.js +2 -0
  459. package/dist/pine-core/p-521ac753.system.js.map +1 -0
  460. package/dist/pine-core/p-5480346a.system.js +2 -0
  461. package/dist/pine-core/p-5480346a.system.js.map +1 -0
  462. package/dist/pine-core/p-59f4c8ab.system.entry.js +2 -0
  463. package/dist/pine-core/p-59f4c8ab.system.entry.js.map +1 -0
  464. package/dist/pine-core/p-5b9f8f6a.system.entry.js +2 -0
  465. package/dist/pine-core/p-5b9f8f6a.system.entry.js.map +1 -0
  466. package/dist/pine-core/p-5c04aee0.system.js +1 -1
  467. package/dist/pine-core/p-5c04aee0.system.js.map +1 -1
  468. package/dist/pine-core/p-5e1b7996.entry.js +2 -0
  469. package/dist/pine-core/p-5e1b7996.entry.js.map +1 -0
  470. package/dist/pine-core/p-5e50a381.entry.js +2 -0
  471. package/dist/pine-core/p-5e50a381.entry.js.map +1 -0
  472. package/dist/pine-core/p-60c2039e.system.entry.js +2 -0
  473. package/dist/pine-core/p-60c2039e.system.entry.js.map +1 -0
  474. package/dist/pine-core/p-650a27ca.entry.js +2 -0
  475. package/dist/pine-core/p-650a27ca.entry.js.map +1 -0
  476. package/dist/pine-core/p-6709f0f7.system.entry.js +2 -0
  477. package/dist/pine-core/p-6709f0f7.system.entry.js.map +1 -0
  478. package/dist/pine-core/p-6ce5b998.entry.js +2 -0
  479. package/dist/pine-core/p-6ce5b998.entry.js.map +1 -0
  480. package/dist/pine-core/p-6d8df897.entry.js +2 -0
  481. package/dist/pine-core/p-6d8df897.entry.js.map +1 -0
  482. package/dist/pine-core/p-6db1fe5c.entry.js +2 -0
  483. package/dist/pine-core/p-6db1fe5c.entry.js.map +1 -0
  484. package/dist/pine-core/p-6e8f3bb4.entry.js +2 -0
  485. package/dist/pine-core/p-6e8f3bb4.entry.js.map +1 -0
  486. package/dist/pine-core/p-726dc3d1.entry.js +2 -0
  487. package/dist/pine-core/p-726dc3d1.entry.js.map +1 -0
  488. package/dist/pine-core/p-74ad0244.entry.js +2 -0
  489. package/dist/pine-core/p-74ad0244.entry.js.map +1 -0
  490. package/dist/pine-core/p-7905b8b8.js +2 -0
  491. package/dist/pine-core/p-7905b8b8.js.map +1 -0
  492. package/dist/pine-core/p-798cde42.system.entry.js +2 -0
  493. package/dist/pine-core/p-798cde42.system.entry.js.map +1 -0
  494. package/dist/pine-core/p-80c582b7.system.entry.js +2 -0
  495. package/dist/pine-core/p-80c582b7.system.entry.js.map +1 -0
  496. package/dist/pine-core/p-8205e4d8.system.entry.js +2 -0
  497. package/dist/pine-core/p-8205e4d8.system.entry.js.map +1 -0
  498. package/dist/pine-core/p-8420594c.system.entry.js +2 -0
  499. package/dist/pine-core/p-8420594c.system.entry.js.map +1 -0
  500. package/dist/pine-core/p-8b2db323.system.entry.js +2 -0
  501. package/dist/pine-core/p-8b2db323.system.entry.js.map +1 -0
  502. package/dist/pine-core/p-8d1efd85.system.js +2 -0
  503. package/dist/pine-core/p-8d1efd85.system.js.map +1 -0
  504. package/dist/pine-core/p-92bcb091.entry.js +2 -0
  505. package/dist/pine-core/p-92bcb091.entry.js.map +1 -0
  506. package/dist/pine-core/p-954098a2.entry.js +2 -0
  507. package/dist/pine-core/p-954098a2.entry.js.map +1 -0
  508. package/dist/pine-core/p-9e976b99.entry.js +2 -0
  509. package/dist/pine-core/p-9e976b99.entry.js.map +1 -0
  510. package/dist/pine-core/p-a2465224.entry.js +2 -0
  511. package/dist/pine-core/p-a2465224.entry.js.map +1 -0
  512. package/dist/pine-core/p-a7d75615.system.js +2 -0
  513. package/dist/pine-core/p-a7d75615.system.js.map +1 -0
  514. package/dist/pine-core/p-b27bbfe3.entry.js +2 -0
  515. package/dist/pine-core/p-b27bbfe3.entry.js.map +1 -0
  516. package/dist/pine-core/p-b29b2e57.system.entry.js +2 -0
  517. package/dist/pine-core/p-b29b2e57.system.entry.js.map +1 -0
  518. package/dist/pine-core/p-b47f9e15.system.entry.js +2 -0
  519. package/dist/pine-core/p-b47f9e15.system.entry.js.map +1 -0
  520. package/dist/pine-core/p-b7e91522.entry.js +2 -0
  521. package/dist/pine-core/p-b7e91522.entry.js.map +1 -0
  522. package/dist/pine-core/p-c68362cc.entry.js +2 -0
  523. package/dist/pine-core/p-c68362cc.entry.js.map +1 -0
  524. package/dist/pine-core/p-cae3e411.entry.js +2 -0
  525. package/dist/pine-core/p-cae3e411.entry.js.map +1 -0
  526. package/dist/pine-core/p-cb3ddff3.entry.js +2 -0
  527. package/dist/pine-core/p-cb3ddff3.entry.js.map +1 -0
  528. package/dist/pine-core/p-cd14918d.system.entry.js +2 -0
  529. package/dist/pine-core/p-cd14918d.system.entry.js.map +1 -0
  530. package/dist/pine-core/p-d0b371ee.system.entry.js +2 -0
  531. package/dist/pine-core/p-d0b371ee.system.entry.js.map +1 -0
  532. package/dist/pine-core/{p-d83716fb.js → p-d561168e.js} +2 -2
  533. package/dist/pine-core/p-d561168e.js.map +1 -0
  534. package/dist/pine-core/p-d6a5ec65.system.entry.js +2 -0
  535. package/dist/pine-core/p-d6a5ec65.system.entry.js.map +1 -0
  536. package/dist/pine-core/p-d8260ebf.system.entry.js +2 -0
  537. package/dist/pine-core/p-d8260ebf.system.entry.js.map +1 -0
  538. package/dist/pine-core/p-da961d2b.entry.js +2 -0
  539. package/dist/pine-core/p-da961d2b.entry.js.map +1 -0
  540. package/dist/pine-core/p-df73ebae.entry.js +2 -0
  541. package/dist/pine-core/p-df73ebae.entry.js.map +1 -0
  542. package/dist/pine-core/p-e356293a.entry.js +2 -0
  543. package/dist/pine-core/p-e356293a.entry.js.map +1 -0
  544. package/dist/pine-core/p-e39bd4b2.system.entry.js +2 -0
  545. package/dist/pine-core/p-e39bd4b2.system.entry.js.map +1 -0
  546. package/dist/pine-core/p-e5b46292.entry.js +2 -0
  547. package/dist/pine-core/p-e5b46292.entry.js.map +1 -0
  548. package/dist/pine-core/p-e60348bc.system.entry.js +2 -0
  549. package/dist/pine-core/p-e60348bc.system.entry.js.map +1 -0
  550. package/dist/pine-core/p-e890c1bb.system.entry.js +2 -0
  551. package/dist/pine-core/p-e890c1bb.system.entry.js.map +1 -0
  552. package/dist/pine-core/p-ed990ad0.system.entry.js +2 -0
  553. package/dist/pine-core/p-ed990ad0.system.entry.js.map +1 -0
  554. package/dist/pine-core/p-f085efeb.entry.js +2 -0
  555. package/dist/pine-core/p-f085efeb.entry.js.map +1 -0
  556. package/dist/pine-core/p-f34096db.system.entry.js +2 -0
  557. package/dist/pine-core/p-f34096db.system.entry.js.map +1 -0
  558. package/dist/pine-core/p-f90088df.entry.js +2 -0
  559. package/dist/pine-core/p-f90088df.entry.js.map +1 -0
  560. package/dist/pine-core/pine-core.css +1 -1
  561. package/dist/pine-core/pine-core.esm.js +1 -1
  562. package/dist/pine-core/pine-core.esm.js.map +1 -1
  563. package/dist/pine-core/svg/trend-down.svg +1 -0
  564. package/dist/pine-core/svg/trend-none.svg +1 -0
  565. package/dist/pine-core/svg/trend-up.svg +1 -0
  566. package/dist/types/components/pds-input/input-interface.d.ts +12 -0
  567. package/dist/types/components/pds-input/pds-input.d.ts +61 -4
  568. package/dist/types/components/pds-textarea/pds-textarea.d.ts +57 -4
  569. package/dist/types/components/pds-textarea/textarea-interface.d.ts +5 -1
  570. package/dist/types/components/pds-tooltip/pds-tooltip.d.ts +2 -0
  571. package/dist/types/components.d.ts +65 -9
  572. package/dist/types/utils/attributes.d.ts +10 -0
  573. package/dist/types/utils/utils.d.ts +3 -1
  574. package/hydrate/index.js +426 -200
  575. package/hydrate/index.mjs +426 -200
  576. package/package.json +3 -3
  577. package/readme.md +1 -1
  578. package/dist/cjs/index-3ad62856.js.map +0 -1
  579. package/dist/cjs/pds-label-05f073ea.js.map +0 -1
  580. package/dist/collection/global/styles/base.css +0 -113
  581. package/dist/esm/index-56752d25.js.map +0 -1
  582. package/dist/esm/pds-label-62469596.js.map +0 -1
  583. package/dist/esm-es5/index-56752d25.js.map +0 -1
  584. package/dist/esm-es5/pds-label-62469596.js +0 -2
  585. package/dist/esm-es5/pds-label-62469596.js.map +0 -1
  586. package/dist/pine-core/p-00c8d6d8.entry.js +0 -2
  587. package/dist/pine-core/p-00c8d6d8.entry.js.map +0 -1
  588. package/dist/pine-core/p-031ac651.entry.js +0 -2
  589. package/dist/pine-core/p-031ac651.entry.js.map +0 -1
  590. package/dist/pine-core/p-09d83447.system.entry.js +0 -2
  591. package/dist/pine-core/p-09d83447.system.entry.js.map +0 -1
  592. package/dist/pine-core/p-0ac04129.entry.js +0 -2
  593. package/dist/pine-core/p-0ac04129.entry.js.map +0 -1
  594. package/dist/pine-core/p-0ad64b9d.system.entry.js +0 -2
  595. package/dist/pine-core/p-0ad64b9d.system.entry.js.map +0 -1
  596. package/dist/pine-core/p-1164c32c.system.entry.js +0 -2
  597. package/dist/pine-core/p-1164c32c.system.entry.js.map +0 -1
  598. package/dist/pine-core/p-1351489d.entry.js +0 -2
  599. package/dist/pine-core/p-1351489d.entry.js.map +0 -1
  600. package/dist/pine-core/p-1712d594.entry.js +0 -2
  601. package/dist/pine-core/p-1712d594.entry.js.map +0 -1
  602. package/dist/pine-core/p-196f615c.entry.js +0 -2
  603. package/dist/pine-core/p-196f615c.entry.js.map +0 -1
  604. package/dist/pine-core/p-1a1a76ea.system.entry.js +0 -2
  605. package/dist/pine-core/p-1a1a76ea.system.entry.js.map +0 -1
  606. package/dist/pine-core/p-1a548198.system.entry.js +0 -2
  607. package/dist/pine-core/p-1a548198.system.entry.js.map +0 -1
  608. package/dist/pine-core/p-1a78ee21.entry.js +0 -2
  609. package/dist/pine-core/p-1a78ee21.entry.js.map +0 -1
  610. package/dist/pine-core/p-1df1990d.system.entry.js +0 -2
  611. package/dist/pine-core/p-1df1990d.system.entry.js.map +0 -1
  612. package/dist/pine-core/p-1e80f274.entry.js +0 -2
  613. package/dist/pine-core/p-1e80f274.entry.js.map +0 -1
  614. package/dist/pine-core/p-2e1dc5e5.system.entry.js +0 -2
  615. package/dist/pine-core/p-2e1dc5e5.system.entry.js.map +0 -1
  616. package/dist/pine-core/p-30600b1b.entry.js +0 -2
  617. package/dist/pine-core/p-30600b1b.entry.js.map +0 -1
  618. package/dist/pine-core/p-34cda8d5.system.entry.js +0 -2
  619. package/dist/pine-core/p-34cda8d5.system.entry.js.map +0 -1
  620. package/dist/pine-core/p-364a7555.system.entry.js +0 -2
  621. package/dist/pine-core/p-364a7555.system.entry.js.map +0 -1
  622. package/dist/pine-core/p-37a3c235.entry.js +0 -2
  623. package/dist/pine-core/p-37a3c235.entry.js.map +0 -1
  624. package/dist/pine-core/p-396014d3.entry.js +0 -2
  625. package/dist/pine-core/p-396014d3.entry.js.map +0 -1
  626. package/dist/pine-core/p-3acb18ad.entry.js +0 -2
  627. package/dist/pine-core/p-3acb18ad.entry.js.map +0 -1
  628. package/dist/pine-core/p-3ae15266.entry.js +0 -2
  629. package/dist/pine-core/p-3ae15266.entry.js.map +0 -1
  630. package/dist/pine-core/p-4a10164f.entry.js +0 -2
  631. package/dist/pine-core/p-4a10164f.entry.js.map +0 -1
  632. package/dist/pine-core/p-4d22b02c.entry.js +0 -2
  633. package/dist/pine-core/p-4d22b02c.entry.js.map +0 -1
  634. package/dist/pine-core/p-4f9b1945.entry.js +0 -2
  635. package/dist/pine-core/p-4f9b1945.entry.js.map +0 -1
  636. package/dist/pine-core/p-50918693.system.entry.js +0 -2
  637. package/dist/pine-core/p-50918693.system.entry.js.map +0 -1
  638. package/dist/pine-core/p-5380ad4f.entry.js +0 -2
  639. package/dist/pine-core/p-5380ad4f.entry.js.map +0 -1
  640. package/dist/pine-core/p-539fe011.system.entry.js +0 -2
  641. package/dist/pine-core/p-539fe011.system.entry.js.map +0 -1
  642. package/dist/pine-core/p-59fcea0f.entry.js +0 -2
  643. package/dist/pine-core/p-59fcea0f.entry.js.map +0 -1
  644. package/dist/pine-core/p-5b9d6ad1.entry.js +0 -2
  645. package/dist/pine-core/p-5b9d6ad1.entry.js.map +0 -1
  646. package/dist/pine-core/p-5cb59e3f.system.entry.js +0 -2
  647. package/dist/pine-core/p-5cb59e3f.system.entry.js.map +0 -1
  648. package/dist/pine-core/p-605dc33a.system.entry.js +0 -2
  649. package/dist/pine-core/p-605dc33a.system.entry.js.map +0 -1
  650. package/dist/pine-core/p-630b1802.entry.js +0 -2
  651. package/dist/pine-core/p-630b1802.entry.js.map +0 -1
  652. package/dist/pine-core/p-65229490.entry.js +0 -2
  653. package/dist/pine-core/p-65229490.entry.js.map +0 -1
  654. package/dist/pine-core/p-6d447614.system.entry.js +0 -2
  655. package/dist/pine-core/p-6d447614.system.entry.js.map +0 -1
  656. package/dist/pine-core/p-760e1c32.entry.js +0 -2
  657. package/dist/pine-core/p-760e1c32.entry.js.map +0 -1
  658. package/dist/pine-core/p-84d36583.system.entry.js +0 -2
  659. package/dist/pine-core/p-84d36583.system.entry.js.map +0 -1
  660. package/dist/pine-core/p-88702fa2.entry.js +0 -2
  661. package/dist/pine-core/p-88702fa2.entry.js.map +0 -1
  662. package/dist/pine-core/p-88edcb41.system.entry.js +0 -2
  663. package/dist/pine-core/p-88edcb41.system.entry.js.map +0 -1
  664. package/dist/pine-core/p-892b4a4c.entry.js +0 -2
  665. package/dist/pine-core/p-892b4a4c.entry.js.map +0 -1
  666. package/dist/pine-core/p-8ae84655.system.entry.js +0 -2
  667. package/dist/pine-core/p-8ae84655.system.entry.js.map +0 -1
  668. package/dist/pine-core/p-9487df53.entry.js +0 -2
  669. package/dist/pine-core/p-9487df53.entry.js.map +0 -1
  670. package/dist/pine-core/p-9db668f2.system.entry.js +0 -2
  671. package/dist/pine-core/p-9db668f2.system.entry.js.map +0 -1
  672. package/dist/pine-core/p-a24fa762.system.entry.js +0 -2
  673. package/dist/pine-core/p-a24fa762.system.entry.js.map +0 -1
  674. package/dist/pine-core/p-a2726d3b.system.entry.js +0 -2
  675. package/dist/pine-core/p-a2726d3b.system.entry.js.map +0 -1
  676. package/dist/pine-core/p-a6713696.entry.js +0 -2
  677. package/dist/pine-core/p-a6713696.entry.js.map +0 -1
  678. package/dist/pine-core/p-a9038f7f.js +0 -2
  679. package/dist/pine-core/p-a9038f7f.js.map +0 -1
  680. package/dist/pine-core/p-a9e02a6f.system.entry.js +0 -2
  681. package/dist/pine-core/p-a9e02a6f.system.entry.js.map +0 -1
  682. package/dist/pine-core/p-adda8682.system.entry.js +0 -2
  683. package/dist/pine-core/p-adda8682.system.entry.js.map +0 -1
  684. package/dist/pine-core/p-ae19532d.system.entry.js +0 -2
  685. package/dist/pine-core/p-ae19532d.system.entry.js.map +0 -1
  686. package/dist/pine-core/p-b3e36d77.system.entry.js +0 -2
  687. package/dist/pine-core/p-b3e36d77.system.entry.js.map +0 -1
  688. package/dist/pine-core/p-b7edbe43.system.entry.js +0 -2
  689. package/dist/pine-core/p-b7edbe43.system.entry.js.map +0 -1
  690. package/dist/pine-core/p-b95522e6.system.entry.js +0 -2
  691. package/dist/pine-core/p-b95522e6.system.entry.js.map +0 -1
  692. package/dist/pine-core/p-b9cebd24.entry.js +0 -2
  693. package/dist/pine-core/p-b9cebd24.entry.js.map +0 -1
  694. package/dist/pine-core/p-bbd19258.entry.js +0 -2
  695. package/dist/pine-core/p-bbd19258.entry.js.map +0 -1
  696. package/dist/pine-core/p-cbf2acbd.system.entry.js +0 -2
  697. package/dist/pine-core/p-cbf2acbd.system.entry.js.map +0 -1
  698. package/dist/pine-core/p-cc75a4f7.system.entry.js +0 -2
  699. package/dist/pine-core/p-cc75a4f7.system.entry.js.map +0 -1
  700. package/dist/pine-core/p-ceb66096.entry.js +0 -8
  701. package/dist/pine-core/p-ceb66096.entry.js.map +0 -1
  702. package/dist/pine-core/p-d3365f49.system.entry.js +0 -9
  703. package/dist/pine-core/p-d83716fb.js.map +0 -1
  704. package/dist/pine-core/p-d95b2469.system.entry.js +0 -2
  705. package/dist/pine-core/p-d95b2469.system.entry.js.map +0 -1
  706. package/dist/pine-core/p-da5a1e2c.system.entry.js +0 -2
  707. package/dist/pine-core/p-da5a1e2c.system.entry.js.map +0 -1
  708. package/dist/pine-core/p-de301890.entry.js +0 -2
  709. package/dist/pine-core/p-de301890.entry.js.map +0 -1
  710. package/dist/pine-core/p-dec11fa5.system.js +0 -2
  711. package/dist/pine-core/p-e2a673e8.entry.js +0 -2
  712. package/dist/pine-core/p-e2a673e8.entry.js.map +0 -1
  713. package/dist/pine-core/p-e2badc55.entry.js +0 -2
  714. package/dist/pine-core/p-e2badc55.entry.js.map +0 -1
  715. package/dist/pine-core/p-e3fab4be.system.js +0 -2
  716. package/dist/pine-core/p-e3fab4be.system.js.map +0 -1
  717. package/dist/pine-core/p-ebdaf3ad.entry.js +0 -2
  718. package/dist/pine-core/p-ebdaf3ad.entry.js.map +0 -1
  719. package/dist/pine-core/p-f16ef73c.system.entry.js +0 -2
  720. package/dist/pine-core/p-f16ef73c.system.entry.js.map +0 -1
  721. package/dist/pine-core/p-faa2bf05.system.entry.js +0 -2
  722. package/dist/pine-core/p-faa2bf05.system.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"pds-icon.entry.cjs.js","mappings":";;;;;;AACA,IAAI,uBAAuB,GAAG,KAAK,CAAC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,YAAY,GAAG,CAAC,IAAI,KAAK;AACtC,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,MAAM,iBAAiB,GAAG,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,MAAM,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;AAC7J;AACA,IAAI,MAAM,eAAe,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACvD;AACA,IAAI,MAAM,YAAY,GAAG,6DAA6D,CAAC;AACvF,IAAI,MAAM,aAAa,GAAyC,iBAAiB,IAAI,eAAe,IAAI,YAAY,IAAI,GAAG,CAAC;AAC5H;AACA,IAAI,IAAI,aAAa,CAAC,UAAU,CAAC,+BAA+B,CAAC,IAAI,CAAC,uBAAuB,EAAE;AAC/F,QAAQ,uBAAuB,GAAG,IAAI,CAAC;AACvC,QAAQ,OAAO,CAAC,IAAI,CAAC,CAAC;AACtB;AACA,IAAI,CAAC,CAAC,CAAC;AACP,KAAK;AACL,IAAI,IAAI,SAAS,GAAG,IAAI,CAAC;AACzB,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;AAC/B,QAAQ,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACtC,KAAK;AACL,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACtC,QAAQ,SAAS,GAAG,GAAG,GAAG,SAAS,CAAC;AACpC,KAAK;AACL,IAAI,OAAO,aAAa,GAAG,SAAS,CAAC;AACrC,CAAC;;ACjCD,IAAI,UAAU,CAAC;AAKR,MAAM,UAAU,GAAG,MAAM;AAChC,IAAI,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;AACvC,QAAQ,OAAO,IAAI,GAAG,EAAE,CAAC;AACzB,KAAK;AACL,SAAS;AACT,QAAQ,IAAI,CAAC,UAAU,EAAE;AACzB,YAAY,MAAM,GAAG,GAAG,MAAM,CAAC;AAC/B,YAAY,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;AAC9C,YAAY,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;AAC1E,SAAS;AACT,QAAQ,OAAO,UAAU,CAAC;AAC1B,KAAK;AACL,CAAC,CAAC;AACK,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,IAAI,KAAK;AAC3C,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC3C,QAAQ,QAAQ,GAAG,IAAI,CAAC;AACxB,KAAK;AACL,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;AACzB,QAAQ,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AACrC,KAAK;AACL,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;AACpD,QAAQ,OAAO,IAAI,CAAC;AACpB,KAAK;AACL,IAAI,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAC9D,IAAI,IAAI,YAAY,IAAI,EAAE,EAAE;AAC5B,QAAQ,OAAO,IAAI,CAAC;AACpB,KAAK;AACL,IAAI,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AACF,MAAM,WAAW,GAAG,CAAC,QAAQ,KAAK;AAClC,IAAI,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC3C,IAAI,IAAI,GAAG,EAAE;AACb,QAAQ,OAAO,GAAG,CAAC;AACnB,KAAK;AACL,IAAI,OAAO,YAAY,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC;AACK,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK;AAC/B,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;AACpB,QAAQ,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;AACzB,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;AACxB,YAAY,OAAO,GAAG,CAAC;AACvB,SAAS;AACT,KAAK;AACL,IAAI,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AACK,MAAM,MAAM,GAAG,CAAC,OAAO,KAAK;AACnC,IAAI,IAAI,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAClC,IAAI,IAAI,GAAG,EAAE;AACb,QAAQ,OAAO,GAAG,CAAC;AACnB,KAAK;AACL,IAAI,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9C,IAAI,IAAI,GAAG,EAAE;AACb,QAAQ,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAChC,KAAK;AACL,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE;AACtB,QAAQ,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACnC,QAAQ,IAAI,GAAG,EAAE;AACjB,YAAY,OAAO,GAAG,CAAC;AACvB,SAAS;AACT,KAAK;AACL,IAAI,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AACK,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,OAAO,GAAG,KAAK,QAAQ,CAAC;AAC/C,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,iBAAiB,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG,EAAE,KAAK;AAC1D,IAAI,MAAM,eAAe,GAAG,EAAE,CAAC;AAC/B,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI;AAC/B,QAAQ,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;AACnC,YAAY,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAChD,YAAY,IAAI,KAAK,KAAK,IAAI,EAAE;AAChC,gBAAgB,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAC9D,aAAa;AACb,YAAY,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AACrC,SAAS;AACT,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,eAAe,CAAC;AAC3B,CAAC;;AC5FM,MAAM,eAAe,GAAG,CAAC,UAAU,KAAK;AAC/C,IAAI,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9C,IAAI,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC;AAC/B;AACA,IAAI,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;AACzD,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE;AAChE,YAAY,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C,SAAS;AACT,KAAK;AACL;AACA,IAAI,MAAM,MAAM,GAAG,GAAG,CAAC,iBAAiB,CAAC;AACzC,IAAI,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE;AAC3D,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC5D,QAAQ,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,QAAQ,GAAG,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;AACxE;AACA;AACA;AACA,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE;AAC7B,YAAY,OAAO,GAAG,CAAC,SAAS,CAAC;AACjC,SAAS;AACT,KAAK;AACL,IAAI,OAAO,EAAE,CAAC;AACd,CAAC,CAAC;AACK,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK;AAChC,IAAI,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE;AAC5B,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE;AACrD,YAAY,OAAO,KAAK,CAAC;AACzB,SAAS;AACT,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACxD,YAAY,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACvE,gBAAgB,OAAO,KAAK,CAAC;AAC7B,aAAa;AACb,SAAS;AACT,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACxD,YAAY,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;AAC7C,gBAAgB,OAAO,KAAK,CAAC;AAC7B,aAAa;AACb,SAAS;AACT,KAAK;AACL,IAAI,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AACK,MAAM,YAAY,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AACnE,MAAM,gBAAgB,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;;AC3C9D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;AACxC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;AAC3B,IAAI,MAAM,CAAC;AACJ,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,KAAK,KAAK;AACxD,IAAI,IAAI,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAChC,IAAI,IAAI,CAAC,GAAG,EAAE;AACd,QAAQ,IAAI,OAAO,KAAK,IAAI,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;AAC5E,YAAY,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,EAAE;AAC5D,gBAAgB,IAAI,CAAC,MAAM,EAAE;AAC7B,oBAAoB,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;AAC7C,iBAAiB;AACjB,gBAAgB,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AACrE,gBAAgB,MAAM,GAAG,GAAG,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AACrD,gBAAgB,IAAI,GAAG,EAAE;AACzB,oBAAoB,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;AAC3D,iBAAiB;AACjB,gBAAgB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AACzC,aAAa;AACb,iBAAiB;AACjB;AACA,gBAAgB,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK;AAC/C,oBAAoB,IAAI,GAAG,CAAC,EAAE,EAAE;AAChC,wBAAwB,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK;AAC/D,4BAA4B,IAAI,UAAU,IAAI,QAAQ,KAAK,KAAK,EAAE;AAClE,gCAAgC,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AACzE,6BAA6B;AAC7B,4BAA4B,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;AACtE,yBAAyB,CAAC,CAAC;AAC3B,qBAAqB;AACrB,oBAAoB,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAChD,iBAAiB,CAAC,CAAC;AACnB,gBAAgB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACvC,aAAa;AACb,SAAS;AACT,aAAa;AACb,YAAY,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACxC,YAAY,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AACrC,SAAS;AACT,KAAK;AACL,IAAI,OAAO,GAAG,CAAC;AACf,CAAC;;ACzCD,MAAM,UAAU,GAAG,8WAA8W,CAAC;AAClY,sBAAe,UAAU;;MCEZ,OAAO;IAChB;;QACI,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG;YACjB,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;YACpB,OAAO,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,MAAM,CAAC;SACtF,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;KACxB;IACD,QAAQ;;QAEJ,MAAM,KAAK,GAAG;YACV,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM;SAChB,CAAC;QACF,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;aACI;YACD,OAAO,IAAI,CAAC,IAAI,CAAC;SACpB;KACJ;IACD,gBAAgB;QACZ,IAAI,CAAC,eAAe,EAAE,CAAC;KAC1B;IACD,iBAAiB;QACb,IAAI,CAAC,mBAAmB,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QACtE,IAAI,CAAC,eAAe,EAAE,CAAC;KAC1B;IACD,eAAe;QACX,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,wBAAwB,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,WAAW,GAAG,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,CAAC;KACnH;IACD,iBAAiB;QACb,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE;YACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnB,CAAC,CAAC;KACN;IACD,oBAAoB;QAChB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;SACvB;KACJ;IACD,YAAY;QACR,IAAI,CAAC,eAAe,EAAE,CAAC;KAC1B;IACD,QAAQ;QACJ,IAAuB,IAAI,CAAC,SAAS,EAAE;YACnC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,GAAG,EAAE;gBACL,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;oBACzB,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAC7C;qBACI;oBACD,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;iBAC9E;aACJ;SACJ;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;SAC9C;KACJ;IACD,MAAM;QACF,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;QAChD,QAAQA,OAAC,CAACC,UAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,0CAA0C,EAAE,YAAY,EAAE,SAAS,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,SAAS,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,mBAAmB,CAAC,EAAqB,IAAI,CAAC,UAAU,IAAID,OAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,KAAKA,OAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;KAC5Z;;;;IAID,gBAAgB,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE;QAC/B,IAAuB,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,MAAM,EAAE,oBAAoB,EAAE;YACnF,MAAM,EAAE,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,IAAI;gBACzD,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE;oBACxB,EAAE,CAAC,UAAU,EAAE,CAAC;oBAChB,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;oBACpB,EAAE,EAAE,CAAC;iBACR;aACJ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YACpB,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAClB;aACI;;;YAGD,EAAE,EAAE,CAAC;SACR;KACJ;IAaD,WAAW,UAAU,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;;;;;;;;;;AAsH/C,MAAM,kBAAkB,GAAG,CAAC,KAAK;IAC7B,OAAO,KAAK;UACN;YACE,WAAW,EAAE,IAAI;YACjB,CAAC,aAAa,KAAK,EAAE,GAAG,IAAI;SAC/B;UACC,IAAI,CAAC;AACf,CAAC,CAAC;;;;;","names":["h","Host"],"sources":["../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/assetPath.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/utils.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/validate.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/request.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/pds-icon.css?tag=pds-icon&encapsulation=shadow","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/pds-icon.js"],"sourcesContent":["import { Build } from \"@stencil/core\";\nlet missingAssetPathWarning = false;\n/**\n *\n * Reads the component asset path config from meta tag or a global variable.\n * This is a temporary workaround until these issues have been addressed:\n *\n * https://github.com/ionic-team/stencil/issues/2826/\n * https://github.com/ionic-team/stencil/issues/3470\n * https://github.com/ionic-team/stencil-ds-output-targets/issues/186\n */\nexport const getAssetPath = (path) => {\n var _a;\n const metaPineAssetPath = (_a = document.head.querySelector('meta[data-pine-asset-path]')) === null || _a === void 0 ? void 0 : _a.dataset.pineAssetPath;\n // Get the asset path from the window object if available\n const windowAssetPath = window.__PINE_ASSET_PATH__;\n // Set the CDN Asset path using the latest version\n const cdnAssetPath = 'https://cdn.jsdelivr.net/npm/@pine-ds/icons/dist/pds-icons/';\n const assetBasePath = Build.isTesting ? '/dist/pds-icons' : metaPineAssetPath || windowAssetPath || cdnAssetPath || '/';\n // Display a warning if the assets are fetched from the CDN.\n if (assetBasePath.startsWith('https://cdn.jsdelivr.net/npm/') && !missingAssetPathWarning) {\n missingAssetPathWarning = true;\n console.warn(`\n Fetching Pine asssets from jsDelivr CDN.\\n\\n It's recommended that you bundle Pine Assets with your application and setting the path accordingly.\\n\\nFor more information you read the documentation: \\nhttps://pine-design-system.netlify.app/?path=/docs/resources-assets--docs\n `);\n }\n let assetPath = path;\n if (path.startsWith('./')) {\n assetPath = path.substring(2);\n }\n if (!assetBasePath.endsWith('/')) {\n assetPath = '/' + assetPath;\n }\n return assetBasePath + assetPath;\n};\n//# sourceMappingURL=assetPath.js.map\n","import { getAssetPath } from \"./assetPath\";\nlet CACHED_MAP;\nexport const addIcons = (icons) => {\n const map = getIconMap();\n Object.keys(icons).forEach(name => map.set(name, icons[name]));\n};\nexport const getIconMap = () => {\n if (typeof window === 'undefined') {\n return new Map();\n }\n else {\n if (!CACHED_MAP) {\n const win = window; // eslint-disable-line @typescript-eslint/no-explicit-any\n win.PdsIcons = win.PdsIcons || {};\n CACHED_MAP = win.PdsIcons.map = win.PdsIcons.map || new Map();\n }\n return CACHED_MAP;\n }\n};\nexport const getName = (iconName, icon) => {\n if (!iconName && icon && !isSrc(icon)) {\n iconName = icon;\n }\n if (isStr(iconName)) {\n iconName = toLower(iconName);\n }\n if (!isStr(iconName) || iconName.trim() === '') {\n return null;\n }\n const invalidChars = iconName.replace(/[a-z]|-|\\d/gi, '');\n if (invalidChars != '') {\n return null;\n }\n return iconName;\n};\nconst getNamedUrl = (iconName) => {\n const url = getIconMap().get(iconName);\n if (url) {\n return url;\n }\n return getAssetPath(`svg/${iconName}.svg`);\n};\nexport const getSrc = (src) => {\n if (isStr(src)) {\n src = src.trim();\n if (isSrc(src)) {\n return src;\n }\n }\n return null;\n};\nexport const getUrl = (pdsIcon) => {\n let url = getSrc(pdsIcon.src);\n if (url) {\n return url;\n }\n url = getName(pdsIcon.name, pdsIcon.icon);\n if (url) {\n return getNamedUrl(url);\n }\n if (pdsIcon.icon) {\n url = getSrc(pdsIcon.icon);\n if (url) {\n return url;\n }\n }\n return null;\n};\nexport const isSrc = (str) => str.length > 0 && /(\\/|\\.)/.test(str);\nexport const isStr = (val) => typeof val === 'string'; // eslint-disable-line @typescript-eslint/no-explicit-any\nexport const toLower = (val) => val.toLowerCase();\n/**\n * Elements inside of web components sometimes need to inherit global attributes\n * set on the host. For example, the inner input in `ion-input` should inherit\n * the `title` attribute that developers set directly on `ion-input`. This\n * helper function should be called in componentWillLoad and assigned to a variable\n * that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (el, attributes = []) => {\n const attributeObject = {}; // eslint-disable-line @typescript-eslint/no-explicit-any\n attributes.forEach(attr => {\n if (el.hasAttribute(attr)) {\n const value = el.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = el.getAttribute(attr);\n }\n el.removeAttribute(attr);\n }\n });\n return attributeObject;\n};\n//# sourceMappingURL=utils.js.map\n","import { isStr } from \"./utils\";\nexport const validateContent = (svgContent) => {\n const div = document.createElement('div');\n div.innerHTML = svgContent;\n // setup this way to ensure it works on our buddy IE\n for (let i = div.childNodes.length - 1; i >= 0; i--) {\n if (div.childNodes[i].nodeName.toLowerCase() !== 'svg') {\n div.removeChild(div.childNodes[i]);\n }\n }\n // must only have 1 root element\n const svgElm = div.firstElementChild;\n if (svgElm && svgElm.nodeName.toLowerCase() === 'svg') {\n const svgClass = svgElm.getAttribute('class') || '';\n svgElm.setAttribute('class', (svgClass + ' s-pds-icon').trim());\n // root element must be an svg\n // lets double check we've got valid elements\n // do not allow scripts\n if (isValid(svgElm)) {\n return div.innerHTML;\n }\n }\n return '';\n};\nexport const isValid = (elm) => {\n if (elm.nodeType === 1) {\n if (elm.nodeName.toLowerCase() === 'script') {\n return false;\n }\n for (let i = 0; i < elm.attributes.length; i++) {\n const name = elm.attributes[i].name;\n if (isStr(name) && name.toLowerCase().indexOf('on') === 0) {\n return false;\n }\n }\n for (let i = 0; i < elm.childNodes.length; i++) {\n if (!isValid(elm.childNodes[i])) {\n return false;\n }\n }\n }\n return true;\n};\nexport const isSvgDataUrl = (url) => url.startsWith('data:image/svg+xml');\nexport const isEncodedDataUrl = (url) => url.indexOf(';utf8,') !== -1;\n//# sourceMappingURL=validate.js.map\n","import { isEncodedDataUrl, isSvgDataUrl, validateContent } from \"./validate\";\nexport const pdsIconContent = new Map();\nconst requests = new Map(); // eslint-disable-line @typescript-eslint/no-explicit-any\nlet parser;\nexport const getSvgContent = (url, sanitize = false) => {\n let req = requests.get(url);\n if (!req) {\n if (typeof fetch != 'undefined' && typeof document !== 'undefined') {\n if (isSvgDataUrl(url) && isEncodedDataUrl(url)) {\n if (!parser) {\n parser = new DOMParser();\n }\n const doc = parser.parseFromString(url, 'text/html');\n const svg = doc.querySelector('svg');\n if (svg) {\n pdsIconContent.set(url, svg.outerHTML);\n }\n return Promise.resolve();\n }\n else {\n // we don't have a request\n req = fetch(url).then((rsp) => {\n if (rsp.ok) {\n return rsp.text().then((svgContent) => {\n if (svgContent && sanitize !== false) {\n svgContent = validateContent(svgContent);\n }\n pdsIconContent.set(url, svgContent || '');\n });\n }\n pdsIconContent.set(url, '');\n });\n requests.set(url, req);\n }\n }\n else {\n pdsIconContent.set(url, '');\n return Promise.resolve();\n }\n }\n return req;\n};\n//# sourceMappingURL=request.js.map\n",":host {\n --dimension-icon-height: 16px;\n --dimension-icon-width: 16px;\n --color-icon-fill: currentColor;\n contain: strict;\n display: inline-block;\n fill: var(--color-icon-fill);\n height: var(--dimension-icon-height);\n width: var(--dimension-icon-width);\n}\n:host .pdsicon {\n fill: var(--color-icon-fill);\n}\n\n.pds-icon-fill-none {\n fill: none;\n}\n\n.icon-inner,\n.pds-icon,\nsvg {\n display: block;\n height: 100%;\n width: 100%;\n}","import { Build, Host, h } from \"@stencil/core\";\nimport { getSvgContent, pdsIconContent } from \"./request\";\nimport { getName, getUrl, inheritAttributes } from \"./utils\";\nexport class PdsIcon {\n constructor() {\n this.inheritedAttributes = {}; // eslint-disable-line @typescript-eslint/no-explicit-any\n this.hasAriaHidden = () => {\n const { el } = this;\n return el.hasAttribute('aria-hidden') && el.getAttribute('aria-hidden') === 'true';\n };\n this.ariaLabel = undefined;\n this.isVisible = false;\n this.svgContent = undefined;\n this.color = undefined;\n this.icon = undefined;\n this.name = undefined;\n this.size = 'regular';\n this.src = undefined;\n }\n iconSize() {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const sizes = {\n small: '12px',\n regular: '16px',\n medium: '20px',\n large: '24px',\n };\n if (sizes[this.size]) {\n return sizes[this.size];\n }\n else {\n return this.size;\n }\n }\n componentDidLoad() {\n this.setCSSVariables();\n }\n componentWillLoad() {\n this.inheritedAttributes = inheritAttributes(this.el, ['aria-label']);\n this.setCSSVariables();\n }\n setCSSVariables() {\n this.el.style.setProperty(`--dimension-icon-height`, this.iconSize());\n this.el.style.setProperty(`--dimension-icon-width`, this.iconSize());\n this.el.style.setProperty(`--color-icon-fill`, typeof this.color !== 'undefined' ? this.color : 'currentColor');\n }\n connectedCallback() {\n this.waitUntilVisible(this.el, '50px', () => {\n this.isVisible = true;\n this.loadIcon();\n });\n }\n disconnectedCallback() {\n if (this.io) {\n this.io.disconnect();\n this.io = undefined;\n }\n }\n updateStyles() {\n this.setCSSVariables();\n }\n loadIcon() {\n if (Build.isBrowser && this.isVisible) {\n const url = getUrl(this);\n if (url) {\n if (pdsIconContent.has(url)) {\n this.svgContent = pdsIconContent.get(url);\n }\n else {\n getSvgContent(url).then(() => (this.svgContent = pdsIconContent.get(url)));\n }\n }\n }\n const label = getName(this.name, this.icon);\n if (label) {\n this.ariaLabel = label.replace(/\\-/g, ' ');\n }\n }\n render() {\n const { ariaLabel, inheritedAttributes } = this;\n return (h(Host, Object.assign({ key: '4bbc232e2530d43e8b5afefb754486d94ea6538b', \"aria-label\": ariaLabel !== undefined && !this.hasAriaHidden() ? ariaLabel : null, alt: \"\", role: \"img\", class: Object.assign({}, createColorClasses(this.color)) }, inheritedAttributes), Build.isBrowser && this.svgContent ? (h(\"div\", { class: \"icon-inner\", innerHTML: this.svgContent })) : (h(\"div\", { class: \"icon-inner\" }))));\n }\n /*****\n * Private Methods\n ****/\n waitUntilVisible(el, rootMargin, cb) {\n if (Build.isBrowser && typeof window !== 'undefined' && (window).IntersectionObserver) {\n const io = (this.io = new (window).IntersectionObserver((data) => {\n if (data[0].isIntersecting) {\n io.disconnect();\n this.io = undefined;\n cb();\n }\n }, { rootMargin }));\n io.observe(el);\n }\n else {\n // browser doesn't support IntersectionObserver\n // so just fallback to always show it\n cb();\n }\n }\n static get is() { return \"pds-icon\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"pds-icon.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"pds-icon.css\"]\n };\n }\n static get assetsDirs() { return [\"svg\"]; }\n static get properties() {\n return {\n \"color\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\\nThe color of the icon\"\n },\n \"attribute\": \"color\",\n \"reflect\": false\n },\n \"icon\": {\n \"type\": \"any\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"any\",\n \"resolved\": \"any\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"This a combination of both `name` and `src`. If a `src` url is detected\\nit will set the `src` property. Otherwise it assumes it's a built-in named\\nSVG and set the `name` property.\"\n },\n \"attribute\": \"icon\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name of the icon to use from\\nthe built-in set.\"\n },\n \"attribute\": \"name\",\n \"reflect\": true\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"| 'small' // 12px\\n | 'regular' // 16px\\n | 'medium' // 20px\\n | 'large' // 24px\\n | 'auto'\\n | string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the icon. This can be\\n'small', 'regular', 'medium', large, or a\\ncustom value (40px, 1rem, etc)\"\n },\n \"attribute\": \"size\",\n \"reflect\": true,\n \"defaultValue\": \"'regular'\"\n },\n \"src\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\\nSpecifies the exact `src` of an SVG file to use.\"\n },\n \"attribute\": \"src\",\n \"reflect\": false\n }\n };\n }\n static get states() {\n return {\n \"ariaLabel\": {},\n \"isVisible\": {},\n \"svgContent\": {}\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"size\",\n \"methodName\": \"updateStyles\"\n }, {\n \"propName\": \"color\",\n \"methodName\": \"updateStyles\"\n }, {\n \"propName\": \"name\",\n \"methodName\": \"loadIcon\"\n }, {\n \"propName\": \"src\",\n \"methodName\": \"loadIcon\"\n }, {\n \"propName\": \"icon\",\n \"methodName\": \"loadIcon\"\n }];\n }\n}\nconst createColorClasses = (color) => {\n return color\n ? {\n 'pds-color': true,\n [`pds-color-${color}`]: true,\n }\n : null;\n};\n//# sourceMappingURL=pds-icon.js.map\n"],"version":3}
1
+ {"file":"pds-icon.entry.cjs.js","mappings":"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","names":["h","Host"],"sources":["../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/assetPath.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/utils.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/validate.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/request.js","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/pds-icon.css?tag=pds-icon&encapsulation=shadow","../../node_modules/@pine-ds/icons/dist/collection/components/pds-icon/pds-icon.js"],"sourcesContent":["import { Build } from \"@stencil/core\";\nlet missingAssetPathWarning = false;\n/**\n *\n * Reads the component asset path config from meta tag or a global variable.\n * This is a temporary workaround until these issues have been addressed:\n *\n * https://github.com/ionic-team/stencil/issues/2826/\n * https://github.com/ionic-team/stencil/issues/3470\n * https://github.com/ionic-team/stencil-ds-output-targets/issues/186\n */\nexport const getAssetPath = (path) => {\n var _a;\n const metaPineAssetPath = (_a = document.head.querySelector('meta[data-pine-asset-path]')) === null || _a === void 0 ? void 0 : _a.dataset.pineAssetPath;\n // Get the asset path from the window object if available\n const windowAssetPath = window.__PINE_ASSET_PATH__;\n // Set the CDN Asset path using the latest version\n const cdnAssetPath = 'https://cdn.jsdelivr.net/npm/@pine-ds/icons/dist/pds-icons/';\n const assetBasePath = Build.isTesting ? '/dist/pds-icons' : metaPineAssetPath || windowAssetPath || cdnAssetPath || '/';\n // Display a warning if the assets are fetched from the CDN.\n if (assetBasePath.startsWith('https://cdn.jsdelivr.net/npm/') && !missingAssetPathWarning) {\n missingAssetPathWarning = true;\n console.warn(`\n Fetching Pine assets from jsDelivr CDN.\\n\\n It's recommended that you bundle Pine Assets with your application and set the path accordingly.\\n\\nFor more information, read the documentation: \\nhttps://pine-design-system.netlify.app/?path=/docs/resources-assets--docs\n `);\n }\n let assetPath = path;\n if (path.startsWith('./')) {\n assetPath = path.substring(2);\n }\n if (!assetBasePath.endsWith('/')) {\n assetPath = '/' + assetPath;\n }\n return assetBasePath + assetPath;\n};\n//# sourceMappingURL=assetPath.js.map\n","import { getAssetPath } from \"./assetPath\";\nlet CACHED_MAP;\nexport const addIcons = (icons) => {\n const map = getIconMap();\n Object.keys(icons).forEach(name => map.set(name, icons[name]));\n};\nexport const getIconMap = () => {\n if (typeof window === 'undefined') {\n return new Map();\n }\n else {\n if (!CACHED_MAP) {\n const win = window; // eslint-disable-line @typescript-eslint/no-explicit-any\n win.PdsIcons = win.PdsIcons || {};\n CACHED_MAP = win.PdsIcons.map = win.PdsIcons.map || new Map();\n }\n return CACHED_MAP;\n }\n};\nexport const getName = (iconName, icon) => {\n if (!iconName && icon && !isSrc(icon)) {\n iconName = icon;\n }\n if (isStr(iconName)) {\n iconName = toLower(iconName);\n }\n if (!isStr(iconName) || iconName.trim() === '') {\n return null;\n }\n const invalidChars = iconName.replace(/[a-z]|-|\\d/gi, '');\n if (invalidChars != '') {\n return null;\n }\n return iconName;\n};\nconst getNamedUrl = (iconName) => {\n const url = getIconMap().get(iconName);\n if (url) {\n return url;\n }\n return getAssetPath(`svg/${iconName}.svg`);\n};\nexport const getSrc = (src) => {\n if (isStr(src)) {\n src = src.trim();\n if (isSrc(src)) {\n return src;\n }\n }\n return null;\n};\nexport const getUrl = (pdsIcon) => {\n let url = getSrc(pdsIcon.src);\n if (url) {\n return url;\n }\n url = getName(pdsIcon.name, pdsIcon.icon);\n if (url) {\n return getNamedUrl(url);\n }\n if (pdsIcon.icon) {\n url = getSrc(pdsIcon.icon);\n if (url) {\n return url;\n }\n }\n return null;\n};\nexport const isSrc = (str) => str.length > 0 && /(\\/|\\.)/.test(str);\nexport const isStr = (val) => typeof val === 'string'; // eslint-disable-line @typescript-eslint/no-explicit-any\nexport const toLower = (val) => val.toLowerCase();\n/**\n * Elements inside of web components sometimes need to inherit global attributes\n * set on the host. For example, the inner input in `ion-input` should inherit\n * the `title` attribute that developers set directly on `ion-input`. This\n * helper function should be called in componentWillLoad and assigned to a variable\n * that is later used in the render function.\n *\n * This does not need to be reactive as changing attributes on the host element\n * does not trigger a re-render.\n */\nexport const inheritAttributes = (el, attributes = []) => {\n const attributeObject = {}; // eslint-disable-line @typescript-eslint/no-explicit-any\n attributes.forEach(attr => {\n if (el.hasAttribute(attr)) {\n const value = el.getAttribute(attr);\n if (value !== null) {\n attributeObject[attr] = el.getAttribute(attr);\n }\n el.removeAttribute(attr);\n }\n });\n return attributeObject;\n};\n//# sourceMappingURL=utils.js.map\n","import { isStr } from \"./utils\";\nexport const validateContent = (svgContent) => {\n const div = document.createElement('div');\n div.innerHTML = svgContent;\n // setup this way to ensure it works on our buddy IE\n for (let i = div.childNodes.length - 1; i >= 0; i--) {\n if (div.childNodes[i].nodeName.toLowerCase() !== 'svg') {\n div.removeChild(div.childNodes[i]);\n }\n }\n // must only have 1 root element\n const svgElm = div.firstElementChild;\n if (svgElm && svgElm.nodeName.toLowerCase() === 'svg') {\n const svgClass = svgElm.getAttribute('class') || '';\n svgElm.setAttribute('class', (svgClass + ' s-pds-icon').trim());\n // root element must be an svg\n // lets double check we've got valid elements\n // do not allow scripts\n if (isValid(svgElm)) {\n return div.innerHTML;\n }\n }\n return '';\n};\nexport const isValid = (elm) => {\n if (elm.nodeType === 1) {\n if (elm.nodeName.toLowerCase() === 'script') {\n return false;\n }\n for (let i = 0; i < elm.attributes.length; i++) {\n const name = elm.attributes[i].name;\n if (isStr(name) && name.toLowerCase().indexOf('on') === 0) {\n return false;\n }\n }\n for (let i = 0; i < elm.childNodes.length; i++) {\n if (!isValid(elm.childNodes[i])) {\n return false;\n }\n }\n }\n return true;\n};\nexport const isSvgDataUrl = (url) => url.startsWith('data:image/svg+xml');\nexport const isEncodedDataUrl = (url) => url.indexOf(';utf8,') !== -1;\n//# sourceMappingURL=validate.js.map\n","import { isEncodedDataUrl, isSvgDataUrl, validateContent } from \"./validate\";\nexport const pdsIconContent = new Map();\nconst requests = new Map(); // eslint-disable-line @typescript-eslint/no-explicit-any\nlet parser;\nexport const getSvgContent = (url, sanitize = false) => {\n let req = requests.get(url);\n if (!req) {\n if (typeof fetch != 'undefined' && typeof document !== 'undefined') {\n if (isSvgDataUrl(url) && isEncodedDataUrl(url)) {\n if (!parser) {\n parser = new DOMParser();\n }\n const doc = parser.parseFromString(url, 'text/html');\n const svg = doc.querySelector('svg');\n if (svg) {\n pdsIconContent.set(url, svg.outerHTML);\n }\n return Promise.resolve();\n }\n else {\n // we don't have a request\n req = fetch(url).then((rsp) => {\n if (rsp.ok) {\n return rsp.text().then((svgContent) => {\n if (svgContent && sanitize !== false) {\n svgContent = validateContent(svgContent);\n }\n pdsIconContent.set(url, svgContent || '');\n });\n }\n pdsIconContent.set(url, '');\n });\n requests.set(url, req);\n }\n }\n else {\n pdsIconContent.set(url, '');\n return Promise.resolve();\n }\n }\n return req;\n};\n//# sourceMappingURL=request.js.map\n",":host {\n --dimension-icon-height: 16px;\n --dimension-icon-width: 16px;\n --color-icon-fill: currentColor;\n contain: strict;\n display: inline-block;\n fill: var(--color-icon-fill);\n height: var(--dimension-icon-height);\n width: var(--dimension-icon-width);\n}\n:host .pdsicon {\n fill: var(--color-icon-fill);\n}\n\n.pds-icon-fill-none {\n fill: none;\n}\n\n.icon-inner,\n.pds-icon,\nsvg {\n display: block;\n height: 100%;\n width: 100%;\n}","import { Build, Host, h } from \"@stencil/core\";\nimport { getSvgContent, pdsIconContent } from \"./request\";\nimport { getName, getUrl, inheritAttributes } from \"./utils\";\nexport class PdsIcon {\n constructor() {\n this.inheritedAttributes = {}; // eslint-disable-line @typescript-eslint/no-explicit-any\n this.hasAriaHidden = () => {\n const { el } = this;\n return el.hasAttribute('aria-hidden') && el.getAttribute('aria-hidden') === 'true';\n };\n this.ariaLabel = undefined;\n this.isVisible = false;\n this.svgContent = undefined;\n this.color = undefined;\n this.icon = undefined;\n this.name = undefined;\n this.size = 'regular';\n this.src = undefined;\n }\n iconSize() {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const sizes = {\n small: '12px',\n regular: '16px',\n medium: '20px',\n large: '24px',\n };\n if (sizes[this.size]) {\n return sizes[this.size];\n }\n else {\n return this.size;\n }\n }\n componentDidLoad() {\n this.setCSSVariables();\n }\n componentWillLoad() {\n this.inheritedAttributes = inheritAttributes(this.el, ['aria-label']);\n this.setCSSVariables();\n }\n setCSSVariables() {\n this.el.style.setProperty(`--dimension-icon-height`, this.iconSize());\n this.el.style.setProperty(`--dimension-icon-width`, this.iconSize());\n this.el.style.setProperty(`--color-icon-fill`, typeof this.color !== 'undefined' ? this.color : 'currentColor');\n }\n connectedCallback() {\n this.waitUntilVisible(this.el, '50px', () => {\n this.isVisible = true;\n this.loadIcon();\n });\n }\n disconnectedCallback() {\n if (this.io) {\n this.io.disconnect();\n this.io = undefined;\n }\n }\n updateStyles() {\n this.setCSSVariables();\n }\n loadIcon() {\n if (Build.isBrowser && this.isVisible) {\n const url = getUrl(this);\n if (url) {\n if (pdsIconContent.has(url)) {\n this.svgContent = pdsIconContent.get(url);\n }\n else {\n getSvgContent(url).then(() => (this.svgContent = pdsIconContent.get(url)));\n }\n }\n }\n const label = getName(this.name, this.icon);\n if (label) {\n this.ariaLabel = label.replace(/\\-/g, ' ');\n }\n }\n render() {\n const { ariaLabel, inheritedAttributes } = this;\n return (h(Host, Object.assign({ key: '4bbc232e2530d43e8b5afefb754486d94ea6538b', \"aria-label\": ariaLabel !== undefined && !this.hasAriaHidden() ? ariaLabel : null, alt: \"\", role: \"img\", class: Object.assign({}, createColorClasses(this.color)) }, inheritedAttributes), Build.isBrowser && this.svgContent ? (h(\"div\", { class: \"icon-inner\", innerHTML: this.svgContent })) : (h(\"div\", { class: \"icon-inner\" }))));\n }\n /*****\n * Private Methods\n ****/\n waitUntilVisible(el, rootMargin, cb) {\n if (Build.isBrowser && typeof window !== 'undefined' && (window).IntersectionObserver) {\n const io = (this.io = new (window).IntersectionObserver((data) => {\n if (data[0].isIntersecting) {\n io.disconnect();\n this.io = undefined;\n cb();\n }\n }, { rootMargin }));\n io.observe(el);\n }\n else {\n // browser doesn't support IntersectionObserver\n // so just fallback to always show it\n cb();\n }\n }\n static get is() { return \"pds-icon\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"pds-icon.scss\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"pds-icon.css\"]\n };\n }\n static get assetsDirs() { return [\"svg\"]; }\n static get properties() {\n return {\n \"color\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\\nThe color of the icon\"\n },\n \"attribute\": \"color\",\n \"reflect\": false\n },\n \"icon\": {\n \"type\": \"any\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"any\",\n \"resolved\": \"any\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"This a combination of both `name` and `src`. If a `src` url is detected\\nit will set the `src` property. Otherwise it assumes it's a built-in named\\nSVG and set the `name` property.\"\n },\n \"attribute\": \"icon\",\n \"reflect\": false\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name of the icon to use from\\nthe built-in set.\"\n },\n \"attribute\": \"name\",\n \"reflect\": true\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"| 'small' // 12px\\n | 'regular' // 16px\\n | 'medium' // 20px\\n | 'large' // 24px\\n | 'auto'\\n | string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the icon. This can be\\n'small', 'regular', 'medium', large, or a\\ncustom value (40px, 1rem, etc)\"\n },\n \"attribute\": \"size\",\n \"reflect\": true,\n \"defaultValue\": \"'regular'\"\n },\n \"src\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"\\nSpecifies the exact `src` of an SVG file to use.\"\n },\n \"attribute\": \"src\",\n \"reflect\": false\n }\n };\n }\n static get states() {\n return {\n \"ariaLabel\": {},\n \"isVisible\": {},\n \"svgContent\": {}\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"size\",\n \"methodName\": \"updateStyles\"\n }, {\n \"propName\": \"color\",\n \"methodName\": \"updateStyles\"\n }, {\n \"propName\": \"name\",\n \"methodName\": \"loadIcon\"\n }, {\n \"propName\": \"src\",\n \"methodName\": \"loadIcon\"\n }, {\n \"propName\": \"icon\",\n \"methodName\": \"loadIcon\"\n }];\n }\n}\nconst createColorClasses = (color) => {\n return color\n ? {\n 'pds-color': true,\n [`pds-color-${color}`]: true,\n }\n : null;\n};\n//# sourceMappingURL=pds-icon.js.map\n"],"version":3}
@@ -4,11 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-b7d9268e.js');
6
6
 
7
- const baseCss = ":where(*:not(slot),*:not(slot)::before,*:not(slot)::after){-webkit-box-sizing:border-box;box-sizing:border-box}:where(*:not(slot)){margin:0}:where(img,picture,video,canvas,svg){display:block;max-width:100%}:where(input,button,textarea,select){font:inherit}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(a:not([href]):not([class])){color:currentColor;text-decoration:none}:where(a:not([href]):not([class]):hover){color:currentColor;text-decoration:none}:where(ul[role=list],ol[role=list]){list-style:none}:where(table){border-collapse:collapse;border-spacing:0}:where(*:not(slot)){font:var(--pine-typography-body-md-default);letter-spacing:var(--pine-letter-spacing-body-md)}:where(h1,h2,h3,h4,h5,h6){font-family:var(--pine-font-family-heading);color:var(--pine-color-grey-950)}:where(h1){font:var(--pine-typography-heading-h1);letter-spacing:var(--pine-letter-spacing-heading-h1)}:where(h2){font:var(--pine-typography-heading-h2);letter-spacing:var(--pine-letter-spacing-heading-h2)}:where(h3){font:var(--pine-typography-heading-h3);letter-spacing:var(--pine-letter-spacing-heading-h3)}:where(h4){font:var(--pine-typography-heading-h4);letter-spacing:var(--pine-letter-spacing-heading-h4)}:where(h5){font:var(--pine-typography-heading-h5);letter-spacing:var(--pine-letter-spacing-heading-h5)}:where(h6){font:var(--pine-typography-heading-h6);letter-spacing:var(--pine-letter-spacing-heading-h6)}:where(div,label,p,span){color:var(--pine-color-text-default)}:where(code,kbd,pre,samp){font-family:monospace}:where([role=button]){cursor:pointer}:where(:focus){outline:0}:where(:focus-visible){outline:var(--pine-border-width-thick) solid var(--pine-color-purple-500)}:where([hidden]){display:none !important}";
8
- const PdsImageStyle0 = baseCss;
9
-
10
7
  const pdsImageCss = ":host{--dimension-aspect-ratio:auto;display:inline-block}img{aspect-ratio:var(--dimension-aspect-ratio)}";
11
- const PdsImageStyle1 = pdsImageCss;
8
+ const PdsImageStyle0 = pdsImageCss;
12
9
 
13
10
  const PdsImage = class {
14
11
  constructor(hostRef) {
@@ -23,12 +20,12 @@ const PdsImage = class {
23
20
  this.width = undefined;
24
21
  }
25
22
  render() {
26
- return (index.h(index.Host, { key: 'b74f7f59eadec75c48052e0760ef07ea0b5eb848', class: {
23
+ return (index.h(index.Host, { key: '784f2478acc28f043613c4c8fa67b5bef85820b1', class: {
27
24
  'pds-image': true,
28
- }, id: this.componentId }, index.h("img", { key: '0e993e6d4cb70d73562cbcd3cf193080406adf7a', alt: this.alt, height: this.height, loading: this.loading, sizes: this.sizes, src: this.src, srcset: this.srcset, width: this.width })));
25
+ }, id: this.componentId }, index.h("img", { key: '766a8230a6ea0ae45746fae832206785f963d215', alt: this.alt, height: this.height, loading: this.loading, sizes: this.sizes, src: this.src, srcset: this.srcset, width: this.width })));
29
26
  }
30
27
  };
31
- PdsImage.style = PdsImageStyle0 + PdsImageStyle1;
28
+ PdsImage.style = PdsImageStyle0;
32
29
 
33
30
  exports.pds_image = PdsImage;
34
31
 
@@ -1 +1 @@
1
- {"file":"pds-image.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,OAAO,GAAG,wrDAAwrD,CAAC;AACzsD,uBAAe,OAAO;;ACDtB,MAAM,WAAW,GAAG,0GAA0G,CAAC;AAC/H,uBAAe,WAAW;;MCMb,QAAQ;;;mBAOJ,EAAE;;;uBAkBoB,OAAO;;;;;;IA2B5C,MAAM;QACJ,QACEA,QAACC,UAAI,qDACH,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI;aAClB,EACD,EAAE,EAAE,IAAI,CAAC,WAAW,IAEpBD,kEACE,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB,CACG,EACP;KACH;;;;;;","names":["h","Host"],"sources":["src/global/styles/base.scss?tag=pds-image&encapsulation=shadow","src/components/pds-image/pds-image.scss?tag=pds-image&encapsulation=shadow","src/components/pds-image/pds-image.tsx"],"sourcesContent":["// TODO: replace core tokens with semantic\n// Heading color + outline\n\n/*\n Josh's Custom CSS Reset\n https://www.joshwcomeau.com/css/custom-css-reset/\n*/\n:where(*:not(slot), *:not(slot)::before, *:not(slot)::after) {\n box-sizing: border-box;\n}\n\n:where(*:not(slot)) {\n margin: 0;\n}\n\n:where(img, picture, video, canvas, svg) {\n display: block;\n max-width: 100%;\n}\n\n:where(input, button, textarea, select) {\n font: inherit;\n}\n\n:where(p, h1, h2, h3, h4, h5, h6) {\n overflow-wrap: break-word;\n}\n\n/*\n Additional Reset Styles\n*/\n:where(a:not([href]):not([class])) {\n color: currentColor;\n text-decoration: none;\n}\n\n:where(a:not([href]):not([class]):hover) {\n color: currentColor;\n text-decoration: none;\n}\n\n:where(ul[role='list'], ol[role='list']) {\n list-style: none;\n}\n\n:where(table) {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\n/*\n Mercury Base Styles\n*/\n// Typography\n:where(*:not(slot)) {\n font: var(--pine-typography-body-md-default);\n letter-spacing: var(--pine-letter-spacing-body-md);\n}\n\n:where(h1, h2, h3, h4, h5, h6) {\n font-family: var(--pine-font-family-heading);\n color: var(--pine-color-grey-950);\n}\n\n:where(h1) {\n font: var(--pine-typography-heading-h1);\n letter-spacing: var(--pine-letter-spacing-heading-h1);\n}\n\n:where(h2) {\n font: var(--pine-typography-heading-h2);\n letter-spacing: var(--pine-letter-spacing-heading-h2);\n}\n\n:where(h3) {\n font: var(--pine-typography-heading-h3);\n letter-spacing: var(--pine-letter-spacing-heading-h3);\n}\n\n:where(h4) {\n font: var(--pine-typography-heading-h4);\n letter-spacing: var(--pine-letter-spacing-heading-h4);\n}\n\n:where(h5) {\n font: var(--pine-typography-heading-h5);\n letter-spacing: var(--pine-letter-spacing-heading-h5);\n}\n\n:where(h6) {\n font: var(--pine-typography-heading-h6);\n letter-spacing: var(--pine-letter-spacing-heading-h6);\n}\n\n:where(div, label, p, span) {\n color: var(--pine-color-text-default);\n}\n\n:where(code, kbd, pre, samp) {\n font-family: monospace;\n}\n\n// Accessibility\n:where([role=\"button\"]) {\n cursor: pointer;\n}\n\n:where(:focus) {\n outline: 0;\n}\n\n:where(:focus-visible) {\n outline: var(--pine-border-width-thick) solid var(--pine-color-purple-500);\n}\n\n// Misc.\n:where([hidden]) {\n display: none !important;\n}\n",":host {\n /**\n * @prop --image-aspect-ratio: The image's aspect ratio.\n */\n\n --dimension-aspect-ratio: auto;\n display: inline-block;\n}\n\nimg {\n aspect-ratio: var(--dimension-aspect-ratio);\n}","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pds-image',\n styleUrls: ['../../global/styles/base.scss', 'pds-image.scss'],\n shadow: true,\n})\nexport class PdsImage {\n /**\n * The image's alt tag. If none is provided,\n * it will default to an empty string, which is desired for\n * decorative images.\n * @defaultValue ''\n */\n @Prop() alt? = '';\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * The height of the image in pixels. Setting this will\n * devote space in the layout to prevent layout\n * shifts when the image is loaded.\n */\n @Prop() height?: number;\n\n /**\n * Indicates how the browser should load the image.\n * @defaultValue eager\n */\n @Prop() loading?: 'eager' | 'lazy' = 'eager';\n\n /**\n * Determines the intended display size of an image\n * within certain breakpoints. Has no effect if `srcset`\n * is not set or value has no width descriptor.\n */\n @Prop() sizes?: string;\n\n /**\n * The image's source.\n */\n @Prop() src: string;\n\n /**\n * A set of image sources for the browser to use\n * for responsiveness.\n */\n @Prop() srcset?: string\n\n /**\n * The width of the image in pixels. Setting this will\n * devote space in the layout to prevent layout\n * shifts when the image is loaded.\n */\n @Prop() width?: number;\n\n render() {\n return (\n <Host\n class={{\n 'pds-image': true,\n }}\n id={this.componentId}\n >\n <img\n alt={this.alt}\n height={this.height}\n loading={this.loading}\n sizes={this.sizes}\n src={this.src}\n srcset={this.srcset}\n width={this.width}\n />\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pds-image.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,WAAW,GAAG,0GAA0G,CAAC;AAC/H,uBAAe,WAAW;;MCMb,QAAQ;;;mBAOJ,EAAE;;;uBAkBoB,OAAO;;;;;;IA2B5C,MAAM;QACJ,QACEA,QAACC,UAAI,qDACH,KAAK,EAAE;gBACL,WAAW,EAAE,IAAI;aAClB,EACD,EAAE,EAAE,IAAI,CAAC,WAAW,IAEpBD,kEACE,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB,CACG,EACP;KACH;;;;;;","names":["h","Host"],"sources":["src/components/pds-image/pds-image.scss?tag=pds-image&encapsulation=shadow","src/components/pds-image/pds-image.tsx"],"sourcesContent":[":host {\n /**\n * @prop --dimension-aspect-ratio: The image's aspect ratio.\n */\n\n --dimension-aspect-ratio: auto;\n display: inline-block;\n}\n\nimg {\n aspect-ratio: var(--dimension-aspect-ratio);\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pds-image',\n styleUrls: ['pds-image.scss'],\n shadow: true,\n})\nexport class PdsImage {\n /**\n * The image's alt tag. If none is provided,\n * it will default to an empty string, which is desired for\n * decorative images.\n * @defaultValue ''\n */\n @Prop() alt? = '';\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * The height of the image in pixels. Setting this will\n * devote space in the layout to prevent layout\n * shifts when the image is loaded.\n */\n @Prop() height?: number;\n\n /**\n * Indicates how the browser should load the image.\n * @defaultValue eager\n */\n @Prop() loading?: 'eager' | 'lazy' = 'eager';\n\n /**\n * Determines the intended display size of an image\n * within certain breakpoints. Has no effect if `srcset`\n * is not set or value has no width descriptor.\n */\n @Prop() sizes?: string;\n\n /**\n * The image's source.\n */\n @Prop() src: string;\n\n /**\n * A set of image sources for the browser to use\n * for responsiveness.\n */\n @Prop() srcset?: string\n\n /**\n * The width of the image in pixels. Setting this will\n * devote space in the layout to prevent layout\n * shifts when the image is loaded.\n */\n @Prop() width?: number;\n\n render() {\n return (\n <Host\n class={{\n 'pds-image': true,\n }}\n id={this.componentId}\n >\n <img\n alt={this.alt}\n height={this.height}\n loading={this.loading}\n sizes={this.sizes}\n src={this.src}\n srcset={this.srcset}\n width={this.width}\n />\n </Host>\n );\n }\n}\n"],"version":3}
@@ -3,28 +3,64 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-b7d9268e.js');
6
- const pdsLabel = require('./pds-label-05f073ea.js');
7
- const index$1 = require('./index-3ad62856.js');
6
+ const form = require('./form-4f00637c.js');
7
+ const index$1 = require('./index-034a8bb0.js');
8
+ const utils = require('./utils-39c972f8.js');
9
+ const attributes = require('./attributes-73ee8de7.js');
8
10
 
9
- const baseCss = ":where(*:not(slot),*:not(slot)::before,*:not(slot)::after){-webkit-box-sizing:border-box;box-sizing:border-box}:where(*:not(slot)){margin:0}:where(img,picture,video,canvas,svg){display:block;max-width:100%}:where(input,button,textarea,select){font:inherit}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(a:not([href]):not([class])){color:currentColor;text-decoration:none}:where(a:not([href]):not([class]):hover){color:currentColor;text-decoration:none}:where(ul[role=list],ol[role=list]){list-style:none}:where(table){border-collapse:collapse;border-spacing:0}:where(*:not(slot)){font:var(--pine-typography-body-md-default);letter-spacing:var(--pine-letter-spacing-body-md)}:where(h1,h2,h3,h4,h5,h6){font-family:var(--pine-font-family-heading);color:var(--pine-color-grey-950)}:where(h1){font:var(--pine-typography-heading-h1);letter-spacing:var(--pine-letter-spacing-heading-h1)}:where(h2){font:var(--pine-typography-heading-h2);letter-spacing:var(--pine-letter-spacing-heading-h2)}:where(h3){font:var(--pine-typography-heading-h3);letter-spacing:var(--pine-letter-spacing-heading-h3)}:where(h4){font:var(--pine-typography-heading-h4);letter-spacing:var(--pine-letter-spacing-heading-h4)}:where(h5){font:var(--pine-typography-heading-h5);letter-spacing:var(--pine-letter-spacing-heading-h5)}:where(h6){font:var(--pine-typography-heading-h6);letter-spacing:var(--pine-letter-spacing-heading-h6)}:where(div,label,p,span){color:var(--pine-color-text-default)}:where(code,kbd,pre,samp){font-family:monospace}:where([role=button]){cursor:pointer}:where(:focus){outline:0}:where(:focus-visible){outline:var(--pine-border-width-thick) solid var(--pine-color-purple-500)}:where([hidden]){display:none !important}";
10
- const PdsInputStyle0 = baseCss;
11
+ const pdsInputTokensCss = ":host{--pine-input-color-background-danger:var(--pine-color-red-050)}";
12
+ const PdsInputStyle0 = pdsInputTokensCss;
11
13
 
12
- const pdsInputCss = ":host{--box-shadow-focus:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-purple-300);--box-shadow-focus-error:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-red-300);--color-background-disabled:var(--pine-color-grey-100);--color-background-error:var(--pine-color-red-050);--color-border-active:var(--pine-color-grey-400);--color-border-default:var(--pine-color-grey-300);--color-border-disabled:var(--pine-color-grey-200);--color-border-error:var(--pine-color-red-600);--color-border-hover:var(--pine-color-grey-500);--color-text-default:var(--pine-color-grey-950);--color-text-disabled:var(--pine-color-grey-600);--color-text-error:var(--pine-color-red-600);--color-text-placeholder:var(--pine-color-grey-600);--color-text-placeholder-disabled:var(--pine-color-grey-400);--font-size-helper-message:var(--pine-font-size-085);--font-size-input-field:var(--pine-font-size-100);--font-size-label:var(--pine-font-size-100);--font-weight-helper-message:var(--pine-font-weight-normal);--font-weight-input-field:var(--pine-font-weight-normal);--font-weight-label:var(--pine-font-weight-medium);--line-height-label:var(--pine-line-height-150);--line-height-helper-message:var(--pine-line-height-125);--line-height-input-field:var(--pine-line-height-150);--spacing-field-padding-block:var(--pine-spacing-100);--spacing-input-field-padding-inline:var(--pine-spacing-200);--spacing-label-margin-block-end:var(--pine-spacing-100);--spacing-margin-top-helper-message:var(--pine-spacing-100);--spacing-icon-error-message:var(--pine-spacing-050);display:inline}.pds-input{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}label{font-size:var(--font-size-label);font-weight:var(--font-weight-label);line-height:var(--line-height-label);-webkit-margin-after:var(--spacing-label-margin-block-end);margin-block-end:var(--spacing-label-margin-block-end)}input{border:1px solid var(--color-border-default);border-radius:10px;font-size:var(--font-size-input-field);font-weight:var(--font-weight-input-field);line-height:var(--line-height-input-field);padding:var(--spacing-field-padding-block) var(--spacing-input-field-padding-inline);}input:disabled{background-color:var(--color-background-disabled);border-color:var(--color-border-disabled);color:var(--color-text-disabled);cursor:not-allowed;}input:disabled::-webkit-input-placeholder{color:var(--color-text-placeholder-disabled)}input:disabled::-moz-placeholder{color:var(--color-text-placeholder-disabled)}input:disabled::-moz-placeholder{color:var(--color-text-placeholder-disabled)}input:disabled:-ms-input-placeholder{color:var(--color-text-placeholder-disabled)}input:hover{border-color:var(--color-border-hover)}input:focus-visible{border-color:var(--color-border-active);-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}input::-webkit-input-placeholder{color:var(--color-text-placeholder)}input::-moz-placeholder{color:var(--color-text-placeholder)}input::-moz-placeholder{color:var(--color-text-placeholder)}input:-ms-input-placeholder{color:var(--color-text-placeholder)}input:has(~.pds-input__error-message){background-color:var(--color-background-error);border-color:var(--color-border-error)}input:has(~.pds-input__error-message):focus-visible{-webkit-box-shadow:var(--box-shadow-focus-error);box-shadow:var(--box-shadow-focus-error);outline:none}.pds-input__error-message,.pds-input__helper-message{font-size:var(--font-size-helper-message);font-weight:var(--font-weight-helper-message);line-height:var(--line-height-helper-message);-webkit-margin-after:0;margin-block-end:0;-webkit-margin-before:var(--spacing-margin-top-helper-message);margin-block-start:var(--spacing-margin-top-helper-message)}.pds-input__error-message{-ms-flex-align:center;align-items:center;color:var(--color-text-error);display:-ms-flexbox;display:flex;font-size:var(--font-size-helper-message);gap:var(--spacing-icon-error-message)}";
13
- const PdsInputStyle1 = pdsInputCss;
14
+ const labelCss = ":host{display:inline-block}:host([aria-disabled=true]) label{color:var(--pine-color-text-label-disabled)}:host([aria-readonly=true]) label{color:var(--pine-color-text-label-readonly)}label{color:var(--pine-color-text-label);font-weight:var(--pine-font-weight-medium)}";
15
+ const PdsInputStyle1 = labelCss;
16
+
17
+ const pdsInputCss = ":host{--box-shadow-focus:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring);--box-shadow-focus-error:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring-danger);display:inline}:host([aria-readonly=true]) input{background-color:var(--pine-color-background-container-disabled);color:var(--pine-color-text-readonly)}.pds-input{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}label{color:var(--pine-color-text-label);font-weight:var(--pine-font-weight-medium)}input{border:1px solid var(--pine-color-border);border-radius:10px;color:var(--pine-color-text-active);font-size:var(--pine-font-size);font-weight:var(--pine-font-weight-regular);line-height:var(--pine-line-height-body);padding:var(--pine-dimension-xs) var(--pine-dimension-sm);}input:disabled{background-color:var(--pine-color-background-container-disabled);border-color:var(--pine-color-border-disabled);color:var(--pine-color-text-disabled);cursor:not-allowed;}input:disabled::-webkit-input-placeholder{color:var(--pine-color-text-placeholder-disabled)}input:disabled::-moz-placeholder{color:var(--pine-color-text-placeholder-disabled)}input:disabled::-moz-placeholder{color:var(--pine-color-text-placeholder-disabled)}input:disabled:-ms-input-placeholder{color:var(--pine-color-text-placeholder-disabled)}input:hover{border-color:var(--pine-color-border-hover)}input:focus-visible{border-color:var(--pine-color-border-active);-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}input::-webkit-input-placeholder{color:var(--pine-color-text-placeholder)}input::-moz-placeholder{color:var(--pine-color-text-placeholder)}input::-moz-placeholder{color:var(--pine-color-text-placeholder)}input:-ms-input-placeholder{color:var(--pine-color-text-placeholder)}input:has(~.pds-input__error-message){background-color:var(--pine-input-color-background-danger);border-color:var(--pine-color-border-danger)}input:has(~.pds-input__error-message):focus-visible{-webkit-box-shadow:var(--box-shadow-focus-error);box-shadow:var(--box-shadow-focus-error);outline:none}.pds-input__error-message,.pds-input__helper-message{font:var(--pine-typography-body-sm-medium);-webkit-margin-after:0;margin-block-end:0;-webkit-margin-before:var(--pine-dimension-xs);margin-block-start:var(--pine-dimension-xs)}.pds-input__error-message{-ms-flex-align:center;align-items:center;color:var(--pine-color-text-message-danger);display:-ms-flexbox;display:flex;gap:var(--pine-dimension-2xs)}";
18
+ const PdsInputStyle2 = pdsInputCss;
14
19
 
15
20
  const PdsInput = class {
16
21
  constructor(hostRef) {
17
22
  index.registerInstance(this, hostRef);
23
+ this.pdsBlur = index.createEvent(this, "pdsBlur", 7);
24
+ this.pdsChange = index.createEvent(this, "pdsChange", 7);
25
+ this.pdsFocus = index.createEvent(this, "pdsFocus", 7);
18
26
  this.pdsInput = index.createEvent(this, "pdsInput", 7);
27
+ this.inheritedAttributes = {};
28
+ this.isComposing = false;
19
29
  this.onInputEvent = (ev) => {
20
30
  const input = ev.target;
21
31
  if (input) {
22
32
  this.value = input.value || '';
23
33
  }
24
- this.pdsInput.emit(ev);
34
+ this.emitInputChange(ev);
35
+ };
36
+ this.onChangeEvent = (ev) => {
37
+ this.emitValueChange(ev);
38
+ };
39
+ this.onBlurEvent = (ev) => {
40
+ this.hasFocus = false;
41
+ if (this.focusedValue !== this.value) {
42
+ /**
43
+ * Emits the `pdsChange` event when the input value
44
+ * is different than the value when the input was focused.
45
+ */
46
+ this.emitValueChange(ev);
47
+ }
48
+ this.pdsBlur.emit(ev);
49
+ };
50
+ this.onFocusEvent = (ev) => {
51
+ this.hasFocus = true;
52
+ this.focusedValue = this.value;
53
+ this.pdsFocus.emit(ev);
54
+ };
55
+ this.onCompositionStart = () => {
56
+ this.isComposing = true;
57
+ };
58
+ this.onCompositionEnd = () => {
59
+ this.isComposing = false;
25
60
  };
26
61
  this.autocomplete = undefined;
27
62
  this.componentId = undefined;
63
+ this.debounce = undefined;
28
64
  this.disabled = undefined;
29
65
  this.errorMessage = undefined;
30
66
  this.helperMessage = undefined;
@@ -35,15 +71,73 @@ const PdsInput = class {
35
71
  this.readonly = undefined;
36
72
  this.required = undefined;
37
73
  this.type = 'text';
38
- this.value = undefined;
74
+ this.value = '';
75
+ this.hasFocus = false;
76
+ }
77
+ /**
78
+ * Sets focus on the native `input` in the `pds-input`. Use this method instead of the global
79
+ * `input.focus()`.
80
+ */
81
+ async setFocus() {
82
+ if (this.nativeInput) {
83
+ this.nativeInput.focus();
84
+ }
85
+ }
86
+ debounceChanged() {
87
+ const { pdsInput, debounce, originalPdsInput } = this;
88
+ /**
89
+ * If debounce is undefined, we have to manually revert the pdsInput emitter in case
90
+ * debounce used to be set to a number. Otherwise, the event would stay debounced.
91
+ */
92
+ this.pdsInput = debounce === undefined ? originalPdsInput !== null && originalPdsInput !== void 0 ? originalPdsInput : pdsInput : utils.debounceEvent(pdsInput, debounce);
93
+ }
94
+ valueChanged() {
95
+ const nativeInput = this.nativeInput;
96
+ const value = this.getValue();
97
+ if (nativeInput && nativeInput.value !== value && !this.isComposing) {
98
+ nativeInput.value = value;
99
+ }
100
+ }
101
+ getValue() {
102
+ return typeof this.value === 'number' ? this.value.toString() : (this.value || '').toString();
103
+ }
104
+ /**
105
+ * Emits a pdsChange event
106
+ */
107
+ emitValueChange(event) {
108
+ const { value } = this;
109
+ const newValue = value == null ? value : value.toString();
110
+ this.focusedValue = newValue;
111
+ this.pdsChange.emit({ value: newValue, event });
112
+ }
113
+ /**
114
+ *
115
+ * Emits a `pdsInput` event
116
+ */
117
+ emitInputChange(event) {
118
+ const { value } = this;
119
+ // Checks for both null and undefined values
120
+ const newValue = value == null ? value : value.toString();
121
+ this.pdsInput.emit({ value: newValue, event });
122
+ }
123
+ componentWillLoad() {
124
+ this.inheritedAttributes = Object.assign({}, attributes.inheritAriaAttributes(this.el));
125
+ }
126
+ componentDidLoad() {
127
+ this.debounceChanged();
39
128
  }
40
129
  render() {
41
- return (index.h(index.Host, { key: '2894ea5f48af1818f28ce05c63ec28ee6dff2f5d', "aria-disabled": this.disabled ? 'true' : null }, index.h("div", { key: '92ce53c22ca6eed66e33c1c50c8d0ff0a3b68b4c', class: "pds-input" }, index.h(pdsLabel.PdsLabel, { key: '71be1b6dbaee982e199e482f1edc21b34621e1a3', htmlFor: this.componentId, text: this.label }), index.h("input", { key: '4ff1e2d8b3f5156a4f7ace72b168ec1f03959463', class: "pds-input__field", "aria-describedby": pdsLabel.assignDescription(this.componentId, this.invalid, this.helperMessage), "aria-invalid": this.invalid ? "true" : undefined, autocomplete: this.autocomplete, disabled: this.disabled, id: this.componentId, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, type: this.type, value: this.value, onInput: this.onInputEvent }), this.helperMessage &&
42
- index.h("p", { key: 'b0b144c49182e233f59d442384a1904b7a8307cd', class: "pds-input__helper-message", id: pdsLabel.messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
43
- index.h("p", { key: 'f66cc5c3b0463a4f7f62c54626692fa11f221568', class: "pds-input__error-message", id: pdsLabel.messageId(this.componentId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: 'efaccf89df9ca61b12f48c25c57bc02074d405e8', icon: index$1.danger, size: "small" }), this.errorMessage))));
130
+ return (index.h(index.Host, { key: '4247c9ed871a2f5e39fea4c222367341eda18e32', "aria-disabled": this.disabled ? 'true' : null, "aria-readonly": this.readonly ? 'true' : null }, index.h("div", { key: 'b49fb30682b34b2c20ed6b0959d66e18050088d0', class: "pds-input" }, index.h("label", { key: 'ac028db52deca16edd0663ccccdc01d3651a299a', htmlFor: this.componentId }, this.label), index.h("input", Object.assign({ key: 'cf478f28743397013c0964aa3f6232de2a319f7a', class: "pds-input__field", ref: (input) => this.nativeInput = input, "aria-describedby": form.assignDescription(this.componentId, this.invalid, this.helperMessage), "aria-invalid": this.invalid ? "true" : undefined, autocomplete: this.autocomplete, disabled: this.disabled, id: this.componentId, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, type: this.type, value: this.value, onInput: this.onInputEvent, onChange: this.onChangeEvent, onBlur: this.onBlurEvent, onFocus: this.onFocusEvent, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd }, this.inheritedAttributes)), this.helperMessage &&
131
+ index.h("p", { key: '78180c0527fc6ef81d9e915898333a9e09e892e4', class: "pds-input__helper-message", id: form.messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
132
+ index.h("p", { key: '9512deaecd57644da843557cd07ac8880cde424f', class: "pds-input__error-message", id: form.messageId(this.componentId, 'error'), "aria-live": "assertive" }, index.h("pds-icon", { key: '38c36403181b41c06f16e737f088e58199f07618', icon: index$1.danger, size: "small" }), this.errorMessage))));
44
133
  }
134
+ get el() { return index.getElement(this); }
135
+ static get watchers() { return {
136
+ "debounce": ["debounceChanged"],
137
+ "value": ["valueChanged"]
138
+ }; }
45
139
  };
46
- PdsInput.style = PdsInputStyle0 + PdsInputStyle1;
140
+ PdsInput.style = PdsInputStyle0 + (PdsInputStyle1 + PdsInputStyle2);
47
141
 
48
142
  exports.pds_input = PdsInput;
49
143
 
@@ -1 +1 @@
1
- {"file":"pds-input.entry.cjs.js","mappings":";;;;;;;;AAAA,MAAM,OAAO,GAAG,wrDAAwrD,CAAC;AACzsD,uBAAe,OAAO;;ACDtB,MAAM,WAAW,GAAG,s1HAAs1H,CAAC;AAC32H,uBAAe,WAAW;;MCSb,QAAQ;;;;QA0EX,iBAAY,GAAG,CAAC,EAAS;YAC/B,MAAM,KAAK,GAAG,EAAE,CAAC,MAAiC,CAAC;YACnD,IAAI,KAAK,EAAE;gBACT,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;aAChC;YACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAgB,CAAC,CAAC;SACtC,CAAC;;;;;;;;;;;;oBAlBa,MAAM;;;IAoBrB,MAAM;QACJ,QACEA,QAACC,UAAI,sEACY,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,IAE5CD,kEAAK,KAAK,EAAC,WAAW,IACpBA,QAACE,iBAAQ,qDAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,GAAI,EACzDF,oEAAO,KAAK,EAAC,kBAAkB,sBACXG,0BAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,kBACzE,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,EAC/C,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,YAAY,GAC1B,EACD,IAAI,CAAC,aAAa;YACjBH,gEACE,KAAK,EAAC,2BAA2B,EACjC,EAAE,EAAEI,kBAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAExC,IAAI,CAAC,aAAa,CACjB,EAEL,IAAI,CAAC,YAAY;YAChBJ,gEACE,KAAK,EAAC,0BAA0B,EAChC,EAAE,EAAEI,kBAAS,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,eAC9B,WAAW,IAErBJ,uEAAU,IAAI,EAAEK,cAAM,EAAE,IAAI,EAAC,OAAO,GAAG,EACtC,IAAI,CAAC,YAAY,CAChB,CAEF,CACD,EACP;KACH;;;;;;","names":["h","Host","PdsLabel","assignDescription","messageId","danger"],"sources":["src/global/styles/base.scss?tag=pds-input&encapsulation=shadow","src/components/pds-input/pds-input.scss?tag=pds-input&encapsulation=shadow","src/components/pds-input/pds-input.tsx"],"sourcesContent":["// TODO: replace core tokens with semantic\n// Heading color + outline\n\n/*\n Josh's Custom CSS Reset\n https://www.joshwcomeau.com/css/custom-css-reset/\n*/\n:where(*:not(slot), *:not(slot)::before, *:not(slot)::after) {\n box-sizing: border-box;\n}\n\n:where(*:not(slot)) {\n margin: 0;\n}\n\n:where(img, picture, video, canvas, svg) {\n display: block;\n max-width: 100%;\n}\n\n:where(input, button, textarea, select) {\n font: inherit;\n}\n\n:where(p, h1, h2, h3, h4, h5, h6) {\n overflow-wrap: break-word;\n}\n\n/*\n Additional Reset Styles\n*/\n:where(a:not([href]):not([class])) {\n color: currentColor;\n text-decoration: none;\n}\n\n:where(a:not([href]):not([class]):hover) {\n color: currentColor;\n text-decoration: none;\n}\n\n:where(ul[role='list'], ol[role='list']) {\n list-style: none;\n}\n\n:where(table) {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\n/*\n Mercury Base Styles\n*/\n// Typography\n:where(*:not(slot)) {\n font: var(--pine-typography-body-md-default);\n letter-spacing: var(--pine-letter-spacing-body-md);\n}\n\n:where(h1, h2, h3, h4, h5, h6) {\n font-family: var(--pine-font-family-heading);\n color: var(--pine-color-grey-950);\n}\n\n:where(h1) {\n font: var(--pine-typography-heading-h1);\n letter-spacing: var(--pine-letter-spacing-heading-h1);\n}\n\n:where(h2) {\n font: var(--pine-typography-heading-h2);\n letter-spacing: var(--pine-letter-spacing-heading-h2);\n}\n\n:where(h3) {\n font: var(--pine-typography-heading-h3);\n letter-spacing: var(--pine-letter-spacing-heading-h3);\n}\n\n:where(h4) {\n font: var(--pine-typography-heading-h4);\n letter-spacing: var(--pine-letter-spacing-heading-h4);\n}\n\n:where(h5) {\n font: var(--pine-typography-heading-h5);\n letter-spacing: var(--pine-letter-spacing-heading-h5);\n}\n\n:where(h6) {\n font: var(--pine-typography-heading-h6);\n letter-spacing: var(--pine-letter-spacing-heading-h6);\n}\n\n:where(div, label, p, span) {\n color: var(--pine-color-text-default);\n}\n\n:where(code, kbd, pre, samp) {\n font-family: monospace;\n}\n\n// Accessibility\n:where([role=\"button\"]) {\n cursor: pointer;\n}\n\n:where(:focus) {\n outline: 0;\n}\n\n:where(:focus-visible) {\n outline: var(--pine-border-width-thick) solid var(--pine-color-purple-500);\n}\n\n// Misc.\n:where([hidden]) {\n display: none !important;\n}\n",":host {\n --box-shadow-focus: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-purple-300);\n --box-shadow-focus-error: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-red-300);\n\n --color-background-disabled: var(--pine-color-grey-100);\n --color-background-error: var(--pine-color-red-050);\n --color-border-active: var(--pine-color-grey-400);\n --color-border-default: var(--pine-color-grey-300);\n --color-border-disabled: var(--pine-color-grey-200);\n --color-border-error: var(--pine-color-red-600);\n --color-border-hover: var(--pine-color-grey-500);\n --color-text-default: var(--pine-color-grey-950);\n --color-text-disabled: var(--pine-color-grey-600);\n --color-text-error: var(--pine-color-red-600);\n --color-text-placeholder: var(--pine-color-grey-600);\n --color-text-placeholder-disabled: var(--pine-color-grey-400);\n\n --font-size-helper-message: var(--pine-font-size-085);\n --font-size-input-field: var(--pine-font-size-100);\n --font-size-label: var(--pine-font-size-100);\n --font-weight-helper-message: var(--pine-font-weight-normal);\n --font-weight-input-field: var(--pine-font-weight-normal);\n --font-weight-label: var(--pine-font-weight-medium);\n\n --line-height-label: var(--pine-line-height-150);\n --line-height-helper-message: var(--pine-line-height-125);\n --line-height-input-field: var(--pine-line-height-150);\n\n --spacing-field-padding-block: var(--pine-spacing-100);\n --spacing-input-field-padding-inline: var(--pine-spacing-200);\n --spacing-label-margin-block-end: var(--pine-spacing-100);\n --spacing-margin-top-helper-message: var(--pine-spacing-100);\n --spacing-icon-error-message: var(--pine-spacing-050);\n\n display: inline;\n}\n\n.pds-input {\n display: flex;\n flex-direction: column;\n}\n\nlabel {\n font-size: var(--font-size-label);\n font-weight: var(--font-weight-label);\n line-height: var(--line-height-label);\n margin-block-end: var(--spacing-label-margin-block-end);\n}\n\ninput {\n border: 1px solid var(--color-border-default);\n border-radius: 10px;\n font-size: var(--font-size-input-field);\n font-weight: var(--font-weight-input-field);\n line-height: var(--line-height-input-field);\n padding: var(--spacing-field-padding-block) var(--spacing-input-field-padding-inline);\n\n &:disabled {\n background-color: var(--color-background-disabled);\n border-color: var(--color-border-disabled);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n\n /* stylelint-disable */\n &::-webkit-input-placeholder {\n color: var(--color-text-placeholder-disabled);\n }\n\n &::-moz-placeholder {\n color: var(--color-text-placeholder-disabled);\n }\n\n &::-moz-placeholder {\n color: var(--color-text-placeholder-disabled);\n }\n\n &:-ms-input-placeholder {\n color: var(--color-text-placeholder-disabled);\n }\n /* stylelint-enable */\n }\n\n &:hover {\n border-color: var(--color-border-hover);\n }\n\n &:focus-visible {\n border-color: var(--color-border-active);\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n\n /* stylelint-disable */\n &::-webkit-input-placeholder {\n color: var(--color-text-placeholder);\n }\n\n &::-moz-placeholder {\n color: var(--color-text-placeholder);\n }\n\n &::-moz-placeholder {\n color: var(--color-text-placeholder);\n }\n\n &:-ms-input-placeholder {\n color: var(--color-text-placeholder);\n }\n\n &:has(~.pds-input__error-message) {\n background-color: var(--color-background-error);\n border-color: var(--color-border-error);\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus-error);\n outline: none;\n }\n }\n /* stylelint-enable */\n}\n\n.pds-input__error-message,\n.pds-input__helper-message {\n font-size: var(--font-size-helper-message);\n font-weight: var(--font-weight-helper-message);\n line-height: var(--line-height-helper-message);\n margin-block-end: 0;\n margin-block-start: var(--spacing-margin-top-helper-message);\n}\n\n.pds-input__error-message {\n align-items: center;\n color: var(--color-text-error);\n display: flex;\n font-size: var(--font-size-helper-message);\n gap: var(--spacing-icon-error-message);\n}\n","import { Component, Event, EventEmitter, h, Host, Prop } from '@stencil/core';\nimport { assignDescription, messageId } from '../../utils/form';\nimport { PdsLabel } from '../_internal/pds-label/pds-label';\nimport { danger } from '@pine-ds/icons/icons';\n\n@Component({\n tag: 'pds-input',\n styleUrls: ['../../global/styles/base.scss', 'pds-input.scss'],\n shadow: true,\n})\nexport class PdsInput {\n\n /**\n * Specifies if and how the browser provides `autocomplete` assistance for the field.\n */\n @Prop() autocomplete: string;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Determines whether or not the input field is disabled.\n */\n @Prop() disabled?: boolean;\n\n /**\n * Specifies the error message and provides an error-themed treatment to the field.\n */\n @Prop() errorMessage?: string;\n\n /**\n * Displays a message or hint below the input field.\n */\n @Prop() helperMessage?: string;\n\n /**\n * Determines whether or not the input field is invalid or throws an error.\n */\n @Prop() invalid?: boolean;\n\n /**\n * Text to be displayed as the input label.\n */\n @Prop() label?: string;\n\n /**\n * Specifies the name. Submitted with the form name/value pair.\n */\n @Prop() name?: string;\n\n /**\n * Specifies a short hint that describes the expected value of the input field.\n */\n @Prop() placeholder?: string;\n\n /**\n * Determines whether or not the input field is readonly.\n */\n @Prop() readonly?: boolean;\n\n /**\n * Determines whether or not the input field is required.\n */\n @Prop() required?: boolean;\n\n /**\n * Determines the type of control that will be displayed\n `'email'`, `'number'`, `'password'`, `'tel'`, `'text'`\n * @defaultValue \"text\"\n */\n @Prop() type = 'text';\n\n /**\n * The value of the input.\n */\n @Prop({mutable: true}) value?: string;\n\n /**\n * Emitted when a keyboard input occurs.\n */\n @Event() pdsInput: EventEmitter<InputEvent>;\n\n private onInputEvent = (ev: Event) => {\n const input = ev.target as HTMLInputElement | null;\n if (input) {\n this.value = input.value || '';\n }\n this.pdsInput.emit(ev as InputEvent);\n };\n\n render() {\n return (\n <Host\n aria-disabled={this.disabled ? 'true' : null}\n >\n <div class=\"pds-input\">\n <PdsLabel htmlFor={this.componentId} text={this.label} />\n <input class=\"pds-input__field\"\n aria-describedby={assignDescription(this.componentId, this.invalid, this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n autocomplete={this.autocomplete}\n disabled={this.disabled}\n id={this.componentId}\n name={this.name}\n placeholder={this.placeholder}\n readOnly={this.readonly}\n required={this.required}\n type={this.type}\n value={this.value}\n onInput={this.onInputEvent}\n />\n {this.helperMessage &&\n <p\n class=\"pds-input__helper-message\"\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </p>\n }\n {this.errorMessage &&\n <p\n class=\"pds-input__error-message\"\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </p>\n }\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pds-input.entry.cjs.js","mappings":"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","names":["debounceEvent","inheritAriaAttributes","h","Host","assignDescription","messageId","danger"],"sources":["src/components/pds-input/pds-input.tokens.scss?tag=pds-input&encapsulation=shadow","src/global/styles/utils/label.scss?tag=pds-input&encapsulation=shadow","src/components/pds-input/pds-input.scss?tag=pds-input&encapsulation=shadow","src/components/pds-input/pds-input.tsx"],"sourcesContent":["/**\n * Do not edit directly, this file was auto-generated.\n */\n\n:host {\n --pine-input-color-background-danger: var(--pine-color-red-050);\n}\n",":host {\n display: inline-block;\n}\n\n:host([aria-disabled=\"true\"]) label {\n color: var(--pine-color-text-label-disabled);\n}\n\n:host([aria-readonly=\"true\"]) {\n label {\n color: var(--pine-color-text-label-readonly);\n }\n}\n\nlabel {\n color: var(--pine-color-text-label);\n font-weight: var(--pine-font-weight-medium);\n\n}\n",":host {\n --box-shadow-focus: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring);\n --box-shadow-focus-error: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring-danger);\n\n display: inline;\n}\n\n:host([aria-readonly=\"true\"]) {\n input {\n background-color: var(--pine-color-background-container-disabled);\n color: var(--pine-color-text-readonly);\n }\n}\n\n.pds-input {\n display: flex;\n flex-direction: column;\n}\n\nlabel {\n color: var(--pine-color-text-label);\n font-weight: var(--pine-font-weight-medium);\n}\n\ninput {\n border: 1px solid var(--pine-color-border);\n border-radius: 10px;\n color: var(--pine-color-text-active);\n font-size: var(--pine-font-size);\n font-weight: var(--pine-font-weight-regular);\n line-height: var(--pine-line-height-body);\n padding: var(--pine-dimension-xs) var(--pine-dimension-sm);\n\n &:disabled {\n background-color: var(--pine-color-background-container-disabled);\n border-color: var(--pine-color-border-disabled);\n color: var(--pine-color-text-disabled);\n cursor: not-allowed;\n\n /* stylelint-disable */\n &::-webkit-input-placeholder {\n color: var(--pine-color-text-placeholder-disabled);\n }\n\n &::-moz-placeholder {\n color: var(--pine-color-text-placeholder-disabled);\n }\n\n &::-moz-placeholder {\n color: var(--pine-color-text-placeholder-disabled);\n }\n\n &:-ms-input-placeholder {\n color: var(--pine-color-text-placeholder-disabled);\n }\n /* stylelint-enable */\n }\n\n &:hover {\n border-color: var(--pine-color-border-hover);\n }\n\n &:focus-visible {\n border-color: var(--pine-color-border-active);\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n\n /* stylelint-disable */\n &::-webkit-input-placeholder {\n color: var(--pine-color-text-placeholder);\n }\n\n &::-moz-placeholder {\n color: var(--pine-color-text-placeholder);\n }\n\n &::-moz-placeholder {\n color: var(--pine-color-text-placeholder);\n }\n\n &:-ms-input-placeholder {\n color: var(--pine-color-text-placeholder);\n }\n\n &:has(~.pds-input__error-message) {\n\n background-color: var(--pine-input-color-background-danger);\n border-color: var(--pine-color-border-danger);\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus-error);\n outline: none;\n }\n }\n /* stylelint-enable */\n}\n\n.pds-input__error-message,\n.pds-input__helper-message {\n font: var(--pine-typography-body-sm-medium);\n margin-block-end: 0;\n margin-block-start: var(--pine-dimension-xs);\n}\n\n.pds-input__error-message {\n align-items: center;\n color: var(--pine-color-text-message-danger);\n display: flex;\n gap: var(--pine-dimension-2xs);\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport { assignDescription, messageId } from '../../utils/form';\nimport { danger } from '@pine-ds/icons/icons';\n\nimport { debounceEvent } from '@utils/utils';\nimport { inheritAriaAttributes } from '@utils/attributes';\n\nimport type { Attributes } from '@utils/attributes';\nimport type { InputChangeEventDetail, InputInputEventDetail } from './input-interface';\n\n@Component({\n tag: 'pds-input',\n styleUrls: ['pds-input.tokens.scss', '../../global/styles/utils/label.scss', 'pds-input.scss'],\n shadow: true,\n})\nexport class PdsInput {\n private nativeInput?: HTMLInputElement;\n private inheritedAttributes: Attributes = {};\n private isComposing = false;\n /**\n * The value of the input when the input is focused.\n */\n private focusedValue?: string | number | null;\n\n private originalPdsInput?: EventEmitter<InputInputEventDetail>;\n\n @Element() el!: HTMLPdsInputElement;\n\n /**\n * Emitted when the input loses focus.\n */\n @Event() pdsBlur!: EventEmitter<FocusEvent>;\n\n /**\n *\n * Emitted when the value has changed.\n *\n * This event will not emit when programmatically setting the `value` property.\n */\n @Event() pdsChange!: EventEmitter<InputChangeEventDetail>;\n\n /**\n * Emitted when the input has focus.\n */\n @Event() pdsFocus!: EventEmitter<FocusEvent>;\n\n /**\n * Emitted when a keyboard input occurs.\n */\n @Event() pdsInput: EventEmitter<InputInputEventDetail>;\n\n /**\n * Sets focus on the native `input` in the `pds-input`. Use this method instead of the global\n * `input.focus()`.\n */\n @Method()\n async setFocus() {\n if ( this.nativeInput ) {\n this.nativeInput.focus();\n }\n }\n\n /**\n * Specifies if and how the browser provides `autocomplete` assistance for the field.\n */\n @Prop() autocomplete: string;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * Sets the number of milliseconds to wait before updating the value.\n */\n @Prop() debounce?: number;\n\n /**\n * Determines whether or not the input field is disabled.\n */\n @Prop() disabled?: boolean;\n\n /**\n * Specifies the error message and provides an error-themed treatment to the field.\n */\n @Prop() errorMessage?: string;\n\n /**\n * Displays a message or hint below the input field.\n */\n @Prop() helperMessage?: string;\n\n /**\n * Determines whether or not the input field is invalid or throws an error.\n */\n @Prop() invalid?: boolean;\n\n /**\n * Text to be displayed as the input label.\n */\n @Prop() label?: string;\n\n /**\n * Specifies the name. Submitted with the form name/value pair.\n */\n @Prop() name?: string;\n\n /**\n * Specifies a short hint that describes the expected value of the input field.\n */\n @Prop() placeholder?: string;\n\n /**\n * Determines whether or not the input field is readonly.\n */\n @Prop() readonly?: boolean;\n\n /**\n * Determines whether or not the input field is required.\n */\n @Prop() required?: boolean;\n\n /**\n * Determines the type of control that will be displayed\n * `'email'`, `'number'`, `'password'`, `'tel'`, `'text'`\n * @defaultValue \"text\"\n */\n @Prop() type = 'text';\n\n /**\n * The value of the input.\n */\n @Prop({mutable: true}) value?: string | number | null = '';\n\n /**\n * Determines if the input has focus.\n */\n @State() hasFocus = false;\n\n\n @Watch('debounce')\n protected debounceChanged() {\n const { pdsInput, debounce, originalPdsInput } = this;\n\n /**\n * If debounce is undefined, we have to manually revert the pdsInput emitter in case\n * debounce used to be set to a number. Otherwise, the event would stay debounced.\n */\n this.pdsInput = debounce === undefined ? originalPdsInput ?? pdsInput : debounceEvent(pdsInput, debounce);\n }\n\n @Watch('value')\n protected valueChanged() {\n const nativeInput = this.nativeInput;\n const value = this.getValue();\n\n if (nativeInput && nativeInput.value !== value && !this.isComposing) {\n nativeInput.value = value;\n }\n }\n\n private getValue(): string {\n return typeof this.value === 'number' ? this.value.toString() : (this.value || '').toString();\n }\n\n private onInputEvent = (ev: Event) => {\n const input = ev.target as HTMLInputElement | null;\n if (input) {\n this.value = input.value || '';\n }\n this.emitInputChange(ev);\n };\n\n private onChangeEvent = (ev: Event) => {\n this.emitValueChange(ev);\n };\n\n private onBlurEvent = (ev: FocusEvent) => {\n this.hasFocus = false;\n\n if (this.focusedValue !== this.value) {\n /**\n * Emits the `pdsChange` event when the input value\n * is different than the value when the input was focused.\n */\n this.emitValueChange(ev);\n }\n\n this.pdsBlur.emit(ev);\n };\n\n private onFocusEvent = (ev: FocusEvent) => {\n this.hasFocus = true;\n this.focusedValue = this.value;\n\n this.pdsFocus.emit(ev);\n };\n\n private onCompositionStart = () => {\n this.isComposing = true;\n }\n\n private onCompositionEnd = () => {\n this.isComposing = false;\n }\n\n /**\n * Emits a pdsChange event\n */\n private emitValueChange(event?: Event) {\n const { value } = this;\n const newValue = value == null ? value : value.toString();\n\n this.focusedValue = newValue;\n this.pdsChange.emit({ value: newValue, event });\n }\n\n /**\n *\n * Emits a `pdsInput` event\n */\n private emitInputChange(event?: Event) {\n const { value } = this;\n\n // Checks for both null and undefined values\n const newValue = value == null ? value : value.toString();\n\n this.pdsInput.emit({ value: newValue, event });\n }\n\n\n componentWillLoad() {\n this.inheritedAttributes = {\n ...inheritAriaAttributes(this.el)\n }\n }\n\n componentDidLoad() {\n this.debounceChanged();\n }\n\n render() {\n return (\n <Host\n aria-disabled={this.disabled ? 'true' : null}\n aria-readonly={this.readonly ? 'true' : null}\n >\n <div class=\"pds-input\">\n <label htmlFor={this.componentId}>{this.label}</label>\n <input class=\"pds-input__field\"\n ref={(input) => this.nativeInput = input}\n aria-describedby={assignDescription(this.componentId, this.invalid, this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n autocomplete={this.autocomplete}\n disabled={this.disabled}\n id={this.componentId}\n name={this.name}\n placeholder={this.placeholder}\n readOnly={this.readonly}\n required={this.required}\n type={this.type}\n value={this.value}\n onInput={this.onInputEvent}\n onChange={this.onChangeEvent}\n onBlur={this.onBlurEvent}\n onFocus={this.onFocusEvent}\n onCompositionstart={this.onCompositionStart}\n onCompositionend={this.onCompositionEnd}\n {...this.inheritedAttributes}\n />\n {this.helperMessage &&\n <p\n class=\"pds-input__helper-message\"\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </p>\n }\n {this.errorMessage &&\n <p\n class=\"pds-input__error-message\"\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n <pds-icon icon={danger} size=\"small\" />\n {this.errorMessage}\n </p>\n }\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ const index = require('./index-b7d9268e.js');
4
+
5
+ /**
6
+ * Returns markup for an input label.
7
+ * @internal
8
+ */
9
+ const PdsLabel = ({ classNames, htmlFor, text }) => (index.h("label", { class: classNames, htmlFor: htmlFor }, text));
10
+
11
+ exports.PdsLabel = PdsLabel;
12
+
13
+ //# sourceMappingURL=pds-label-e0d9a97d.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-label-e0d9a97d.js","mappings":";;;;AAkBA;;;;MAIa,QAAQ,GAAoC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MACrFA,mBAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,IAAG,IAAI,CAAS;;;;","names":["h"],"sources":["src/components/_internal/pds-label/pds-label.tsx"],"sourcesContent":["import { FunctionalComponent, h } from '@stencil/core';\n\n/**\n * Props for the input label.\n */\ninterface LabelProps {\n classNames?: string,\n /**\n * Corresponds to the 'for' attribute on a label. Useful for\n * associating a label with a specific input.\n */\n htmlFor: string,\n /**\n * Label text displayed.\n */\n text: string,\n}\n\n/**\n * Returns markup for an input label.\n * @internal\n */\nexport const PdsLabel: FunctionalComponent<LabelProps> = ({ classNames, htmlFor, text }) => (\n <label class={classNames} htmlFor={htmlFor}>{text}</label>\n);\n"],"version":3}
@@ -3,13 +3,10 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-b7d9268e.js');
6
- const index$1 = require('./index-3ad62856.js');
6
+ const index$1 = require('./index-034a8bb0.js');
7
7
 
8
- const baseCss = ":where(*:not(slot),*:not(slot)::before,*:not(slot)::after){-webkit-box-sizing:border-box;box-sizing:border-box}:where(*:not(slot)){margin:0}:where(img,picture,video,canvas,svg){display:block;max-width:100%}:where(input,button,textarea,select){font:inherit}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(a:not([href]):not([class])){color:currentColor;text-decoration:none}:where(a:not([href]):not([class]):hover){color:currentColor;text-decoration:none}:where(ul[role=list],ol[role=list]){list-style:none}:where(table){border-collapse:collapse;border-spacing:0}:where(*:not(slot)){font:var(--pine-typography-body-md-default);letter-spacing:var(--pine-letter-spacing-body-md)}:where(h1,h2,h3,h4,h5,h6){font-family:var(--pine-font-family-heading);color:var(--pine-color-grey-950)}:where(h1){font:var(--pine-typography-heading-h1);letter-spacing:var(--pine-letter-spacing-heading-h1)}:where(h2){font:var(--pine-typography-heading-h2);letter-spacing:var(--pine-letter-spacing-heading-h2)}:where(h3){font:var(--pine-typography-heading-h3);letter-spacing:var(--pine-letter-spacing-heading-h3)}:where(h4){font:var(--pine-typography-heading-h4);letter-spacing:var(--pine-letter-spacing-heading-h4)}:where(h5){font:var(--pine-typography-heading-h5);letter-spacing:var(--pine-letter-spacing-heading-h5)}:where(h6){font:var(--pine-typography-heading-h6);letter-spacing:var(--pine-letter-spacing-heading-h6)}:where(div,label,p,span){color:var(--pine-color-text-default)}:where(code,kbd,pre,samp){font-family:monospace}:where([role=button]){cursor:pointer}:where(:focus){outline:0}:where(:focus-visible){outline:var(--pine-border-width-thick) solid var(--pine-color-purple-500)}:where([hidden]){display:none !important}";
9
- const PdsLinkStyle0 = baseCss;
10
-
11
- const pdsLinkCss = ":host{--border-outline:4px solid var(--pine-color-blue-200);--border-radius:var(--pine-border-radius-075);--box-shadow-focus:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-purple-300);--color-text-default:var(--pine-color-text-default);--color-text-hover:var(--pine-color-grey-900);--font-size-default:var(--pine-font-size-body-md);--font-size-sm:var(--pine-font-size-body-sm);--font-size-xs:var(--pine-font-size-body-xs);--font-weight:var(--pine-font-weight-body-medium);--spacing-inline-start-margin:var(--pine-spacing-050);--sizing-svg-lg:var(--font-size-default);--sizing-svg-md:var(--font-size-sm);--sizing-svg-sm:var(--font-size-xs);display:inline}:host pds-icon{-webkit-margin-start:var(--spacing-inline-start-margin);margin-inline-start:var(--spacing-inline-start-margin)}.pds-link{-ms-flex-align:center;align-items:center;color:var(--color-text);display:-ms-inline-flexbox;display:inline-flex;font-weight:var(--font-weight)}.pds-link:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none;position:relative}.pds-link--sm{font-size:var(--font-size-xs)}.pds-link--sm pds-icon{height:var(--sizing-svg-sm);width:var(--sizing-svg-sm)}.pds-link--md{font-size:var(--font-size-sm)}.pds-link--md pds-icon{height:var(--sizing-svg-md);width:var(--sizing-svg-md)}.pds-link--lg{font-size:var(--font-size-default)}.pds-link--lg pds-icon{height:var(--sizing-svg-lg);width:var(--sizing-svg-lg)}.pds-link--plain{text-decoration:none}.pds-link--plain:hover{color:var(--color-text-hover);text-decoration:underline}.pds-link--default{text-decoration:underline}.pds-link--default:hover{color:var(--color-text-hover);text-decoration:none}";
12
- const PdsLinkStyle1 = pdsLinkCss;
8
+ const pdsLinkCss = ":host{--box-shadow-focus:0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring);display:inline}:host pds-icon{-webkit-margin-start:var(--pine-dimension-2xs);margin-inline-start:var(--pine-dimension-2xs)}.pds-link{-ms-flex-align:center;align-items:center;color:var(--pine-color-text);display:-ms-inline-flexbox;display:inline-flex;font-weight:var(--pine-font-weight-medium)}.pds-link:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none;position:relative}.pds-link--sm{font-size:var(--pine-font-size-body-xs)}.pds-link--sm pds-icon{height:var(--pine-dimension-xs);width:var(--pine-dimension-xs)}.pds-link--md{font-size:var(--pine-font-size-body-sm)}.pds-link--md pds-icon{height:var(--pine-dimension-xs);width:var(--pine-dimension-xs)}.pds-link--lg{font-size:var(--pine-font-size-body-md)}.pds-link--lg pds-icon{height:var(--pine-dimension-sm);width:var(--pine-dimension-sm)}.pds-link--plain{text-decoration:none}.pds-link--plain:hover{color:var(--pine-color-text-hover);text-decoration:underline}.pds-link--default{text-decoration:underline}.pds-link--default:hover{color:var(--pine-color-text-hover);text-decoration:none}";
9
+ const PdsLinkStyle0 = pdsLinkCss;
13
10
 
14
11
  const PdsLink = class {
15
12
  constructor(hostRef) {
@@ -31,11 +28,11 @@ const PdsLink = class {
31
28
  return classNames.join(' ');
32
29
  }
33
30
  render() {
34
- return (index.h("a", { key: '0301c40c5571d5713ff50262c9cd288b476bfb02', class: this.classNames(), href: this.href, id: this.componentId, target: this.external ? '_blank' : undefined, part: "link" }, index.h("slot", { key: 'dae97a17d38c0308d74f75b859d704d0d28d789d' }, this.href), this.external &&
35
- index.h("pds-icon", { key: '5c242186e0080db10ede73c232fd83643b54df03', icon: index$1.launch, size: this.fontSize })));
31
+ return (index.h("a", { key: 'd21ad4828be4f730d996dfa814ea8f8863053a51', class: this.classNames(), href: this.href, id: this.componentId, target: this.external ? '_blank' : undefined, part: "link" }, index.h("slot", { key: '7e2dd2c8f33a12ba99a7b0c6f80e263c4fc7d695' }, this.href), this.external &&
32
+ index.h("pds-icon", { key: '8e1597318fb76223ae25232b9f1a814781f25409', icon: index$1.launch, size: this.fontSize })));
36
33
  }
37
34
  };
38
- PdsLink.style = PdsLinkStyle0 + PdsLinkStyle1;
35
+ PdsLink.style = PdsLinkStyle0;
39
36
 
40
37
  exports.pds_link = PdsLink;
41
38
 
@@ -1 +1 @@
1
- {"file":"pds-link.entry.cjs.js","mappings":";;;;;;;AAAA,MAAM,OAAO,GAAG,wrDAAwrD,CAAC;AACzsD,sBAAe,OAAO;;ACDtB,MAAM,UAAU,GAAG,4oDAA4oD,CAAC;AAChqD,sBAAe,UAAU;;MCYZ,OAAO;;;;wBAUC,KAAK;uBAMc,QAAQ;wBAMP,IAAI;;;IAOnC,UAAU;QAChB,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,UAAU,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/C;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,UAAU,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9C;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAC7B;IAED,MAAM;QAEJ,QACEA,gEACE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EACxB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,MAAM,EAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAC5C,IAAI,EAAC,MAAM,IAEXA,qEAAO,IAAI,CAAC,IAAI,CAAQ,EACvB,IAAI,CAAC,QAAQ;YACZA,uEAAU,IAAI,EAAEC,cAAM,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAa,CAExD,EACJ;KACH;;;;;;","names":["h","launch"],"sources":["src/global/styles/base.scss?tag=pds-link&encapsulation=shadow","src/components/pds-link/pds-link.scss?tag=pds-link&encapsulation=shadow","src/components/pds-link/pds-link.tsx"],"sourcesContent":["// TODO: replace core tokens with semantic\n// Heading color + outline\n\n/*\n Josh's Custom CSS Reset\n https://www.joshwcomeau.com/css/custom-css-reset/\n*/\n:where(*:not(slot), *:not(slot)::before, *:not(slot)::after) {\n box-sizing: border-box;\n}\n\n:where(*:not(slot)) {\n margin: 0;\n}\n\n:where(img, picture, video, canvas, svg) {\n display: block;\n max-width: 100%;\n}\n\n:where(input, button, textarea, select) {\n font: inherit;\n}\n\n:where(p, h1, h2, h3, h4, h5, h6) {\n overflow-wrap: break-word;\n}\n\n/*\n Additional Reset Styles\n*/\n:where(a:not([href]):not([class])) {\n color: currentColor;\n text-decoration: none;\n}\n\n:where(a:not([href]):not([class]):hover) {\n color: currentColor;\n text-decoration: none;\n}\n\n:where(ul[role='list'], ol[role='list']) {\n list-style: none;\n}\n\n:where(table) {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\n/*\n Mercury Base Styles\n*/\n// Typography\n:where(*:not(slot)) {\n font: var(--pine-typography-body-md-default);\n letter-spacing: var(--pine-letter-spacing-body-md);\n}\n\n:where(h1, h2, h3, h4, h5, h6) {\n font-family: var(--pine-font-family-heading);\n color: var(--pine-color-grey-950);\n}\n\n:where(h1) {\n font: var(--pine-typography-heading-h1);\n letter-spacing: var(--pine-letter-spacing-heading-h1);\n}\n\n:where(h2) {\n font: var(--pine-typography-heading-h2);\n letter-spacing: var(--pine-letter-spacing-heading-h2);\n}\n\n:where(h3) {\n font: var(--pine-typography-heading-h3);\n letter-spacing: var(--pine-letter-spacing-heading-h3);\n}\n\n:where(h4) {\n font: var(--pine-typography-heading-h4);\n letter-spacing: var(--pine-letter-spacing-heading-h4);\n}\n\n:where(h5) {\n font: var(--pine-typography-heading-h5);\n letter-spacing: var(--pine-letter-spacing-heading-h5);\n}\n\n:where(h6) {\n font: var(--pine-typography-heading-h6);\n letter-spacing: var(--pine-letter-spacing-heading-h6);\n}\n\n:where(div, label, p, span) {\n color: var(--pine-color-text-default);\n}\n\n:where(code, kbd, pre, samp) {\n font-family: monospace;\n}\n\n// Accessibility\n:where([role=\"button\"]) {\n cursor: pointer;\n}\n\n:where(:focus) {\n outline: 0;\n}\n\n:where(:focus-visible) {\n outline: var(--pine-border-width-thick) solid var(--pine-color-purple-500);\n}\n\n// Misc.\n:where([hidden]) {\n display: none !important;\n}\n",":host {\n\n --border-outline: 4px solid var(--pine-color-blue-200);\n --border-radius: var(--pine-border-radius-075);\n --box-shadow-focus: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-purple-300);\n\n --color-text-default: var(--pine-color-text-default);\n --color-text-hover: var(--pine-color-grey-900);\n\n --font-size-default: var(--pine-font-size-body-md);\n --font-size-sm: var(--pine-font-size-body-sm);\n --font-size-xs: var(--pine-font-size-body-xs);\n --font-weight: var(--pine-font-weight-body-medium);\n\n --spacing-inline-start-margin: var(--pine-spacing-050);\n --sizing-svg-lg: var(--font-size-default);\n --sizing-svg-md: var(--font-size-sm);\n --sizing-svg-sm: var(--font-size-xs);\n\n display: inline;\n\n pds-icon {\n margin-inline-start: var(--spacing-inline-start-margin);\n }\n}\n\n.pds-link {\n align-items: center;\n color: var(--color-text);\n display: inline-flex;\n font-weight: var(--font-weight);\n\n &:focus-visible {\n // outline: var(--pine-border-focus); Border radius for outline does not work in Safari\n box-shadow: var(--box-shadow-focus); // Remove when outline radius is supported in Safari\n outline: none;\n position: relative;\n }\n}\n\n// We have a small consensus stating that\n// fonts will be REMs, box-model will be\n// discussed later px or (r)em's\n.pds-link--sm {\n font-size: var(--font-size-xs);\n\n pds-icon {\n height: var(--sizing-svg-sm);\n width: var(--sizing-svg-sm);\n }\n}\n\n.pds-link--md {\n font-size: var(--font-size-sm);\n\n pds-icon {\n height: var(--sizing-svg-md);\n width: var(--sizing-svg-md);\n }\n}\n\n.pds-link--lg {\n font-size: var(--font-size-default);\n\n pds-icon {\n height: var(--sizing-svg-lg);\n width: var(--sizing-svg-lg);\n }\n}\n\n.pds-link--plain {\n text-decoration: none;\n\n &:hover {\n color: var(--color-text-hover);\n text-decoration: underline;\n }\n}\n\n// Default = inline link\n.pds-link--default {\n text-decoration: underline;\n\n &:hover {\n color: var(--color-text-hover);\n text-decoration: none;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\nimport { launch } from '@pine-ds/icons/icons';\n\n/**\n * @part link - Link element styles.\n * @slot (default) - Text content placed between the opening and closing tags. If no text is provided, the **href** will be used as a fallback.\n */\n@Component({\n tag: 'pds-link',\n styleUrls: ['../../global/styles/base.scss', 'pds-link.scss'],\n shadow: true,\n})\nexport class PdsLink {\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether the link should open in a new tab.\n * @defaultValue false\n */\n @Prop() external = false;\n\n /**\n * Sets the link variant styles.\n * @defaultValue inline\n */\n @Prop() variant: 'inline' | 'plain' = 'inline';\n\n /**\n * The font size of the link's text.\n * @defaultValue lg\n */\n @Prop() fontSize: 'sm' | 'md' | 'lg' = 'lg';\n\n /**\n * The hyperlink's destination URL. If no text is provided in the custom slot, the href will be used.\n */\n @Prop() href!: string;\n\n private classNames() {\n const classNames = ['pds-link'];\n\n if (this.fontSize) {\n classNames.push('pds-link--' + this.fontSize);\n }\n\n if (this.variant) {\n classNames.push('pds-link--' + this.variant);\n }\n\n return classNames.join(' ');\n }\n\n render() {\n\n return (\n <a\n class={this.classNames()}\n href={this.href}\n id={this.componentId}\n target={this.external ? '_blank' : undefined}\n part=\"link\"\n >\n <slot>{this.href}</slot>\n {this.external &&\n <pds-icon icon={launch} size={this.fontSize}></pds-icon>\n }\n </a>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pds-link.entry.cjs.js","mappings":";;;;;;;AAAA,MAAM,UAAU,GAAG,2pCAA2pC,CAAC;AAC/qC,sBAAe,UAAU;;MCYZ,OAAO;;;;wBAUC,KAAK;uBAMc,QAAQ;wBAMP,IAAI;;;IAOnC,UAAU;QAChB,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,UAAU,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/C;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,UAAU,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9C;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KAC7B;IAED,MAAM;QAEJ,QACEA,gEACE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EACxB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,MAAM,EAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAC5C,IAAI,EAAC,MAAM,IAEXA,qEAAO,IAAI,CAAC,IAAI,CAAQ,EACvB,IAAI,CAAC,QAAQ;YACZA,uEAAU,IAAI,EAAEC,cAAM,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAa,CAExD,EACJ;KACH;;;;;;","names":["h","launch"],"sources":["src/components/pds-link/pds-link.scss?tag=pds-link&encapsulation=shadow","src/components/pds-link/pds-link.tsx"],"sourcesContent":[":host {\n\n --box-shadow-focus: 0 0 0 1px #ffffff, 0 0 0 3px var(--pine-color-focus-ring);\n\n display: inline;\n\n pds-icon {\n margin-inline-start: var(--pine-dimension-2xs);\n }\n}\n\n.pds-link {\n align-items: center;\n color: var(--pine-color-text);\n display: inline-flex;\n font-weight: var(--pine-font-weight-medium);\n\n &:focus-visible {\n // outline: var(--pine-border-focus); Border radius for outline does not work in Safari\n box-shadow: var(--box-shadow-focus); // Remove when outline radius is supported in Safari\n outline: none;\n position: relative;\n }\n}\n\n// We have a small consensus stating that\n// fonts will be REMs, box-model will be\n// discussed later px or (r)em's\n.pds-link--sm {\n font-size: var(--pine-font-size-body-xs);\n\n pds-icon {\n height: var(--pine-dimension-xs);\n width: var(--pine-dimension-xs);\n }\n}\n\n.pds-link--md {\n font-size: var(--pine-font-size-body-sm);\n\n pds-icon {\n height: var(--pine-dimension-xs);\n width: var(--pine-dimension-xs);\n }\n}\n\n.pds-link--lg {\n font-size: var(--pine-font-size-body-md);\n\n pds-icon {\n height: var(--pine-dimension-sm);\n width: var(--pine-dimension-sm);\n }\n}\n\n.pds-link--plain {\n text-decoration: none;\n\n &:hover {\n color: var(--pine-color-text-hover);\n text-decoration: underline;\n }\n}\n\n// Default = inline link\n.pds-link--default {\n text-decoration: underline;\n\n &:hover {\n color: var(--pine-color-text-hover);\n text-decoration: none;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\nimport { launch } from '@pine-ds/icons/icons';\n\n/**\n * @part link - Link element styles.\n * @slot (default) - Text content placed between the opening and closing tags. If no text is provided, the **href** will be used as a fallback.\n */\n@Component({\n tag: 'pds-link',\n styleUrls: ['pds-link.scss'],\n shadow: true,\n})\nexport class PdsLink {\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether the link should open in a new tab.\n * @defaultValue false\n */\n @Prop() external = false;\n\n /**\n * Sets the link variant styles.\n * @defaultValue inline\n */\n @Prop() variant: 'inline' | 'plain' = 'inline';\n\n /**\n * The font size of the link's text.\n * @defaultValue lg\n */\n @Prop() fontSize: 'sm' | 'md' | 'lg' = 'lg';\n\n /**\n * The hyperlink's destination URL. If no text is provided in the custom slot, the href will be used.\n */\n @Prop() href!: string;\n\n private classNames() {\n const classNames = ['pds-link'];\n\n if (this.fontSize) {\n classNames.push('pds-link--' + this.fontSize);\n }\n\n if (this.variant) {\n classNames.push('pds-link--' + this.variant);\n }\n\n return classNames.join(' ');\n }\n\n render() {\n\n return (\n <a\n class={this.classNames()}\n href={this.href}\n id={this.componentId}\n target={this.external ? '_blank' : undefined}\n part=\"link\"\n >\n <slot>{this.href}</slot>\n {this.external &&\n <pds-icon icon={launch} size={this.fontSize}></pds-icon>\n }\n </a>\n );\n }\n}\n"],"version":3}