@pine-ds/core 0.0.2-alpha.0 → 0.0.2-rc.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 (276) hide show
  1. package/components/custom-elements.d.ts +2 -0
  2. package/components/index.d.ts +33 -0
  3. package/components/index.js +3 -0
  4. package/components/index.js.map +1 -0
  5. package/components/package.json +9 -0
  6. package/components/pds-avatar.d.ts +11 -0
  7. package/components/pds-avatar.js +98 -0
  8. package/components/pds-avatar.js.map +1 -0
  9. package/components/pds-button.d.ts +11 -0
  10. package/components/pds-button.js +8 -0
  11. package/components/pds-button.js.map +1 -0
  12. package/components/pds-button2.js +82 -0
  13. package/components/pds-button2.js.map +1 -0
  14. package/components/pds-checkbox.d.ts +11 -0
  15. package/components/pds-checkbox.js +83 -0
  16. package/components/pds-checkbox.js.map +1 -0
  17. package/components/pds-chip.d.ts +11 -0
  18. package/components/pds-chip.js +76 -0
  19. package/components/pds-chip.js.map +1 -0
  20. package/components/pds-copytext.d.ts +11 -0
  21. package/components/pds-copytext.js +100 -0
  22. package/components/pds-copytext.js.map +1 -0
  23. package/components/pds-divider.d.ts +11 -0
  24. package/components/pds-divider.js +53 -0
  25. package/components/pds-divider.js.map +1 -0
  26. package/components/pds-icon.js +8 -0
  27. package/components/pds-icon.js.map +1 -0
  28. package/components/pds-icon2.js +323 -0
  29. package/components/pds-icon2.js.map +1 -0
  30. package/components/pds-image.d.ts +11 -0
  31. package/components/pds-image.js +54 -0
  32. package/components/pds-image.js.map +1 -0
  33. package/components/pds-input.d.ts +11 -0
  34. package/components/pds-input.js +71 -0
  35. package/components/pds-input.js.map +1 -0
  36. package/components/pds-label.js +39 -0
  37. package/components/pds-label.js.map +1 -0
  38. package/components/pds-link.d.ts +11 -0
  39. package/components/pds-link.js +66 -0
  40. package/components/pds-link.js.map +1 -0
  41. package/components/pds-progress.d.ts +11 -0
  42. package/components/pds-progress.js +48 -0
  43. package/components/pds-progress.js.map +1 -0
  44. package/components/pds-radio.d.ts +11 -0
  45. package/components/pds-radio.js +77 -0
  46. package/components/pds-radio.js.map +1 -0
  47. package/components/pds-sortable-item.d.ts +11 -0
  48. package/components/pds-sortable-item.js +47 -0
  49. package/components/pds-sortable-item.js.map +1 -0
  50. package/components/pds-sortable.d.ts +11 -0
  51. package/components/pds-sortable.js +2724 -0
  52. package/components/pds-sortable.js.map +1 -0
  53. package/components/pds-switch.d.ts +11 -0
  54. package/components/pds-switch.js +81 -0
  55. package/components/pds-switch.js.map +1 -0
  56. package/components/pds-tab.d.ts +11 -0
  57. package/components/pds-tab.js +52 -0
  58. package/components/pds-tab.js.map +1 -0
  59. package/components/pds-tabpanel.d.ts +11 -0
  60. package/components/pds-tabpanel.js +44 -0
  61. package/components/pds-tabpanel.js.map +1 -0
  62. package/components/pds-tabs.d.ts +11 -0
  63. package/components/pds-tabs.js +118 -0
  64. package/components/pds-tabs.js.map +1 -0
  65. package/components/pds-textarea.d.ts +11 -0
  66. package/components/pds-textarea.js +81 -0
  67. package/components/pds-textarea.js.map +1 -0
  68. package/components/pds-tooltip.d.ts +11 -0
  69. package/components/pds-tooltip.js +177 -0
  70. package/components/pds-tooltip.js.map +1 -0
  71. package/dist/cjs/{index-13500e25.js → index-0b3b1872.js} +25 -17
  72. package/dist/cjs/index-0b3b1872.js.map +1 -0
  73. package/dist/cjs/loader.cjs.js +2 -2
  74. package/dist/cjs/pds-avatar.cjs.entry.js +1 -1
  75. package/dist/cjs/pds-button.cjs.entry.js +1 -1
  76. package/dist/cjs/pds-checkbox.cjs.entry.js +2 -2
  77. package/dist/cjs/pds-chip.cjs.entry.js +1 -1
  78. package/dist/cjs/pds-copytext.cjs.entry.js +1 -1
  79. package/dist/cjs/pds-divider.cjs.entry.js +1 -1
  80. package/dist/cjs/pds-icon.cjs.entry.js +37 -15
  81. package/dist/cjs/pds-icon.cjs.entry.js.map +1 -1
  82. package/dist/cjs/pds-image.cjs.entry.js +1 -1
  83. package/dist/cjs/pds-input.cjs.entry.js +2 -2
  84. package/dist/cjs/{pds-label-71ea2cad.js → pds-label-43804d0a.js} +2 -2
  85. package/dist/cjs/{pds-label-71ea2cad.js.map → pds-label-43804d0a.js.map} +1 -1
  86. package/dist/cjs/pds-link.cjs.entry.js +5 -2
  87. package/dist/cjs/pds-link.cjs.entry.js.map +1 -1
  88. package/dist/cjs/pds-progress.cjs.entry.js +1 -1
  89. package/dist/cjs/pds-radio.cjs.entry.js +2 -2
  90. package/dist/cjs/pds-sortable-item.cjs.entry.js +1 -1
  91. package/dist/cjs/pds-sortable.cjs.entry.js +1 -1
  92. package/dist/cjs/pds-switch.cjs.entry.js +2 -2
  93. package/dist/cjs/pds-tab.cjs.entry.js +1 -1
  94. package/dist/cjs/pds-tabpanel.cjs.entry.js +1 -1
  95. package/dist/cjs/pds-tabs.cjs.entry.js +1 -1
  96. package/dist/cjs/pds-textarea.cjs.entry.js +2 -2
  97. package/dist/cjs/pds-tooltip.cjs.entry.js +1 -1
  98. package/dist/cjs/pine-core.cjs.js +3 -3
  99. package/dist/cjs/pine-core.cjs.js.map +1 -1
  100. package/dist/collection/collection-manifest.json +1 -1
  101. package/dist/collection/components/pds-link/pds-link.js +2 -1
  102. package/dist/collection/components/pds-link/pds-link.js.map +1 -1
  103. package/dist/docs.d.ts +1 -21
  104. package/dist/docs.json +2 -2
  105. package/dist/esm/{index-a58668b3.js → index-8f65139a.js} +25 -17
  106. package/dist/esm/index-8f65139a.js.map +1 -0
  107. package/dist/esm/loader.js +3 -3
  108. package/dist/esm/pds-avatar.entry.js +1 -1
  109. package/dist/esm/pds-button.entry.js +1 -1
  110. package/dist/esm/pds-checkbox.entry.js +2 -2
  111. package/dist/esm/pds-chip.entry.js +1 -1
  112. package/dist/esm/pds-copytext.entry.js +1 -1
  113. package/dist/esm/pds-divider.entry.js +1 -1
  114. package/dist/esm/pds-icon.entry.js +37 -15
  115. package/dist/esm/pds-icon.entry.js.map +1 -1
  116. package/dist/esm/pds-image.entry.js +1 -1
  117. package/dist/esm/pds-input.entry.js +2 -2
  118. package/dist/esm/{pds-label-a26dd876.js → pds-label-85f84612.js} +2 -2
  119. package/dist/esm/{pds-label-a26dd876.js.map → pds-label-85f84612.js.map} +1 -1
  120. package/dist/esm/pds-link.entry.js +5 -2
  121. package/dist/esm/pds-link.entry.js.map +1 -1
  122. package/dist/esm/pds-progress.entry.js +1 -1
  123. package/dist/esm/pds-radio.entry.js +2 -2
  124. package/dist/esm/pds-sortable-item.entry.js +1 -1
  125. package/dist/esm/pds-sortable.entry.js +1 -1
  126. package/dist/esm/pds-switch.entry.js +2 -2
  127. package/dist/esm/pds-tab.entry.js +1 -1
  128. package/dist/esm/pds-tabpanel.entry.js +1 -1
  129. package/dist/esm/pds-tabs.entry.js +1 -1
  130. package/dist/esm/pds-textarea.entry.js +2 -2
  131. package/dist/esm/pds-tooltip.entry.js +1 -1
  132. package/dist/esm/pine-core.js +4 -4
  133. package/dist/esm/pine-core.js.map +1 -1
  134. package/dist/esm-es5/index-8f65139a.js +3 -0
  135. package/dist/esm-es5/index-8f65139a.js.map +1 -0
  136. package/dist/esm-es5/loader.js +1 -1
  137. package/dist/esm-es5/loader.js.map +1 -1
  138. package/dist/esm-es5/pds-avatar.entry.js +1 -1
  139. package/dist/esm-es5/pds-button.entry.js +1 -1
  140. package/dist/esm-es5/pds-checkbox.entry.js +1 -1
  141. package/dist/esm-es5/pds-chip.entry.js +1 -1
  142. package/dist/esm-es5/pds-copytext.entry.js +1 -1
  143. package/dist/esm-es5/pds-divider.entry.js +1 -1
  144. package/dist/esm-es5/pds-icon.entry.js +1 -1
  145. package/dist/esm-es5/pds-icon.entry.js.map +1 -1
  146. package/dist/esm-es5/pds-image.entry.js +1 -1
  147. package/dist/esm-es5/pds-input.entry.js +1 -1
  148. package/dist/esm-es5/{pds-label-a26dd876.js → pds-label-85f84612.js} +2 -2
  149. package/dist/esm-es5/pds-link.entry.js +1 -1
  150. package/dist/esm-es5/pds-link.entry.js.map +1 -1
  151. package/dist/esm-es5/pds-progress.entry.js +1 -1
  152. package/dist/esm-es5/pds-radio.entry.js +1 -1
  153. package/dist/esm-es5/pds-sortable-item.entry.js +1 -1
  154. package/dist/esm-es5/pds-sortable.entry.js +1 -1
  155. package/dist/esm-es5/pds-switch.entry.js +1 -1
  156. package/dist/esm-es5/pds-tab.entry.js +1 -1
  157. package/dist/esm-es5/pds-tabpanel.entry.js +1 -1
  158. package/dist/esm-es5/pds-tabs.entry.js +1 -1
  159. package/dist/esm-es5/pds-textarea.entry.js +1 -1
  160. package/dist/esm-es5/pds-tooltip.entry.js +1 -1
  161. package/dist/esm-es5/pine-core.js +1 -1
  162. package/dist/esm-es5/pine-core.js.map +1 -1
  163. package/dist/pine-core/p-0532f829.entry.js +2 -0
  164. package/dist/pine-core/p-0532f829.entry.js.map +1 -0
  165. package/dist/pine-core/{p-f2c3035d.system.entry.js → p-09573d54.system.entry.js} +2 -2
  166. package/dist/pine-core/{p-f09892d3.system.entry.js → p-150e12a5.system.entry.js} +2 -2
  167. package/dist/pine-core/{p-c8a41b43.system.entry.js → p-1a307cc4.system.entry.js} +2 -2
  168. package/dist/pine-core/{p-4fc42ff3.system.entry.js → p-1cb9fddf.system.entry.js} +2 -2
  169. package/dist/pine-core/{p-79d7e0b1.system.entry.js → p-237709cc.system.entry.js} +2 -2
  170. package/dist/pine-core/{p-8f62c812.entry.js → p-23b8d1bb.entry.js} +2 -2
  171. package/dist/pine-core/{p-22dd8116.entry.js → p-2847bd57.entry.js} +2 -2
  172. package/dist/pine-core/{p-f3af6d74.system.entry.js → p-34b29411.system.entry.js} +2 -2
  173. package/dist/pine-core/p-3d2843f8.system.js +2 -0
  174. package/dist/pine-core/{p-c4dbae0e.system.js.map → p-3d2843f8.system.js.map} +1 -1
  175. package/dist/pine-core/{p-73262287.system.entry.js → p-403d43d5.system.entry.js} +2 -2
  176. package/dist/pine-core/{p-669d948a.system.entry.js → p-4472b337.system.entry.js} +2 -2
  177. package/dist/pine-core/{p-f168654a.entry.js → p-465b7120.entry.js} +2 -2
  178. package/dist/pine-core/{p-401cd4bc.entry.js → p-5787d0c0.entry.js} +2 -2
  179. package/dist/pine-core/{p-7bc01826.entry.js → p-59334e35.entry.js} +2 -2
  180. package/dist/pine-core/{p-85f6a94e.system.entry.js → p-5d7bad14.system.entry.js} +2 -2
  181. package/dist/pine-core/{p-331cbf1d.entry.js → p-60930784.entry.js} +2 -2
  182. package/dist/pine-core/{p-bce2d5b5.system.entry.js → p-654295e2.system.entry.js} +2 -2
  183. package/dist/pine-core/{p-c0f9dbe1.system.entry.js → p-66f8fbb0.system.entry.js} +2 -2
  184. package/dist/pine-core/{p-0c26a00d.entry.js → p-6c295ed8.entry.js} +2 -2
  185. package/dist/pine-core/{p-0a776a7b.entry.js → p-6dd5d826.entry.js} +2 -2
  186. package/dist/pine-core/p-6f044e28.entry.js +2 -0
  187. package/dist/pine-core/{p-643f5378.entry.js.map → p-6f044e28.entry.js.map} +1 -1
  188. package/dist/pine-core/{p-5b37a4a2.system.entry.js → p-708a557d.system.entry.js} +2 -2
  189. package/dist/pine-core/{p-fba29e90.entry.js → p-7f16e44f.entry.js} +2 -2
  190. package/dist/pine-core/{p-22bd3102.system.entry.js → p-83040cfc.system.entry.js} +2 -2
  191. package/dist/pine-core/{p-bff583bd.system.js → p-9138d494.system.js} +2 -2
  192. package/dist/pine-core/{p-1c0ffcab.entry.js → p-978cad20.entry.js} +2 -2
  193. package/dist/pine-core/p-9830c8b4.system.js +3 -0
  194. package/dist/pine-core/p-9830c8b4.system.js.map +1 -0
  195. package/dist/pine-core/{p-4a804680.entry.js → p-9a184d74.entry.js} +2 -2
  196. package/dist/pine-core/{p-b17b818b.entry.js → p-aa9f027c.entry.js} +2 -2
  197. package/dist/pine-core/p-b199ca99.entry.js +2 -0
  198. package/dist/pine-core/p-b199ca99.entry.js.map +1 -0
  199. package/dist/pine-core/p-b8421db5.system.entry.js +2 -0
  200. package/dist/pine-core/p-b8421db5.system.entry.js.map +1 -0
  201. package/dist/pine-core/{p-d3e173ea.system.entry.js → p-bf6b565e.system.entry.js} +2 -2
  202. package/dist/pine-core/{p-938886d8.system.entry.js → p-c014702b.system.entry.js} +2 -2
  203. package/dist/pine-core/p-c209ff58.system.entry.js +2 -0
  204. package/dist/pine-core/p-c209ff58.system.entry.js.map +1 -0
  205. package/dist/pine-core/p-c81c20b7.js +3 -0
  206. package/dist/pine-core/p-c81c20b7.js.map +1 -0
  207. package/dist/pine-core/{p-27fd7f08.system.entry.js → p-d0446af7.system.entry.js} +2 -2
  208. package/dist/pine-core/{p-7fcd5f0b.entry.js → p-d1c7a84d.entry.js} +2 -2
  209. package/dist/pine-core/{p-930ab8a3.system.entry.js → p-d6e0c333.system.entry.js} +2 -2
  210. package/dist/pine-core/{p-97cb4285.entry.js → p-d8a277e5.entry.js} +2 -2
  211. package/dist/pine-core/{p-ac31a7c8.system.entry.js → p-da802c91.system.entry.js} +2 -2
  212. package/dist/pine-core/{p-24077dcd.entry.js → p-db6ea8de.entry.js} +2 -2
  213. package/dist/pine-core/{p-f1d7f16f.js → p-e893b132.js} +2 -2
  214. package/dist/pine-core/{p-0adb4b48.entry.js → p-f30549db.entry.js} +2 -2
  215. package/dist/pine-core/{p-af75cc15.entry.js → p-f3ee8a5e.entry.js} +2 -2
  216. package/dist/pine-core/pine-core.esm.js +1 -1
  217. package/dist/pine-core/pine-core.esm.js.map +1 -1
  218. package/dist/pine-core/pine-core.js +1 -1
  219. package/dist/pine-core/svg/blog-filled.svg +1 -1
  220. package/package.json +3 -2
  221. package/dist/cjs/index-13500e25.js.map +0 -1
  222. package/dist/esm/index-a58668b3.js.map +0 -1
  223. package/dist/esm-es5/index-a58668b3.js +0 -3
  224. package/dist/esm-es5/index-a58668b3.js.map +0 -1
  225. package/dist/pine-core/p-23fb6af2.system.entry.js +0 -2
  226. package/dist/pine-core/p-23fb6af2.system.entry.js.map +0 -1
  227. package/dist/pine-core/p-3386bfe1.system.entry.js +0 -2
  228. package/dist/pine-core/p-3386bfe1.system.entry.js.map +0 -1
  229. package/dist/pine-core/p-643f5378.entry.js +0 -2
  230. package/dist/pine-core/p-abdca153.js +0 -3
  231. package/dist/pine-core/p-abdca153.js.map +0 -1
  232. package/dist/pine-core/p-b79a8b07.entry.js +0 -2
  233. package/dist/pine-core/p-b79a8b07.entry.js.map +0 -1
  234. package/dist/pine-core/p-c4dbae0e.system.js +0 -2
  235. package/dist/pine-core/p-c6d878f8.entry.js +0 -2
  236. package/dist/pine-core/p-c6d878f8.entry.js.map +0 -1
  237. package/dist/pine-core/p-fa5d4e73.system.js +0 -3
  238. package/dist/pine-core/p-fa5d4e73.system.js.map +0 -1
  239. /package/dist/esm-es5/{pds-label-a26dd876.js.map → pds-label-85f84612.js.map} +0 -0
  240. /package/dist/pine-core/{p-f2c3035d.system.entry.js.map → p-09573d54.system.entry.js.map} +0 -0
  241. /package/dist/pine-core/{p-f09892d3.system.entry.js.map → p-150e12a5.system.entry.js.map} +0 -0
  242. /package/dist/pine-core/{p-c8a41b43.system.entry.js.map → p-1a307cc4.system.entry.js.map} +0 -0
  243. /package/dist/pine-core/{p-4fc42ff3.system.entry.js.map → p-1cb9fddf.system.entry.js.map} +0 -0
  244. /package/dist/pine-core/{p-79d7e0b1.system.entry.js.map → p-237709cc.system.entry.js.map} +0 -0
  245. /package/dist/pine-core/{p-8f62c812.entry.js.map → p-23b8d1bb.entry.js.map} +0 -0
  246. /package/dist/pine-core/{p-22dd8116.entry.js.map → p-2847bd57.entry.js.map} +0 -0
  247. /package/dist/pine-core/{p-f3af6d74.system.entry.js.map → p-34b29411.system.entry.js.map} +0 -0
  248. /package/dist/pine-core/{p-73262287.system.entry.js.map → p-403d43d5.system.entry.js.map} +0 -0
  249. /package/dist/pine-core/{p-669d948a.system.entry.js.map → p-4472b337.system.entry.js.map} +0 -0
  250. /package/dist/pine-core/{p-f168654a.entry.js.map → p-465b7120.entry.js.map} +0 -0
  251. /package/dist/pine-core/{p-401cd4bc.entry.js.map → p-5787d0c0.entry.js.map} +0 -0
  252. /package/dist/pine-core/{p-7bc01826.entry.js.map → p-59334e35.entry.js.map} +0 -0
  253. /package/dist/pine-core/{p-85f6a94e.system.entry.js.map → p-5d7bad14.system.entry.js.map} +0 -0
  254. /package/dist/pine-core/{p-331cbf1d.entry.js.map → p-60930784.entry.js.map} +0 -0
  255. /package/dist/pine-core/{p-bce2d5b5.system.entry.js.map → p-654295e2.system.entry.js.map} +0 -0
  256. /package/dist/pine-core/{p-c0f9dbe1.system.entry.js.map → p-66f8fbb0.system.entry.js.map} +0 -0
  257. /package/dist/pine-core/{p-0c26a00d.entry.js.map → p-6c295ed8.entry.js.map} +0 -0
  258. /package/dist/pine-core/{p-0a776a7b.entry.js.map → p-6dd5d826.entry.js.map} +0 -0
  259. /package/dist/pine-core/{p-5b37a4a2.system.entry.js.map → p-708a557d.system.entry.js.map} +0 -0
  260. /package/dist/pine-core/{p-fba29e90.entry.js.map → p-7f16e44f.entry.js.map} +0 -0
  261. /package/dist/pine-core/{p-22bd3102.system.entry.js.map → p-83040cfc.system.entry.js.map} +0 -0
  262. /package/dist/pine-core/{p-bff583bd.system.js.map → p-9138d494.system.js.map} +0 -0
  263. /package/dist/pine-core/{p-1c0ffcab.entry.js.map → p-978cad20.entry.js.map} +0 -0
  264. /package/dist/pine-core/{p-4a804680.entry.js.map → p-9a184d74.entry.js.map} +0 -0
  265. /package/dist/pine-core/{p-b17b818b.entry.js.map → p-aa9f027c.entry.js.map} +0 -0
  266. /package/dist/pine-core/{p-d3e173ea.system.entry.js.map → p-bf6b565e.system.entry.js.map} +0 -0
  267. /package/dist/pine-core/{p-938886d8.system.entry.js.map → p-c014702b.system.entry.js.map} +0 -0
  268. /package/dist/pine-core/{p-27fd7f08.system.entry.js.map → p-d0446af7.system.entry.js.map} +0 -0
  269. /package/dist/pine-core/{p-7fcd5f0b.entry.js.map → p-d1c7a84d.entry.js.map} +0 -0
  270. /package/dist/pine-core/{p-930ab8a3.system.entry.js.map → p-d6e0c333.system.entry.js.map} +0 -0
  271. /package/dist/pine-core/{p-97cb4285.entry.js.map → p-d8a277e5.entry.js.map} +0 -0
  272. /package/dist/pine-core/{p-ac31a7c8.system.entry.js.map → p-da802c91.system.entry.js.map} +0 -0
  273. /package/dist/pine-core/{p-24077dcd.entry.js.map → p-db6ea8de.entry.js.map} +0 -0
  274. /package/dist/pine-core/{p-f1d7f16f.js.map → p-e893b132.js.map} +0 -0
  275. /package/dist/pine-core/{p-0adb4b48.entry.js.map → p-f30549db.entry.js.map} +0 -0
  276. /package/dist/pine-core/{p-af75cc15.entry.js.map → p-f3ee8a5e.entry.js.map} +0 -0
@@ -0,0 +1,2 @@
1
+ export * from './index';
2
+ export * from '../dist/types/interface';
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Get the base path to where the assets can be found. Use "setAssetPath(path)"
3
+ * if the path needs to be customized.
4
+ */
5
+ export declare const getAssetPath: (path: string) => string;
6
+
7
+ /**
8
+ * Used to manually set the base path where assets can be found.
9
+ * If the script is used as "module", it's recommended to use "import.meta.url",
10
+ * such as "setAssetPath(import.meta.url)". Other options include
11
+ * "setAssetPath(document.currentScript.src)", or using a bundler's replace plugin to
12
+ * dynamically set the path at build time, such as "setAssetPath(process.env.ASSET_PATH)".
13
+ * But do note that this configuration depends on how your script is bundled, or lack of
14
+ * bundling, and where your assets can be loaded from. Additionally custom bundling
15
+ * will have to ensure the static assets are copied to its build directory.
16
+ */
17
+ export declare const setAssetPath: (path: string) => void;
18
+
19
+ /**
20
+ * Used to specify a nonce value that corresponds with an application's CSP.
21
+ * When set, the nonce will be added to all dynamically created script and style tags at runtime.
22
+ * Alternatively, the nonce value can be set on a meta tag in the DOM head
23
+ * (<meta name="csp-nonce" content="{ nonce value here }" />) which
24
+ * will result in the same behavior.
25
+ */
26
+ export declare const setNonce: (nonce: string) => void
27
+
28
+ export interface SetPlatformOptions {
29
+ raf?: (c: FrameRequestCallback) => number;
30
+ ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
31
+ rel?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
32
+ }
33
+ export declare const setPlatformOptions: (opts: SetPlatformOptions) => void;
@@ -0,0 +1,3 @@
1
+ export { getAssetPath, setAssetPath, setNonce, setPlatformOptions } from '@stencil/core/internal/client';
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"file":"index.js","mappings":"","names":[],"sources":[],"sourcesContent":[],"version":3}
@@ -0,0 +1,9 @@
1
+ {
2
+ "name": "@pine-ds/core/components",
3
+ "version": "0.0.0",
4
+ "description": "Pine Components exported as custom elements, extending HTMLElement.",
5
+ "main": "./index.js",
6
+ "types": "./custom-elements.d.ts",
7
+ "private": true,
8
+ "sideEffects": false
9
+ }
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsAvatar extends Components.PdsAvatar, HTMLElement {}
4
+ export const PdsAvatar: {
5
+ prototype: PdsAvatar;
6
+ new (): PdsAvatar;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,98 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$2 } from './pds-icon2.js';
3
+
4
+ const pdsAvatarCss = ":host{display:inline-block}div{--background-color:var(--pine-color-primary-100);--badge-background-color:var(--pine-color-base-white);--border:var(--pine-border-default);--radius-round:50%;-ms-flex-align:center;align-items:center;background-color:var(--background-color);border-radius:var(--radius-round);display:-ms-inline-flexbox;display:inline-flex;-ms-flex-pack:center;justify-content:center;position:relative}:host(.pds-avatar--admin) div{border-radius:12px}:host(.pds-avatar--has-image) div{background:transparent}@supports selector(:has){div:has(img){background-color:transparent}}.pds-avatar__button{--radius-round:50%;--box-shadow-focus:0 0 0 4px var(--pine-color-primary-200);-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:var(--radius-round);cursor:pointer;display:-ms-flexbox;display:flex;padding:0}.pds-avatar__button:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.pds-avatar__badge{background-color:var(--badge-background-color);border:var(--border);border-color:var(--badge-background-color);border-radius:var(--radius-round);bottom:0;position:absolute;right:0}img{border-radius:var(--radius-round);width:100%}";
5
+
6
+ const PdsAvatar$1 = /*@__PURE__*/ proxyCustomElement(class PdsAvatar extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.renderAvatar = () => {
12
+ const style = {
13
+ height: this.avatarSize(),
14
+ width: this.avatarSize(),
15
+ };
16
+ return (this.dropdown
17
+ ?
18
+ h("button", { class: "pds-avatar__button", type: "button" }, h("div", { style: style }, this.renderIconOrImage(), this.renderBadge()))
19
+ :
20
+ h("div", { style: style }, this.renderIconOrImage(), this.renderBadge()));
21
+ };
22
+ this.renderBadge = () => (this.badge
23
+ // Percentage is average size of icon in relation to total avatar size
24
+ // of all preset sizes found in Figma.
25
+ // Used to allow icons to scale to container size
26
+ && h("pds-icon", { class: "pds-avatar__badge", name: "check-circle-filled", size: "33.53%" }));
27
+ this.renderIconOrImage = () => (this.image
28
+ ? h("img", { alt: this.alt, src: this.image })
29
+ // Percentage is average size of icon in relation to total avatar size
30
+ // of all preset sizes found in Figma.
31
+ // Used to allow icons to scale to container size
32
+ : h("pds-icon", { name: "user-filled", size: "33.53%" }));
33
+ this.classNames = () => ({
34
+ 'pds-avatar': true,
35
+ [`pds-avatar--has-image`]: this.image !== '' && this.image !== null,
36
+ [`pds-avatar--${this.variant}`]: this.variant === 'admin'
37
+ });
38
+ this.alt = null;
39
+ this.badge = false;
40
+ this.componentId = undefined;
41
+ this.dropdown = false;
42
+ this.image = null;
43
+ this.size = 'lg';
44
+ this.variant = 'customer';
45
+ }
46
+ avatarSize() {
47
+ const sizes = {
48
+ xs: '24px',
49
+ sm: '32px',
50
+ md: '40px',
51
+ lg: '56px',
52
+ xl: '64px',
53
+ };
54
+ if (sizes[this.size]) {
55
+ return sizes[this.size];
56
+ }
57
+ else {
58
+ return this.size;
59
+ }
60
+ }
61
+ render() {
62
+ return (h(Host, { id: this.componentId, class: Object.assign({}, this.classNames()) }, this.renderAvatar()));
63
+ }
64
+ static get style() { return pdsAvatarCss; }
65
+ }, [1, "pds-avatar", {
66
+ "alt": [1],
67
+ "badge": [4],
68
+ "componentId": [1, "component-id"],
69
+ "dropdown": [4],
70
+ "image": [1],
71
+ "size": [513],
72
+ "variant": [513]
73
+ }]);
74
+ function defineCustomElement$1() {
75
+ if (typeof customElements === "undefined") {
76
+ return;
77
+ }
78
+ const components = ["pds-avatar", "pds-icon"];
79
+ components.forEach(tagName => { switch (tagName) {
80
+ case "pds-avatar":
81
+ if (!customElements.get(tagName)) {
82
+ customElements.define(tagName, PdsAvatar$1);
83
+ }
84
+ break;
85
+ case "pds-icon":
86
+ if (!customElements.get(tagName)) {
87
+ defineCustomElement$2();
88
+ }
89
+ break;
90
+ } });
91
+ }
92
+
93
+ const PdsAvatar = PdsAvatar$1;
94
+ const defineCustomElement = defineCustomElement$1;
95
+
96
+ export { PdsAvatar, defineCustomElement };
97
+
98
+ //# sourceMappingURL=pds-avatar.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-avatar.js","mappings":";;;AAAA,MAAM,YAAY,GAAG,uwCAAuwC;;MCO/wCA,WAAS;;;;;QAiEZ,iBAAY,GAAG;YACrB,MAAM,KAAK,GAAG;gBACZ,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;gBACzB,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;aACzB,CAAC;YACF,QACE,IAAI,CAAC,QAAQ;;oBAEX,cAAQ,KAAK,EAAC,oBAAoB,EAAC,IAAI,EAAC,QAAQ,IAC9C,WAAK,KAAK,EAAE,KAAK,IACd,IAAI,CAAC,iBAAiB,EAAE,EACxB,IAAI,CAAC,WAAW,EAAE,CACf,CACC;;oBAET,WAAK,KAAK,EAAE,KAAK,IACd,IAAI,CAAC,iBAAiB,EAAE,EACxB,IAAI,CAAC,WAAW,EAAE,CACf,EACT;SACF,CAAC;QAEM,gBAAW,GAAG,OACpB,IAAI,CAAC,KAAK;;;;eAIL,gBAAU,KAAK,EAAC,mBAAmB,EAAC,IAAI,EAAC,qBAAqB,EAAC,IAAI,EAAC,QAAQ,GAAY,CAC9F,CAAC;QAEM,sBAAiB,GAAG,OAC1B,IAAI,CAAC,KAAK;cACN,WAAK,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,GAAI;;;;cAIvC,gBAAU,IAAI,EAAC,aAAa,EAAC,IAAI,EAAC,QAAQ,GAAY,CAC3D,CAAC;QAEM,eAAU,GAAG,OACnB;YACE,YAAY,EAAE,IAAI;YAClB,CAAC,uBAAuB,GAAG,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YACnE,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,KAAK,OAAO;SAC1D,CACF,CAAC;mBAxG4B,IAAI;qBAMjB,KAAK;;wBAWF,KAAK;qBAMO,IAAI;oBAYzB,IAAI;uBAM2C,UAAU;;IAE5D,UAAU;QAChB,MAAM,KAAK,GAA2B;YACpC,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,MAAM;SACX,CAAA;QAED,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACzB;aAAM;YACL,OAAO,IAAI,CAAC,IAAI,CAAA;SACjB;KACF;IAiDD,MAAM;QAEJ,QACE,EAAC,IAAI,IACH,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,KAAK,oBAAM,IAAI,CAAC,UAAU,EAAE,KAE3B,IAAI,CAAC,YAAY,EAAE,CACf,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsAvatar"],"sources":["src/components/pds-avatar/pds-avatar.scss?tag=pds-avatar&encapsulation=shadow","src/components/pds-avatar/pds-avatar.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\ndiv {\n // These custom props are not reachable\n --background-color: var(--pine-color-primary-100);\n --badge-background-color: var(--pine-color-base-white);\n --border: var(--pine-border-default);\n --radius-round: 50%;\n\n align-items: center;\n background-color: var(--background-color);\n border-radius: var(--radius-round);\n display: inline-flex;\n justify-content: center;\n position: relative;\n\n :host(.pds-avatar--admin) & {\n border-radius: 12px;\n }\n\n // Remove when FF has support for :has\n :host(.pds-avatar--has-image) & {\n background: transparent\n }\n\n @supports selector(:has) {\n &:has(img) {\n background-color: transparent\n }\n }\n}\n\n.pds-avatar__button {\n --radius-round: 50%;\n --box-shadow-focus: 0 0 0 4px var(--pine-color-primary-200);\n\n align-items: center;\n appearance: none;\n background: transparent;\n border: 0;\n border-radius: var(--radius-round);\n cursor: pointer;\n display: flex;\n padding: 0;\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 }\n}\n\n.pds-avatar__badge {\n background-color: var(--badge-background-color);\n border: var(--border);\n border-color: var(--badge-background-color);\n border-radius: var(--radius-round);\n bottom: 0;\n position: absolute;\n right: 0;\n}\n\nimg {\n border-radius: var(--radius-round);\n width: 100%;\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pds-avatar',\n styleUrl: 'pds-avatar.scss',\n shadow: true,\n})\nexport class PdsAvatar {\n\n /**\n * The alt for a custom user image.\n * @defaultValue null\n */\n @Prop() alt?: string | null = null;\n\n /**\n * Determines whether the badge is visible or not.\n * @defaultValue false\n */\n @Prop() badge? = false;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether the avatar functions as a dropdown trigger.\n * @defaultValue false\n */\n @Prop() dropdown? = false;\n\n /**\n * The src for a custom user image.\n * @defaultValue null\n */\n @Prop() image?: string | null = null;\n\n /**\n * Size of the avatar. Value can be preset or custom.\n * @defaultValue lg\n */\n @Prop({ reflect: true }) size?:\n | 'xl' // 64px\n | 'lg' // 56px\n | 'md' // 40px\n | 'sm' // 32px\n | 'xs' // 24px\n | string = 'lg';\n\n /**\n * Determines the variant of avatar. Changes appearance accordingly.\n * @defaultValue customer\n */\n @Prop({ reflect: true }) variant?: 'customer' | 'admin' = 'customer';\n\n private avatarSize() {\n const sizes: { [key: string]: any } = {\n xs: '24px',\n sm: '32px',\n md: '40px',\n lg: '56px',\n xl: '64px',\n }\n\n if (sizes[this.size]) {\n return sizes[this.size];\n } else {\n return this.size\n }\n }\n\n private renderAvatar = () => {\n const style = {\n height: this.avatarSize(),\n width: this.avatarSize(),\n };\n return (\n this.dropdown\n ?\n <button class=\"pds-avatar__button\" type=\"button\">\n <div style={style}>\n {this.renderIconOrImage()}\n {this.renderBadge()}\n </div>\n </button>\n :\n <div style={style}>\n {this.renderIconOrImage()}\n {this.renderBadge()}\n </div>\n )\n };\n\n private renderBadge = () => (\n this.badge\n // Percentage is average size of icon in relation to total avatar size\n // of all preset sizes found in Figma.\n // Used to allow icons to scale to container size\n && <pds-icon class=\"pds-avatar__badge\" name=\"check-circle-filled\" size=\"33.53%\"></pds-icon>\n );\n\n private renderIconOrImage = () => (\n this.image\n ? <img alt={this.alt} src={this.image} />\n // Percentage is average size of icon in relation to total avatar size\n // of all preset sizes found in Figma.\n // Used to allow icons to scale to container size\n : <pds-icon name=\"user-filled\" size=\"33.53%\"></pds-icon>\n );\n\n private classNames = () => (\n {\n 'pds-avatar': true,\n [`pds-avatar--has-image`]: this.image !== '' && this.image !== null, // Remove when FF supports :has selector\n [`pds-avatar--${this.variant}`]: this.variant === 'admin'\n }\n );\n\n render() {\n\n return (\n <Host\n id={this.componentId}\n class={{...this.classNames()}}\n >\n {this.renderAvatar()}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsButton extends Components.PdsButton, HTMLElement {}
4
+ export const PdsButton: {
5
+ prototype: PdsButton;
6
+ new (): PdsButton;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,8 @@
1
+ import { P as PdsButton$1, d as defineCustomElement$1 } from './pds-button2.js';
2
+
3
+ const PdsButton = PdsButton$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { PdsButton, defineCustomElement };
7
+
8
+ //# sourceMappingURL=pds-button.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-button.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
@@ -0,0 +1,82 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$1 } from './pds-icon2.js';
3
+
4
+ const hasShadowDom = (el) => {
5
+ return !!el.shadowRoot && !!el.attachShadow;
6
+ };
7
+
8
+ const pdsButtonCss = ":host{--border-color:transparent;--border-color-hover:transparent;--border-color-focus:transparent;--border-color-disabled:transparent;--background-color-primary:var(--pine-color-neutral-charcoal-400);--background-color-hover-primary:var(--pine-color-neutral-charcoal-500);--background-color-disabled-primary:var(--pine-color-neutral-grey-300);--color-primary:var(--pine-color-base-white);--color-disabled-primary:var(--pine-color-neutral-charcoal-100);--outline-color-primary:var(--pine-color-primary-200);--border-color-secondary:var(--pine-color-neutral-grey-400);--border-color-hover-secondary:var(--pine-color-neutral-grey-500);--border-color-focus-secondary:var(--pine-color-neutral-grey-300);--border-color-disabled-secondary:var(--pine-color-neutral-grey-300);--color-secondary:var(--pine-color-neutral-charcoal-400);--color-disabled-secondary:var(--pine-color-neutral-charcoal-100);--outline-color-secondary:var(--pine-color-primary-200);--background-color-accent:var(--pine-color-primary-300);--background-color-hover-accent:var(--pine-color-primary-400);--background-color-disabled-accent:var(--pine-color-primary-100);--color-accent:var(--pine-color-base-white);--color-disabled-accent:var(--pine-color-primary-200);--outline-color-accent:var(--pine-color-primary-200);--background-color-destructive:var(--pine-color-red-300);--background-color-hover-destructive:var(--pine-color-red-400);--background-color-disabled-destructive:var(--pine-color-red-100);--color-destructive:var(--pine-color-base-white);--color-disabled-destructive:var(--pine-color-red-200);--outline-color-destructive:var(--pine-color-red-200);display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.pds-button{-ms-flex-align:center;align-items:center;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:10px;color:var(--color);display:-ms-flexbox;display:flex;font-family:inherit;font-size:1rem;font-weight:500;min-height:40px;padding:0.5rem 1rem}.pds-button pds-icon{fill:currentColor;-webkit-margin-end:0.5rem;margin-inline-end:0.5rem}.pds-button:hover{background-color:var(--background-color-hover);border-color:var(--border-color-hover)}.pds-button:focus{border-color:var(--border-color-focus);outline:4px solid var(--outline-color)}.pds-button:disabled{background-color:var(--background-color-disabled);border-color:var(--border-color-disabled);color:var(--color-disabled)}.pds-button--primary{--background-color:var(--background-color-primary);--background-color-hover:var(--background-color-hover-primary);--background-color-disabled:var(--background-color-disabled-primary);--color:var(--color-primary);--color-disabled:var(--color-disabled-primary);--outline-color:var(--outline-color-primary)}.pds-button--accent{--background-color:var(--background-color-accent);--background-color-hover:var(--background-color-hover-accent);--background-color-disabled:var(--background-color-disabled-accent);--color:var(--color-accent);--color-disabled:var(--color-disabled-accent);--outline-color:var(--outline-color-accent)}.pds-button--destructive{--background-color:var(--background-color-destructive);--background-color-hover:var(--background-color-hover-destructive);--background-color-disabled:var(--background-color-disabled-destructive);--color:var(--color-destructive);--color-disabled:var(--color-disabled-destructive);--outline-color:var(--outline-color-destructive)}.pds-button--secondary,.pds-button--disclosure{--background-color:transparent;--background-color-hover:transparent;--background-color-disabled:transparent;--border-color-disabled:var(--border-color-disabled-secondary);--border-color-focus:var(--border-color-focus-secondary);--border-color-hover:var(--border-color-hover-secondary);--border-color:var(--border-color-secondary);--color:var(--color-secondary);--color-disabled:var(--color-disabled-secondary);--outline-color:var(--outline-color-secondary)}.pds-button--disclosure pds-icon{-webkit-margin-end:0;margin-inline-end:0;-webkit-margin-start:0.5rem;margin-inline-start:0.5rem}.pds-button--unstyled{--background-color:transparent;--background-color-hover:transparent;--background-color-disabled:transparent;--color:inherit;border:0;margin:0;min-height:auto;padding:0;width:inherit}";
9
+
10
+ const PdsButton = /*@__PURE__*/ proxyCustomElement(class PdsButton extends HTMLElement {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ this.handleClick = (ev) => {
16
+ if (this.type != 'button') {
17
+ // If button clicked IS NOT associated with a form
18
+ if (hasShadowDom(this.el)) {
19
+ const form = this.el.closest('form');
20
+ if (form) {
21
+ ev.preventDefault();
22
+ const fakeButton = document.createElement('button');
23
+ fakeButton.type = this.type;
24
+ fakeButton.style.display = 'none';
25
+ form.appendChild(fakeButton);
26
+ fakeButton.click();
27
+ fakeButton.remove();
28
+ }
29
+ }
30
+ }
31
+ };
32
+ this.componentId = undefined;
33
+ this.disabled = false;
34
+ this.icon = null;
35
+ this.name = undefined;
36
+ this.value = undefined;
37
+ this.type = 'button';
38
+ this.variant = 'primary';
39
+ }
40
+ classNames() {
41
+ const classNames = ['pds-button'];
42
+ if (this.variant) {
43
+ classNames.push('pds-button--' + this.variant);
44
+ }
45
+ return classNames.join(' ');
46
+ }
47
+ render() {
48
+ return (h(Host, { "aria-disabled": this.disabled ? 'true' : null, id: this.componentId, onClick: this.handleClick, variant: this.variant }, h("button", { class: this.classNames(), disabled: this.disabled, name: this.name, type: this.type, value: this.value }, this.icon && this.variant !== 'disclosure' && h("pds-icon", { name: this.icon }), h("slot", null), this.variant === 'disclosure' && h("pds-icon", { name: "caret-down" }))));
49
+ }
50
+ get el() { return this; }
51
+ static get style() { return pdsButtonCss; }
52
+ }, [1, "pds-button", {
53
+ "componentId": [1, "component-id"],
54
+ "disabled": [4],
55
+ "icon": [1],
56
+ "name": [1],
57
+ "value": [1],
58
+ "type": [1],
59
+ "variant": [1]
60
+ }]);
61
+ function defineCustomElement() {
62
+ if (typeof customElements === "undefined") {
63
+ return;
64
+ }
65
+ const components = ["pds-button", "pds-icon"];
66
+ components.forEach(tagName => { switch (tagName) {
67
+ case "pds-button":
68
+ if (!customElements.get(tagName)) {
69
+ customElements.define(tagName, PdsButton);
70
+ }
71
+ break;
72
+ case "pds-icon":
73
+ if (!customElements.get(tagName)) {
74
+ defineCustomElement$1();
75
+ }
76
+ break;
77
+ } });
78
+ }
79
+
80
+ export { PdsButton as P, defineCustomElement as d };
81
+
82
+ //# sourceMappingURL=pds-button2.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-button2.js","mappings":";;;AAIO,MAAM,YAAY,GAAG,CAAC,EAAe;IAC1C,OAAO,CAAC,CAAC,EAAE,CAAC,UAAU,IAAI,CAAC,CAAE,EAAU,CAAC,YAAY,CAAA;AACtD,CAAC;;ACND,MAAM,YAAY,GAAG,ypIAAypI;;MCQjqI,SAAS;;;;;QAwCZ,gBAAW,GAAG,CAAC,EAAS;YAC9B,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE;;gBAEzB,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;oBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;oBACpC,IAAI,IAAI,EAAE;wBACR,EAAE,CAAC,cAAc,EAAE,CAAA;wBAEnB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;wBACnD,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;wBAC3B,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;wBACjC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;wBAC5B,UAAU,CAAC,KAAK,EAAE,CAAA;wBAClB,UAAU,CAAC,MAAM,EAAE,CAAA;qBACpB;iBACF;aACF;SACF,CAAA;;wBA7CmB,KAAK;oBAKD,IAAI;;;oBAgBmB,QAAQ;uBAK2C,SAAS;;IAqBnG,UAAU;QAChB,MAAM,UAAU,GAAG,CAAC,YAAY,CAAC,CAAC;QAElC,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,UAAU,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;SAChD;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qBACY,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,IAAI,EAC5C,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,OAAO,EAAE,IAAI,CAAC,OAAO,IAErB,cACE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EACxB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,IAEhB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,YAAY,IAAI,gBAAU,IAAI,EAAE,IAAI,CAAC,IAAI,GAAa,EACrF,eAAQ,EACP,IAAI,CAAC,OAAO,KAAK,YAAY,IAAI,gBAAU,IAAI,EAAC,YAAY,GAAY,CAClE,CACJ,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/utils/utils.ts","src/components/pds-button/pds-button.scss?tag=pds-button&encapsulation=shadow","src/components/pds-button/pds-button.tsx"],"sourcesContent":["export function format(first: string, middle: string, last: string): string {\n return (first || '') + (middle ? ` ${middle}` : '') + (last ? ` ${last}` : '');\n}\n\nexport const hasShadowDom = (el: HTMLElement) => {\n return !!el.shadowRoot && !!(el as any).attachShadow\n}\n",":host {\n --border-color: transparent;\n --border-color-hover: transparent;\n --border-color-focus: transparent;\n --border-color-disabled: transparent;\n\n // primary\n --background-color-primary: var(--pine-color-neutral-charcoal-400);\n --background-color-hover-primary: var(--pine-color-neutral-charcoal-500);\n --background-color-disabled-primary: var(--pine-color-neutral-grey-300);\n --color-primary: var(--pine-color-base-white);\n --color-disabled-primary: var(--pine-color-neutral-charcoal-100);\n --outline-color-primary: var(--pine-color-primary-200);\n\n // secondary\n --border-color-secondary: var(--pine-color-neutral-grey-400);\n --border-color-hover-secondary: var(--pine-color-neutral-grey-500);\n --border-color-focus-secondary: var(--pine-color-neutral-grey-300);\n --border-color-disabled-secondary: var(--pine-color-neutral-grey-300);\n --color-secondary: var(--pine-color-neutral-charcoal-400);\n --color-disabled-secondary: var(--pine-color-neutral-charcoal-100);\n --outline-color-secondary: var(--pine-color-primary-200);\n\n // accent\n --background-color-accent: var(--pine-color-primary-300);\n --background-color-hover-accent: var(--pine-color-primary-400);\n --background-color-disabled-accent: var(--pine-color-primary-100);\n --color-accent: var(--pine-color-base-white);\n --color-disabled-accent: var(--pine-color-primary-200);\n --outline-color-accent: var(--pine-color-primary-200);\n\n // destructive\n --background-color-destructive: var(--pine-color-red-300);\n --background-color-hover-destructive: var(--pine-color-red-400);\n --background-color-disabled-destructive: var(--pine-color-red-100);\n --color-destructive: var(--pine-color-base-white);\n --color-disabled-destructive: var(--pine-color-red-200);\n --outline-color-destructive: var(--pine-color-red-200);\n\n display: inline-flex;\n vertical-align: middle;\n}\n\n.pds-button {\n align-items: center;\n background-color: var(--background-color);\n border: 1px solid var(--border-color);\n border-radius: 10px;\n color: var(--color);\n display: flex;\n font-family: inherit;\n font-size: 1rem;\n font-weight: 500;\n min-height: 40px;\n padding: 0.5rem 1rem;\n\n pds-icon {\n fill: currentColor;\n margin-inline-end: 0.5rem;\n }\n\n &:hover {\n background-color: var(--background-color-hover);\n border-color: var(--border-color-hover);\n }\n\n &:focus {\n border-color: var(--border-color-focus);\n outline: 4px solid var(--outline-color);\n }\n\n &:disabled {\n background-color: var(--background-color-disabled);\n border-color: var(--border-color-disabled);\n color: var(--color-disabled);\n }\n}\n\n.pds-button--primary {\n --background-color: var(--background-color-primary);\n --background-color-hover: var(--background-color-hover-primary);\n --background-color-disabled: var(--background-color-disabled-primary);\n --color: var(--color-primary);\n --color-disabled: var(--color-disabled-primary);\n --outline-color: var(--outline-color-primary);\n}\n\n.pds-button--accent {\n --background-color: var(--background-color-accent);\n --background-color-hover: var(--background-color-hover-accent);\n --background-color-disabled: var(--background-color-disabled-accent);\n --color: var(--color-accent);\n --color-disabled: var(--color-disabled-accent);\n --outline-color: var(--outline-color-accent);\n}\n\n.pds-button--destructive {\n --background-color: var(--background-color-destructive);\n --background-color-hover: var(--background-color-hover-destructive);\n --background-color-disabled: var(--background-color-disabled-destructive);\n --color: var(--color-destructive);\n --color-disabled: var(--color-disabled-destructive);\n --outline-color: var(--outline-color-destructive);\n}\n\n.pds-button--secondary,\n.pds-button--disclosure {\n --background-color: transparent;\n --background-color-hover: transparent;\n --background-color-disabled: transparent;\n --border-color-disabled: var(--border-color-disabled-secondary);\n --border-color-focus: var(--border-color-focus-secondary);\n --border-color-hover: var(--border-color-hover-secondary);\n --border-color: var(--border-color-secondary);\n --color: var(--color-secondary);\n --color-disabled: var(--color-disabled-secondary);\n --outline-color: var(--outline-color-secondary);\n}\n\n.pds-button--disclosure {\n pds-icon {\n margin-inline-end: 0;\n margin-inline-start: 0.5rem;\n }\n}\n\n.pds-button--unstyled {\n --background-color: transparent;\n --background-color-hover: transparent;\n --background-color-disabled: transparent;\n --color: inherit;\n border: 0;\n margin: 0;\n min-height: auto;\n padding: 0;\n width: inherit;\n}\n","import { Component, Element, Host, h, Prop } from '@stencil/core';\nimport { hasShadowDom } from '../../utils/utils';\n\n@Component({\n tag: 'pds-button',\n styleUrl: 'pds-button.scss',\n shadow: true,\n})\nexport class PdsButton {\n @Element() el: HTMLPdsButtonElement;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Toggles disabled state of button\n * @defaultValue false\n */\n @Prop() disabled? = false;\n\n /**\n * Displays icon before text when icon string matches an icon name\n */\n @Prop() icon?: string = null;\n\n /**\n * Provides button with a submittable name\n */\n @Prop() name?: string;\n\n /**\n * Provides button with a submittable value\n */\n @Prop() value?: string;\n\n /**\n * Provides button with a type\n * @defaultValue button\n */\n @Prop() type?: 'button' | 'reset' | 'submit' = 'button';\n\n /**\n * Sets button variant styles as outlined in Figma documentation\n */\n @Prop() variant: 'primary' | 'secondary' | 'accent' | 'disclosure' | 'destructive' | 'unstyled' = 'primary';\n\n private handleClick = (ev: Event) => {\n if (this.type != 'button') {\n // If button clicked IS NOT associated with a form\n if (hasShadowDom(this.el)) {\n const form = this.el.closest('form')\n if (form) {\n ev.preventDefault()\n\n const fakeButton = document.createElement('button')\n fakeButton.type = this.type\n fakeButton.style.display = 'none'\n form.appendChild(fakeButton)\n fakeButton.click()\n fakeButton.remove()\n }\n }\n }\n }\n\n private classNames() {\n const classNames = ['pds-button'];\n\n if (this.variant) {\n classNames.push('pds-button--' + this.variant);\n }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host\n aria-disabled={this.disabled ? 'true' : null}\n id={this.componentId}\n onClick={this.handleClick}\n variant={this.variant}\n >\n <button\n class={this.classNames()}\n disabled={this.disabled}\n name={this.name}\n type={this.type}\n value={this.value}\n >\n {this.icon && this.variant !== 'disclosure' && <pds-icon name={this.icon}></pds-icon>}\n <slot />\n {this.variant === 'disclosure' && <pds-icon name=\"caret-down\"></pds-icon>}\n </button>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsCheckbox extends Components.PdsCheckbox, HTMLElement {}
4
+ export const PdsCheckbox: {
5
+ prototype: PdsCheckbox;
6
+ new (): PdsCheckbox;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,83 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { a as assignDescription, P as PdsLabel, m as messageId } from './pds-label.js';
3
+
4
+ const pdsCheckboxCss = ":host{--background-color-disabled:var(--pine-color-neutral-grey-200);--background-color-hover:var(--pine-color-neutral-grey-100);--border:var(--pine-border-interactive);--border-color-disabled:var(--pine-color-neutral-charcoal-100);--border-color-hover:var(--pine-border-interactive-hover-color);--border-color-icon:var(--pine-color-base-white);--border-radius:var(--pine-border-radius-xs);--color-checked:var(--pine-color-neutral-charcoal-500);--color-disabled:var(--pine-color-neutral-grey-300);--color-focus:var(--pine-color-primary-200);--color-invalid-focus:var(--pine-color-red-200);--color-invalid:var(--pine-color-red-300);--message-color-disabled:var(--pine-color-neutral-grey-500);--message-color:var(--pine-color-neutral-charcoal-200);--input-size:16px;-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}:host(.is-invalid) input{border-color:var(--color-invalid)}:host(.is-invalid) input:checked{background:var(--color-invalid)}:host(.is-invalid) input:focus-visible{-webkit-box-shadow:0 0 0 4px var(--color-invalid-focus);box-shadow:0 0 0 4px var(--color-invalid-focus);outline:none}:host(.is-invalid) label,:host(.is-invalid) .pds-checkbox__message--error{color:var(--color-invalid)}:host(.is-indeterminate) input:checked::after{border-bottom:0;-webkit-transform:rotate(87deg) translate3d(-114%, 25%, 0);transform:rotate(87deg) translate3d(-114%, 25%, 0)}input{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--border);border-radius:var(--border-radius);height:var(--input-size);margin:0;position:relative;width:var(--input-size)}input:hover{background:var(--background-color-hover);border-color:var(--border-color-hover)}input:checked{background:var(--color-checked);border-color:var(--color-checked)}input:checked::after{border:1px solid var(--border-color-icon);border-left:0;border-top:0;content:\"\";display:block;height:7px;left:50%;position:absolute;top:50%;-webkit-transform:rotate(43deg) translate3d(-110%, -30%, 0);transform:rotate(43deg) translate3d(-110%, -30%, 0);width:4px}input:disabled{background:var(--background-color-disabled);border-color:var(--color-disabled);cursor:not-allowed}input:disabled:checked{background:var(--color-disabled);border-color:var(--color-disabled)}input:disabled:checked::after{border-color:var(--border-color-disabled)}input:disabled+label{color:var(--border-color-hover);cursor:not-allowed}input:disabled~.pds-checkbox__message{color:var(--message-color-disabled)}input:focus-visible{-webkit-box-shadow:0 0 0 4px var(--color-focus);box-shadow:0 0 0 4px var(--color-focus);outline:none}label{-webkit-margin-start:10px;margin-inline-start:10px}.pds-checkbox__message{color:var(--message-color);font-size:14px;-webkit-margin-before:6px;margin-block-start:6px;-webkit-margin-start:26px;margin-inline-start:26px;width:100%}";
5
+
6
+ const PdsCheckbox$1 = /*@__PURE__*/ proxyCustomElement(class PdsCheckbox extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.pdsCheckboxChange = createEvent(this, "pdsCheckboxChange", 7);
12
+ this.handleCheckboxChange = (e) => {
13
+ if (this.disabled) {
14
+ return;
15
+ }
16
+ const target = e.target;
17
+ const isChecked = target.checked;
18
+ this.pdsCheckboxChange.emit(isChecked);
19
+ };
20
+ this.checked = undefined;
21
+ this.componentId = undefined;
22
+ this.disabled = undefined;
23
+ this.errorMessage = undefined;
24
+ this.helperMessage = undefined;
25
+ this.indeterminate = undefined;
26
+ this.invalid = undefined;
27
+ this.label = undefined;
28
+ this.name = undefined;
29
+ this.required = undefined;
30
+ this.value = undefined;
31
+ }
32
+ classNames() {
33
+ const classNames = [];
34
+ if (this.invalid) {
35
+ classNames.push('is-invalid');
36
+ }
37
+ if (this.indeterminate) {
38
+ classNames.push('is-indeterminate');
39
+ }
40
+ if (this.disabled) {
41
+ classNames.push('is-disabled');
42
+ }
43
+ return classNames.join(' ');
44
+ }
45
+ render() {
46
+ return (h(Host, { class: this.classNames() }, h("input", { "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage), "aria-invalid": this.invalid ? "true" : undefined, type: "checkbox", id: this.componentId, name: this.name, value: this.value, checked: this.checked, required: this.required, disabled: this.disabled, onChange: this.handleCheckboxChange }), h(PdsLabel, { htmlFor: this.componentId, text: this.label }), this.helperMessage &&
47
+ h("div", { class: 'pds-checkbox__message', id: messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
48
+ h("div", { class: `pds-checkbox__message pds-checkbox__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, this.errorMessage)));
49
+ }
50
+ static get style() { return pdsCheckboxCss; }
51
+ }, [1, "pds-checkbox", {
52
+ "checked": [4],
53
+ "componentId": [1, "component-id"],
54
+ "disabled": [4],
55
+ "errorMessage": [1, "error-message"],
56
+ "helperMessage": [1, "helper-message"],
57
+ "indeterminate": [4],
58
+ "invalid": [4],
59
+ "label": [1],
60
+ "name": [1],
61
+ "required": [4],
62
+ "value": [1]
63
+ }]);
64
+ function defineCustomElement$1() {
65
+ if (typeof customElements === "undefined") {
66
+ return;
67
+ }
68
+ const components = ["pds-checkbox"];
69
+ components.forEach(tagName => { switch (tagName) {
70
+ case "pds-checkbox":
71
+ if (!customElements.get(tagName)) {
72
+ customElements.define(tagName, PdsCheckbox$1);
73
+ }
74
+ break;
75
+ } });
76
+ }
77
+
78
+ const PdsCheckbox = PdsCheckbox$1;
79
+ const defineCustomElement = defineCustomElement$1;
80
+
81
+ export { PdsCheckbox, defineCustomElement };
82
+
83
+ //# sourceMappingURL=pds-checkbox.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-checkbox.js","mappings":";;;AAAA,MAAM,cAAc,GAAG,mzFAAmzF;;MCS7zFA,aAAW;;;;;;QA8Dd,yBAAoB,GAAG,CAAC,CAAQ;YACtC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO;aACR;YAED,MAAM,MAAM,GAAG,CAAC,CAAC,MAA0B,CAAC;YAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;YAEjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACxC,CAAA;;;;;;;;;;;;;IAEO,UAAU;QAChB,MAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,OAAO,EAAE;YAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SAAE;QACpD,IAAI,IAAI,CAAC,aAAa,EAAE;YAAE,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;SAAE;QAChE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAAE;QAEtD,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,MAAM;QACJ,QACE,EAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAC5B,iCACoB,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,kBACzE,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,SAAS,EAC/C,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,oBAAoB,GACnC,EACF,EAAC,QAAQ,IAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,GAAI,EACxD,IAAI,CAAC,aAAa;YACjB,WACE,KAAK,EAAE,uBAAuB,EAC9B,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAExC,IAAI,CAAC,aAAa,CACf,EAEP,IAAI,CAAC,YAAY;YAChB,WACE,KAAK,EAAE,oDAAoD,EAC3D,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,eAC9B,WAAW,IAEpB,IAAI,CAAC,YAAY,CACd,CAEH,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsCheckbox"],"sources":["src/components/pds-checkbox/pds-checkbox.scss?tag=pds-checkbox&encapsulation=shadow","src/components/pds-checkbox/pds-checkbox.tsx"],"sourcesContent":[":host {\n --background-color-disabled: var(--pine-color-neutral-grey-200);\n --background-color-hover: var(--pine-color-neutral-grey-100);\n --border: var(--pine-border-interactive);\n --border-color-disabled: var(--pine-color-neutral-charcoal-100);\n --border-color-hover: var(--pine-border-interactive-hover-color);\n --border-color-icon: var(--pine-color-base-white);\n --border-radius: var(--pine-border-radius-xs);\n --color-checked: var(--pine-color-neutral-charcoal-500);\n --color-disabled: var(--pine-color-neutral-grey-300);\n --color-focus: var(--pine-color-primary-200);\n --color-invalid-focus: var(--pine-color-red-200);\n --color-invalid: var(--pine-color-red-300);\n --message-color-disabled: var(--pine-color-neutral-grey-500);\n --message-color: var(--pine-color-neutral-charcoal-200);\n --input-size: 16px;\n\n align-items: center;\n display: flex;\n flex-flow: row wrap;\n}\n\n:host(.is-invalid) {\n input {\n border-color: var(--color-invalid);\n\n &:checked {\n background: var(--color-invalid);\n }\n\n &:focus-visible {\n box-shadow: 0 0 0 4px var(--color-invalid-focus);\n outline: none;\n }\n }\n\n label,\n .pds-checkbox__message--error {\n color: var(--color-invalid);\n }\n}\n\n:host(.is-indeterminate) {\n input:checked {\n &::after {\n border-bottom: 0;\n transform: rotate(87deg) translate3d(-114%, 25%, 0);\n }\n }\n}\n\ninput {\n appearance: none;\n border: var(--border);\n border-radius: var(--border-radius);\n height: var(--input-size);\n margin: 0;\n position: relative;\n width: var(--input-size);\n\n &:hover {\n background: var(--background-color-hover);\n border-color: var(--border-color-hover);\n }\n\n &:checked {\n background: var(--color-checked);\n border-color: var(--color-checked);\n\n &::after {\n border: 1px solid var(--border-color-icon);\n border-left: 0;\n border-top: 0;\n content: \"\";\n display: block;\n height: 7px;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: rotate(43deg) translate3d(-110%, -30%, 0);\n width: 4px;\n }\n }\n\n &:disabled {\n background: var(--background-color-disabled);\n border-color: var(--color-disabled);\n cursor: not-allowed;\n\n &:checked {\n background: var(--color-disabled);\n border-color: var(--color-disabled);\n\n &::after {\n border-color: var(--border-color-disabled);\n }\n }\n\n + label {\n color: var(--border-color-hover);\n cursor: not-allowed;\n }\n\n ~ .pds-checkbox__message {\n color: var(--message-color-disabled);\n }\n }\n\n &:focus-visible {\n box-shadow: 0 0 0 4px var(--color-focus);\n outline: none;\n }\n}\n\nlabel {\n margin-inline-start: 10px;\n}\n\n.pds-checkbox__message {\n color: var(--message-color);\n font-size: 14px;\n margin-block-start: 6px;\n margin-inline-start: 26px;\n width: 100%;\n}\n","import { Component, h, Prop, Host, Event, EventEmitter } from '@stencil/core';\nimport { assignDescription, messageId } from '../../utils/form';\nimport { PdsLabel } from '../_internal/pds-label/pds-label';\n\n@Component({\n tag: 'pds-checkbox',\n styleUrl: 'pds-checkbox.scss',\n shadow: true,\n})\nexport class PdsCheckbox {\n /**\n * It determines whether or not the checkbox is checked.\n */\n @Prop() checked: boolean;\n\n /**\n * A unique identifier used for the underlying component `id` attribute and the label `for` attribute.\n */\n @Prop() componentId!: string;\n\n /**\n * It determines whether or not the checkbox is disabled.\n */\n @Prop() disabled: boolean;\n\n /**\n * Displays message text describing an invalid state.\n */\n @Prop() errorMessage: string;\n\n /**\n * String used for helper message below checkbox.\n */\n @Prop() helperMessage: string;\n\n /**\n * If `true`, the checkbox will visually appear as indeterminate.\n * Only JavaScript can set the objects `indeterminate` property. See [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#indeterminate_state_checkboxes).\n */\n @Prop() indeterminate: boolean;\n\n /**\n * It determines whether or not the checkbox is invalid.\n */\n @Prop() invalid: boolean;\n\n /**\n * String used for label text next to checkbox.\n */\n @Prop() label: string;\n\n /**\n * String used for checkbox `name` attribute.\n */\n @Prop() name: string;\n\n /**\n * It determines whether or not the checkbox is required.\n */\n @Prop() required: boolean;\n\n /**\n * The value of the checkbox that is submitted with a form.\n */\n @Prop() value: string;\n\n /**\n * Emits a boolean indicating whether the checkbox is currently checked or unchecked.\n */\n @Event() pdsCheckboxChange: EventEmitter<boolean>;\n\n private handleCheckboxChange = (e: Event) => {\n if (this.disabled) {\n return;\n }\n\n const target = e.target as HTMLInputElement;\n const isChecked = target.checked;\n\n this.pdsCheckboxChange.emit(isChecked);\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.invalid) { classNames.push('is-invalid'); }\n if (this.indeterminate) { classNames.push('is-indeterminate'); }\n if (this.disabled) { classNames.push('is-disabled'); }\n\n return classNames.join(' ');\n }\n\n render() {\n return (\n <Host class={this.classNames()}>\n <input\n aria-describedby={assignDescription(this.componentId, this.invalid, this.helperMessage)}\n aria-invalid={this.invalid ? \"true\" : undefined}\n type=\"checkbox\"\n id={this.componentId}\n name={this.name}\n value={this.value}\n checked={this.checked}\n required={this.required}\n disabled={this.disabled}\n onChange={this.handleCheckboxChange}\n />\n <PdsLabel htmlFor={this.componentId} text={this.label} />\n {this.helperMessage &&\n <div\n class={'pds-checkbox__message'}\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </div>\n }\n {this.errorMessage &&\n <div\n class={`pds-checkbox__message pds-checkbox__message--error`}\n id={messageId(this.componentId, 'error')}\n aria-live=\"assertive\"\n >\n {this.errorMessage}\n </div>\n }\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsChip extends Components.PdsChip, HTMLElement {}
4
+ export const PdsChip: {
5
+ prototype: PdsChip;
6
+ new (): PdsChip;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,76 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$2 } from './pds-icon2.js';
3
+
4
+ const pdsChipCss = ":host{--background-danger:var(--pine-color-red-100);--background-danger-dot:var(--pine-color-red-300);--background-danger-interactive:var(--pine-color-red-200);--background-neutral:var(--pine-color-neutral-grey-300);--background-neutral-dot:var(--pine-color-neutral-charcoal-100);--background-neutral-interactive:var(--pine-color-neutral-grey-400);--background-info:var(--pine-color-primary-100);--background-info-dot:var(--pine-color-primary-300);--background-info-interactive:var(--pine-color-primary-200);--background-accent:var(--pine-color-purple-100);--background-accent-dot:var(--pine-color-purple-300);--background-accent-interactive:var(--pine-color-purple-200);--background-success:var(--pine-color-green-100);--background-success-dot:var(--pine-color-green-300);--background-success-interactive:var(--pine-color-green-200);--background-warning:var(--pine-color-yellow-100);--background-warning-dot:var(--pine-color-yellow-300);--background-warning-interactive:var(--pine-color-yellow-200);--box-shadow-focus:0 0 0 4px var(--pine-color-primary-200);--border-radius:var(--pine-border-radius-lg);--font-size:var(--pine-font-size-body-sm);--font-size-lg:var(--pine-font-size-body);--font-weight:var(--pine-font-weight-medium);--line-height:var(--pine-line-height-sm);--padding-block-sm:calc(var(--pine-spacing-xxs) / 2);--padding-block:var(--pine-spacing-xxs);--padding-block-lg:6px;--padding-inline-sm:calc(var(--pine-spacing-xxs) / 2);--padding-inline:10px;--padding-inline-lg:calc(var(--pine-spacing-md) / 2);--padding-inline-xl:14px;--margin-block-xs:calc(var(--pine-spacing-xxs) / 2);--margin-inline-sm:calc(var(--pine-spacing-xs) / 2);--margin-inline-xs:calc(var(--pine-spacing-xxs) / 2);--margin-inline:4px;--margin-inline-lg:var(--pine-spacing-xs);--margin-inline-xl:calc(var(--pine-spacing-md) / 2);--dot-size:4px;--close-size:10px;--close-size-lg:24px;-ms-flex-align:center;align-items:center;border-radius:var(--border-radius);display:-ms-inline-flexbox;display:inline-flex;font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height);padding-block:var(--padding-block-sm);padding-inline:var(--padding-inline)}:host(.pds-chip--accent){background:var(--background-accent)}:host(.pds-chip--accent) .pds-chip__dot{background:var(--background-accent-dot)}:host(.pds-chip--accent) .pds-chip__close:hover{background:var(--background-accent-interactive)}:host(.pds-chip--accent.pds-chip--dropdown:hover){background:var(--background-accent-interactive)}:host(.pds-chip--danger){background:var(--background-danger)}:host(.pds-chip--danger) .pds-chip__dot{background:var(--background-danger-dot)}:host(.pds-chip--danger) .pds-chip__close:hover{background:var(--background-danger-interactive)}:host(.pds-chip--danger.pds-chip--dropdown:hover){background:var(--background-danger-interactive)}:host(.pds-chip--info){background:var(--background-info)}:host(.pds-chip--info) .pds-chip__dot{background:var(--background-info-dot)}:host(.pds-chip--info) .pds-chip__close:hover{background:var(--background-info-interactive)}:host(.pds-chip--info.pds-chip--dropdown:hover){background:var(--background-info-interactive)}:host(.pds-chip--neutral){background:var(--background-neutral)}:host(.pds-chip--neutral) .pds-chip__dot{background:var(--background-neutral-dot)}:host(.pds-chip--neutral) .pds-chip__close:hover{background:var(--background-neutral-interactive)}:host(.pds-chip--neutral.pds-chip--dropdown:hover){background:var(--background-neutral-interactive)}:host(.pds-chip--success){background:var(--background-success)}:host(.pds-chip--success) .pds-chip__dot{background:var(--background-success-dot)}:host(.pds-chip--success) .pds-chip__close:hover{background:var(--background-success-interactive)}:host(.pds-chip--success.pds-chip--dropdown:hover){background:var(--background-success-interactive)}:host(.pds-chip--warning){background:var(--background-warning)}:host(.pds-chip--warning) .pds-chip__dot{background:var(--background-warning-dot)}:host(.pds-chip--warning) .pds-chip__close:hover{background:var(--background-warning-interactive)}:host(.pds-chip--warning.pds-chip--dropdown:hover){background:var(--background-warning-interactive)}.pds-chip__dot{border:1px solid transparent;border-radius:50%;display:inline-block;height:var(--dot-size);-webkit-margin-after:var(--margin-block-xs);margin-block-end:var(--margin-block-xs);-webkit-margin-end:var(--margin-inline-sm);margin-inline-end:var(--margin-inline-sm);width:var(--dot-size)}:host(.pds-chip--dropdown){padding:0}:host(.pds-chip--dropdown) .pds-chip__dot{-webkit-margin-after:1px;margin-block-end:1px;-webkit-margin-before:var(--margin-block-xs);margin-block-start:var(--margin-block-xs)}.pds-chip__button{-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:var(--border-radius);display:-ms-flexbox;display:flex;font-family:inherit;font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height);padding-block:var(--padding-block-sm);padding-inline:var(--padding-inline)}.pds-chip__button:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.pds-chip__button pds-icon{-webkit-margin-end:calc(var(--margin-inline-xs) * -1);margin-inline-end:calc(var(--margin-inline-xs) * -1);-webkit-margin-start:var(--margin-inline);margin-inline-start:var(--margin-inline)}:host(.pds-chip--tag){padding-block:var(--padding-block-sm)}.pds-chip__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:50%;height:var(--close-size);-webkit-margin-end:calc(var(--margin-inline-lg) * -1);margin-inline-end:calc(var(--margin-inline-lg) * -1);-webkit-margin-start:var(--margin-inline);margin-inline-start:var(--margin-inline);padding:var(--close-size);position:relative;width:var(--close-size)}.pds-chip__close pds-icon{left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.pds-chip__close:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}:host(.pds-chip--large){font-size:var(--font-size-lg);padding-block:var(--padding-block-lg);padding-inline:var(--padding-inline-xl)}:host(.pds-chip--large):host(.pds-chip--dropdown){padding-block:var(--padding-block);padding-inline:var(--padding-inline-sm)}:host(.pds-chip--large):host(.pds-chip--dropdown) .pds-chip__dot{-webkit-margin-after:0;margin-block-end:0}:host(.pds-chip--large) .pds-chip__button{font-size:var(--font-size-lg);padding-inline:var(--padding-inline-lg)}:host(.pds-chip--large) .pds-chip__close{height:var(--close-size-lg);-webkit-margin-end:calc(var(--margin-inline-xl) * -1);margin-inline-end:calc(var(--margin-inline-xl) * -1);width:var(--close-size-lg)}:host(.pds-chip--large):host(.pds-chip--tag){padding-block:var(--padding-block)}";
5
+
6
+ const PdsChip$1 = /*@__PURE__*/ proxyCustomElement(class PdsChip extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.pdsTagCloseClick = createEvent(this, "pdsTagCloseClick", 7);
12
+ this.handleCloseClick = () => {
13
+ this.pdsTagCloseClick.emit();
14
+ };
15
+ this.componentId = undefined;
16
+ this.sentiment = 'neutral';
17
+ this.dot = false;
18
+ this.label = undefined;
19
+ this.large = false;
20
+ this.variant = 'text';
21
+ }
22
+ classNames() {
23
+ const classNames = ['pds-chip'];
24
+ if (this.large) {
25
+ classNames.push('pds-chip--large');
26
+ }
27
+ if (this.variant) {
28
+ classNames.push('pds-chip--' + this.variant);
29
+ }
30
+ if (this.sentiment) {
31
+ classNames.push('pds-chip--' + this.sentiment);
32
+ }
33
+ return classNames.join(' ');
34
+ }
35
+ setChipContent() {
36
+ const isDropdown = this.variant === 'dropdown';
37
+ const chipContent = isDropdown ? (h("button", { class: "pds-chip__button", type: "button" }, this.dot && h("i", { class: "pds-chip__dot", "aria-hidden": "true" }), this.label, h("pds-icon", { name: "down-small", size: "12px", "aria-hidden": "true" }))) : (h("span", { class: "pds-chip__label" }, this.dot && h("i", { class: "pds-chip__dot", "aria-hidden": "true" }), this.label));
38
+ return chipContent;
39
+ }
40
+ render() {
41
+ return (h(Host, { class: this.classNames(), id: this.componentId }, this.setChipContent(), this.variant === 'tag' && (h("button", { class: "pds-chip__close", type: "button", onClick: this.handleCloseClick, "aria-label": "Remove" }, h("pds-icon", { name: "remove", size: "12px" })))));
42
+ }
43
+ static get style() { return pdsChipCss; }
44
+ }, [1, "pds-chip", {
45
+ "componentId": [1, "component-id"],
46
+ "sentiment": [1],
47
+ "dot": [4],
48
+ "label": [1],
49
+ "large": [4],
50
+ "variant": [1]
51
+ }]);
52
+ function defineCustomElement$1() {
53
+ if (typeof customElements === "undefined") {
54
+ return;
55
+ }
56
+ const components = ["pds-chip", "pds-icon"];
57
+ components.forEach(tagName => { switch (tagName) {
58
+ case "pds-chip":
59
+ if (!customElements.get(tagName)) {
60
+ customElements.define(tagName, PdsChip$1);
61
+ }
62
+ break;
63
+ case "pds-icon":
64
+ if (!customElements.get(tagName)) {
65
+ defineCustomElement$2();
66
+ }
67
+ break;
68
+ } });
69
+ }
70
+
71
+ const PdsChip = PdsChip$1;
72
+ const defineCustomElement = defineCustomElement$1;
73
+
74
+ export { PdsChip, defineCustomElement };
75
+
76
+ //# sourceMappingURL=pds-chip.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-chip.js","mappings":";;;AAAA,MAAM,UAAU,GAAG,kwNAAkwN;;MCOxwNA,SAAO;;;;;;QAwCV,qBAAgB,GAAG;YACzB,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;SAC9B,CAAA;;yBAhCqF,SAAS;mBAMjF,KAAK;;qBAWH,KAAK;uBAM0B,MAAM;;IAW7C,UAAU;QAChB,MAAM,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACpC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,UAAU,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9C;QACD,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,UAAU,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;SAChD;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;IAEO,cAAc;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,KAAK,UAAU,CAAC;QAC/C,MAAM,WAAW,GAAG,UAAU,IAC5B,cAAQ,KAAK,EAAC,kBAAkB,EAAC,IAAI,EAAC,QAAQ,IAC3C,IAAI,CAAC,GAAG,IAAI,SAAG,KAAK,EAAC,eAAe,iBAAa,MAAM,GAAK,EAC5D,IAAI,CAAC,KAAK,EACX,gBAAU,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,iBAAa,MAAM,GAAY,CAC/D,KAET,YAAM,KAAK,EAAC,iBAAiB,IAC1B,IAAI,CAAC,GAAG,IAAI,SAAG,KAAK,EAAC,eAAe,iBAAa,MAAM,GAAK,EAC5D,IAAI,CAAC,KAAK,CACN,CACR,CAAC;QAEF,OAAO,WAAW,CAAC;KACpB;IAED,MAAM;QACJ,QACE,EAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,IACjD,IAAI,CAAC,cAAc,EAAE,EACrB,IAAI,CAAC,OAAO,KAAK,KAAK,KACrB,cAAQ,KAAK,EAAC,iBAAiB,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,gBAAa,QAAQ,IAC/F,gBAAU,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,GAAY,CACxC,CACV,CACI,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsChip"],"sources":["src/components/pds-chip/pds-chip.scss?tag=pds-chip&encapsulation=shadow","src/components/pds-chip/pds-chip.tsx"],"sourcesContent":[":host {\n --background-danger: var(--pine-color-red-100);\n --background-danger-dot: var(--pine-color-red-300);\n --background-danger-interactive: var(--pine-color-red-200);\n --background-neutral: var(--pine-color-neutral-grey-300);\n --background-neutral-dot: var(--pine-color-neutral-charcoal-100);\n --background-neutral-interactive: var(--pine-color-neutral-grey-400);\n --background-info: var(--pine-color-primary-100);\n --background-info-dot: var(--pine-color-primary-300);\n --background-info-interactive: var(--pine-color-primary-200);\n --background-accent: var(--pine-color-purple-100);\n --background-accent-dot: var(--pine-color-purple-300);\n --background-accent-interactive: var(--pine-color-purple-200);\n --background-success: var(--pine-color-green-100);\n --background-success-dot: var(--pine-color-green-300);\n --background-success-interactive: var(--pine-color-green-200);\n --background-warning: var(--pine-color-yellow-100);\n --background-warning-dot: var(--pine-color-yellow-300);\n --background-warning-interactive: var(--pine-color-yellow-200);\n --box-shadow-focus: 0 0 0 4px var(--pine-color-primary-200);\n\n --border-radius: var(--pine-border-radius-lg);\n --font-size: var(--pine-font-size-body-sm);\n --font-size-lg: var(--pine-font-size-body);\n --font-weight: var(--pine-font-weight-medium);\n --line-height: var(--pine-line-height-sm);\n --padding-block-sm: calc(var(--pine-spacing-xxs) / 2);\n --padding-block: var(--pine-spacing-xxs);\n --padding-block-lg: 6px;\n --padding-inline-sm: calc(var(--pine-spacing-xxs) / 2);\n --padding-inline: 10px;\n --padding-inline-lg: calc(var(--pine-spacing-md) / 2);\n --padding-inline-xl: 14px;\n --margin-block-xs: calc(var(--pine-spacing-xxs) / 2);\n --margin-inline-sm: calc(var(--pine-spacing-xs) / 2);\n --margin-inline-xs: calc(var(--pine-spacing-xxs) / 2);\n --margin-inline: 4px;\n --margin-inline-lg: var(--pine-spacing-xs);\n --margin-inline-xl: calc(var(--pine-spacing-md) / 2);\n\n --dot-size: 4px;\n --close-size: 10px;\n --close-size-lg: 24px;\n\n align-items: center;\n border-radius: var(--border-radius);\n display: inline-flex;\n font-size: var(--font-size);\n font-weight: var(--font-weight);\n line-height: var(--line-height);\n padding-block: var(--padding-block-sm);\n padding-inline: var(--padding-inline);\n}\n\n$pds-chip-sentiment: (\n accent: var(--background-accent),\n danger: var(--background-danger),\n info: var(--background-info),\n neutral: var(--background-neutral),\n success: var(--background-success),\n warning: var(--background-warning),\n);\n\n$pds-chip-sentiment-dots: (\n accent: var(--background-accent-dot),\n danger: var(--background-danger-dot),\n info: var(--background-info-dot),\n neutral: var(--background-neutral-dot),\n success: var(--background-success-dot),\n warning: var(--background-warning-dot),\n);\n\n$pds-chip-sentiment-interactive: (\n accent: var(--background-accent-interactive),\n danger: var(--background-danger-interactive),\n info: var(--background-info-interactive),\n neutral: var(--background-neutral-interactive),\n success: var(--background-success-interactive),\n warning: var(--background-warning-interactive),\n);\n\n@each $sentiment, $value in $pds-chip-sentiment {\n :host(.pds-chip--#{$sentiment}) {\n background: $value;\n\n // dot colors\n .pds-chip__dot {\n /* stylelint-disable-next-line */\n background: map-get($pds-chip-sentiment-dots, $sentiment);\n }\n\n // tag close hover colors\n .pds-chip__close:hover {\n /* stylelint-disable-next-line */\n background: map-get($pds-chip-sentiment-interactive, $sentiment);\n }\n }\n // dropdown hover colors\n :host(.pds-chip--#{$sentiment}.pds-chip--dropdown:hover) {\n /* stylelint-disable-next-line */\n background: map-get($pds-chip-sentiment-interactive, $sentiment);\n }\n}\n\n.pds-chip__dot {\n border: 1px solid transparent;\n border-radius: 50%;\n display: inline-block;\n height: var(--dot-size);\n margin-block-end: var(--margin-block-xs);\n margin-inline-end: var(--margin-inline-sm);\n width: var(--dot-size);\n}\n\n// dropdown\n\n:host(.pds-chip--dropdown) {\n padding: 0;\n\n .pds-chip__dot {\n margin-block-end: 1px;\n margin-block-start: var(--margin-block-xs);\n }\n}\n\n.pds-chip__button {\n align-items: center;\n appearance: none;\n background: transparent;\n border: 0;\n border-radius: var(--border-radius);\n display: flex;\n font-family: inherit;\n font-size: var(--font-size);\n font-weight: var(--font-weight);\n line-height: var(--line-height);\n padding-block: var(--padding-block-sm);\n padding-inline: var(--padding-inline);\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n\n pds-icon {\n margin-inline-end: calc(var(--margin-inline-xs) * -1);\n margin-inline-start: var(--margin-inline);\n }\n}\n\n// tag\n\n:host(.pds-chip--tag) {\n padding-block: var(--padding-block-sm);\n}\n\n.pds-chip__close {\n appearance: none;\n background: transparent;\n border: 0;\n border-radius: 50%;\n height: var(--close-size);\n margin-inline-end: calc(var(--margin-inline-lg) * -1);\n margin-inline-start: var(--margin-inline);\n padding: var(--close-size);\n position: relative;\n width: var(--close-size);\n\n pds-icon {\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n}\n\n// large\n\n:host(.pds-chip--large) {\n font-size: var(--font-size-lg);\n padding-block: var(--padding-block-lg);\n padding-inline: var(--padding-inline-xl);\n\n &:host(.pds-chip--dropdown) {\n padding-block: var(--padding-block);\n padding-inline: var(--padding-inline-sm);\n\n .pds-chip__dot {\n margin-block-end: 0;\n }\n }\n\n .pds-chip__button {\n font-size: var(--font-size-lg);\n padding-inline: var(--padding-inline-lg)\n }\n\n .pds-chip__close {\n height: var(--close-size-lg);\n margin-inline-end: calc(var(--margin-inline-xl) * -1);\n width: var(--close-size-lg);\n }\n\n &:host(.pds-chip--tag) {\n padding-block: var(--padding-block);\n }\n}\n","import { Component, Host, h, Prop, Event, EventEmitter } from '@stencil/core';\n\n@Component({\n tag: 'pds-chip',\n styleUrl: 'pds-chip.scss',\n shadow: true,\n})\nexport class PdsChip {\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Sets the color scheme of the chip.\n * @defaultValue 'neutral'\n */\n @Prop() sentiment: 'accent' | 'danger' | 'info' | 'neutral' | 'success' | 'warning' = 'neutral';\n\n /**\n * Determines whether a dot should be displayed on the chip.\n * @defaultValue false\n */\n @Prop() dot = false;\n\n /**\n * Sets the text label content of the chip.\n */\n @Prop() label: string;\n\n /**\n * Determines whether the chip should be rendered in a larger size.\n * @defaultValue false\n */\n @Prop() large = false;\n\n /**\n * Sets the style variant of the chip.\n * @defaultValue 'text'\n */\n @Prop() variant: 'text' | 'tag' | 'dropdown' = 'text';\n\n /**\n * Event when close button is clicked on tag variant.\n */\n @Event() pdsTagCloseClick: EventEmitter;\n\n private handleCloseClick = () => {\n this.pdsTagCloseClick.emit();\n }\n\n private classNames() {\n const classNames = ['pds-chip'];\n\n if (this.large) {\n classNames.push('pds-chip--large');\n }\n if (this.variant) {\n classNames.push('pds-chip--' + this.variant);\n }\n if (this.sentiment) {\n classNames.push('pds-chip--' + this.sentiment);\n }\n\n return classNames.join(' ');\n }\n\n private setChipContent() {\n const isDropdown = this.variant === 'dropdown';\n const chipContent = isDropdown ? (\n <button class=\"pds-chip__button\" type=\"button\">\n {this.dot && <i class=\"pds-chip__dot\" aria-hidden=\"true\"></i>}\n {this.label}\n <pds-icon name=\"down-small\" size=\"12px\" aria-hidden=\"true\"></pds-icon>\n </button>\n ) : (\n <span class=\"pds-chip__label\">\n {this.dot && <i class=\"pds-chip__dot\" aria-hidden=\"true\"></i>}\n {this.label}\n </span>\n );\n\n return chipContent;\n }\n\n render() {\n return (\n <Host class={this.classNames()} id={this.componentId}>\n {this.setChipContent()}\n {this.variant === 'tag' && (\n <button class=\"pds-chip__close\" type=\"button\" onClick={this.handleCloseClick} aria-label=\"Remove\">\n <pds-icon name=\"remove\" size=\"12px\"></pds-icon>\n </button>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsCopytext extends Components.PdsCopytext, HTMLElement {}
4
+ export const PdsCopytext: {
5
+ prototype: PdsCopytext;
6
+ new (): PdsCopytext;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;