@pine-ds/core 1.0.3 → 1.0.4

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 (110) hide show
  1. package/components/custom-elements.d.ts +2 -0
  2. package/components/index.d.ts +92 -0
  3. package/components/index.js +32 -0
  4. package/components/index.js.map +1 -0
  5. package/components/index2.js +14 -0
  6. package/components/index2.js.map +1 -0
  7. package/components/package.json +9 -0
  8. package/components/pds-accordion.d.ts +11 -0
  9. package/components/pds-accordion.js +74 -0
  10. package/components/pds-accordion.js.map +1 -0
  11. package/components/pds-avatar.d.ts +11 -0
  12. package/components/pds-avatar.js +103 -0
  13. package/components/pds-avatar.js.map +1 -0
  14. package/components/pds-box.d.ts +11 -0
  15. package/components/pds-box.js +124 -0
  16. package/components/pds-box.js.map +1 -0
  17. package/components/pds-button.d.ts +11 -0
  18. package/components/pds-button.js +8 -0
  19. package/components/pds-button.js.map +1 -0
  20. package/components/pds-button2.js +84 -0
  21. package/components/pds-button2.js.map +1 -0
  22. package/components/pds-checkbox.d.ts +11 -0
  23. package/components/pds-checkbox.js +8 -0
  24. package/components/pds-checkbox.js.map +1 -0
  25. package/components/pds-checkbox2.js +86 -0
  26. package/components/pds-checkbox2.js.map +1 -0
  27. package/components/pds-chip.d.ts +11 -0
  28. package/components/pds-chip.js +78 -0
  29. package/components/pds-chip.js.map +1 -0
  30. package/components/pds-copytext.d.ts +11 -0
  31. package/components/pds-copytext.js +88 -0
  32. package/components/pds-copytext.js.map +1 -0
  33. package/components/pds-divider.d.ts +11 -0
  34. package/components/pds-divider.js +54 -0
  35. package/components/pds-divider.js.map +1 -0
  36. package/components/pds-icon.js +8 -0
  37. package/components/pds-icon.js.map +1 -0
  38. package/components/pds-icon2.js +359 -0
  39. package/components/pds-icon2.js.map +1 -0
  40. package/components/pds-image.d.ts +11 -0
  41. package/components/pds-image.js +55 -0
  42. package/components/pds-image.js.map +1 -0
  43. package/components/pds-input.d.ts +11 -0
  44. package/components/pds-input.js +72 -0
  45. package/components/pds-input.js.map +1 -0
  46. package/components/pds-label.js +39 -0
  47. package/components/pds-label.js.map +1 -0
  48. package/components/pds-link.d.ts +11 -0
  49. package/components/pds-link.js +65 -0
  50. package/components/pds-link.js.map +1 -0
  51. package/components/pds-progress.d.ts +11 -0
  52. package/components/pds-progress.js +49 -0
  53. package/components/pds-progress.js.map +1 -0
  54. package/components/pds-radio.d.ts +11 -0
  55. package/components/pds-radio.js +78 -0
  56. package/components/pds-radio.js.map +1 -0
  57. package/components/pds-row.d.ts +11 -0
  58. package/components/pds-row.js +72 -0
  59. package/components/pds-row.js.map +1 -0
  60. package/components/pds-sortable-item.d.ts +11 -0
  61. package/components/pds-sortable-item.js +58 -0
  62. package/components/pds-sortable-item.js.map +1 -0
  63. package/components/pds-sortable.d.ts +11 -0
  64. package/components/pds-sortable.js +2722 -0
  65. package/components/pds-sortable.js.map +1 -0
  66. package/components/pds-switch.d.ts +11 -0
  67. package/components/pds-switch.js +82 -0
  68. package/components/pds-switch.js.map +1 -0
  69. package/components/pds-tab.d.ts +11 -0
  70. package/components/pds-tab.js +53 -0
  71. package/components/pds-tab.js.map +1 -0
  72. package/components/pds-table-body.d.ts +11 -0
  73. package/components/pds-table-body.js +36 -0
  74. package/components/pds-table-body.js.map +1 -0
  75. package/components/pds-table-cell.d.ts +11 -0
  76. package/components/pds-table-cell.js +8 -0
  77. package/components/pds-table-cell.js.map +1 -0
  78. package/components/pds-table-cell2.js +72 -0
  79. package/components/pds-table-cell2.js.map +1 -0
  80. package/components/pds-table-head-cell.d.ts +11 -0
  81. package/components/pds-table-head-cell.js +8 -0
  82. package/components/pds-table-head-cell.js.map +1 -0
  83. package/components/pds-table-head-cell2.js +96 -0
  84. package/components/pds-table-head-cell2.js.map +1 -0
  85. package/components/pds-table-head.d.ts +11 -0
  86. package/components/pds-table-head.js +56 -0
  87. package/components/pds-table-head.js.map +1 -0
  88. package/components/pds-table-row.d.ts +11 -0
  89. package/components/pds-table-row.js +78 -0
  90. package/components/pds-table-row.js.map +1 -0
  91. package/components/pds-table.d.ts +11 -0
  92. package/components/pds-table.js +100 -0
  93. package/components/pds-table.js.map +1 -0
  94. package/components/pds-tabpanel.d.ts +11 -0
  95. package/components/pds-tabpanel.js +45 -0
  96. package/components/pds-tabpanel.js.map +1 -0
  97. package/components/pds-tabs.d.ts +11 -0
  98. package/components/pds-tabs.js +119 -0
  99. package/components/pds-tabs.js.map +1 -0
  100. package/components/pds-textarea.d.ts +11 -0
  101. package/components/pds-textarea.js +82 -0
  102. package/components/pds-textarea.js.map +1 -0
  103. package/components/pds-tooltip.d.ts +11 -0
  104. package/components/pds-tooltip.js +178 -0
  105. package/components/pds-tooltip.js.map +1 -0
  106. package/dist/docs.json +1 -1
  107. package/hydrate/index.d.ts +218 -0
  108. package/hydrate/index.js +13120 -0
  109. package/hydrate/package.json +6 -0
  110. package/package.json +1 -1
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsLink extends Components.PdsLink, HTMLElement {}
4
+ export const PdsLink: {
5
+ prototype: PdsLink;
6
+ new (): PdsLink;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,65 @@
1
+ import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
+ import { l as launch } from './index2.js';
3
+ import { d as defineCustomElement$2 } from './pds-icon2.js';
4
+
5
+ const pdsLinkCss = ":host{--border-outline:4px solid var(--pine-color-blue-200);--border-radius:var(--pine-border-radius-075);--box-shadow-focus:inset 0 0 0 2px var(--pine-color-blue-200);--color-text-default:var(--pine-color-charcoal-400);--font-size:var(--pine-font-size-100);--font-size-sm:var(--pine-font-size-087);--font-size-xs:var(--pine-font-size-075);--font-weight:var(--pine-font-weight-medium);--spacing-inline-start-margin:var(--pine-spacing-050);--sizing-svg-lg:15px;--sizing-svg-md:13px;--sizing-svg-sm:11px;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:inherit}.pds-link:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}.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)}.pds-link--lg pds-icon{height:var(--sizing-svg-lg);width:var(--sizing-svg-lg)}.pds-link--plain{font-weight:var(--font-weight);text-decoration:none}.pds-link--plain:hover{text-decoration:underline}.pds-link--default{text-decoration:underline}.pds-link--default:hover{text-decoration:none}";
6
+ const PdsLinkStyle0 = pdsLinkCss;
7
+
8
+ const PdsLink$1 = /*@__PURE__*/ proxyCustomElement(class PdsLink extends HTMLElement {
9
+ constructor() {
10
+ super();
11
+ this.__registerHost();
12
+ this.__attachShadow();
13
+ this.componentId = undefined;
14
+ this.external = false;
15
+ this.variant = 'inline';
16
+ this.fontSize = 'lg';
17
+ this.href = undefined;
18
+ }
19
+ classNames() {
20
+ const classNames = ['pds-link'];
21
+ if (this.fontSize) {
22
+ classNames.push('pds-link--' + this.fontSize);
23
+ }
24
+ if (this.variant) {
25
+ classNames.push('pds-link--' + this.variant);
26
+ }
27
+ return classNames.join(' ');
28
+ }
29
+ render() {
30
+ return (h("a", { key: 'de51c27a4c7e3ab6f105f40b683f7c8d1561049c', class: this.classNames(), href: this.href, id: this.componentId, target: this.external ? '_blank' : undefined, part: "link" }, h("slot", { key: '3c4fbcff6544a604d81dd4388a504a902d6ee130' }, this.href), this.external &&
31
+ h("pds-icon", { key: 'fd1acc513efd16134c062ad3845d44be20a911cf', icon: launch, size: this.fontSize })));
32
+ }
33
+ static get style() { return PdsLinkStyle0; }
34
+ }, [1, "pds-link", {
35
+ "componentId": [1, "component-id"],
36
+ "external": [4],
37
+ "variant": [1],
38
+ "fontSize": [1, "font-size"],
39
+ "href": [1]
40
+ }]);
41
+ function defineCustomElement$1() {
42
+ if (typeof customElements === "undefined") {
43
+ return;
44
+ }
45
+ const components = ["pds-link", "pds-icon"];
46
+ components.forEach(tagName => { switch (tagName) {
47
+ case "pds-link":
48
+ if (!customElements.get(tagName)) {
49
+ customElements.define(tagName, PdsLink$1);
50
+ }
51
+ break;
52
+ case "pds-icon":
53
+ if (!customElements.get(tagName)) {
54
+ defineCustomElement$2();
55
+ }
56
+ break;
57
+ } });
58
+ }
59
+
60
+ const PdsLink = PdsLink$1;
61
+ const defineCustomElement = defineCustomElement$1;
62
+
63
+ export { PdsLink, defineCustomElement };
64
+
65
+ //# sourceMappingURL=pds-link.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-link.js","mappings":";;;;AAAA,MAAM,UAAU,GAAG,k8CAAk8C,CAAC;AACt9C,sBAAe,UAAU;;MCYZA,SAAO;;;;;;wBAUC,KAAK;uBAMc,QAAQ;wBAUP,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,QACE,0DACE,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,IAEX,+DAAO,IAAI,CAAC,IAAI,CAAQ,EACvB,IAAI,CAAC,QAAQ;YACZ,iEAAU,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAa,CAExD,EACJ;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsLink"],"sources":["src/components/pds-link/pds-link.scss?tag=pds-link&encapsulation=shadow","src/components/pds-link/pds-link.tsx"],"sourcesContent":[":host {\n\n --border-outline: 4px solid var(--pine-color-blue-200);\n --border-radius: var(--pine-border-radius-075);\n --box-shadow-focus: inset 0 0 0 2px var(--pine-color-blue-200);\n\n --color-text-default: var(--pine-color-charcoal-400);\n\n --font-size: var(--pine-font-size-100);\n --font-size-sm: var(--pine-font-size-087);\n --font-size-xs: var(--pine-font-size-075);\n --font-weight: var(--pine-font-weight-medium);\n\n --spacing-inline-start-margin: var(--pine-spacing-050);\n --sizing-svg-lg: 15px;\n --sizing-svg-md: 13px;\n --sizing-svg-sm: 11px;\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: inherit;\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// 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);\n\n pds-icon {\n height: var(--sizing-svg-lg);\n width: var(--sizing-svg-lg);\n }\n}\n\n.pds-link--plain {\n font-weight: var(--font-weight);\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n}\n\n// Default = inline link\n.pds-link--default {\n text-decoration: underline;\n\n &: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 - The main link element that represents the link component.\n * @slot - Content is placed between the opening closing tags.\n */\n@Component({\n tag: 'pds-link',\n styleUrl: '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 * When enabled, opens link in a new tab.\n * @defaultValue false\n */\n @Prop() external = false;\n\n /**\n *\n * Modifies the look of the link\n */\n @Prop() variant: 'inline' | 'plain' = 'inline';\n\n /**\n *\n * The Font size follows t-shirt model\n * sm: 12px\n * md: 14px\n * lg: 16px\n * @defaultValue lg\n */\n @Prop() fontSize: 'sm' | 'md' | 'lg' = 'lg';\n\n /**\n * The URL that the hyperlink points to.\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}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsProgress extends Components.PdsProgress, HTMLElement {}
4
+ export const PdsProgress: {
5
+ prototype: PdsProgress;
6
+ new (): PdsProgress;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,49 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const pdsProgressCss = ":host{--color-progress-fill:var(--pine-color-blue-300);--sizing-progress-bar-height:8px;--sizing-progress-bar-width:100%;-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;width:var(--sizing-progress-bar-width)}@-webkit-keyframes progressBar{0%{width:0}100%{width:var(--sizing-progress-bar-width)}}@keyframes progressBar{0%{width:0}100%{width:var(--sizing-progress-bar-width)}}.pds-progress{--border-radius:var(--pine-border-radius-050);--color-progress-bar-background:var(--pine-color-grey-300);-ms-flex-align:center;align-items:center;background-color:var(--color-progress-bar-background);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;height:var(--sizing-progress-bar-height);position:relative;width:100%}:host(.is-animated) progress,:host(.is-animated) progress::-webkit-progress-bar{-webkit-animation:progressBar 3s ease;animation:progressBar 3s ease;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}progress,progress::-webkit-progress-bar{background-color:transparent;border:0;height:var(--sizing-progress-bar-height);width:100%}progress::-webkit-progress-value{--border-radius:var(--pine-border-radius-050);--color-background:var(--pine-color-blue-300);background-color:var(--color-progress-fill, var(--color-background));border-radius:var(--border-radius)}progress::-moz-progress-bar{--color-background:var(--pine-color-blue-300);--border-radius:var(--pine-border-radius-050);background-color:var(--color-progress-fill, var(--color-background));border-radius:var(--border-radius)}.pds-progress__label{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.pds-progress__percentage{--font-size:var(--pine-font-size-087);--font-weight:var(--pine-font-weight-medium);--line-height:var(--pine-line-height-150);--spacing-inline-start-margin:var(--pine-spacing-300);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height);-webkit-margin-start:calc(var(--spacing-inline-start-margin) / 2);margin-inline-start:calc(var(--spacing-inline-start-margin) / 2)}";
4
+ const PdsProgressStyle0 = pdsProgressCss;
5
+
6
+ const PdsProgress$1 = /*@__PURE__*/ proxyCustomElement(class PdsProgress extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.animated = false;
12
+ this.componentId = undefined;
13
+ this.fillColor = undefined;
14
+ this.label = undefined;
15
+ this.percent = 0;
16
+ this.showPercent = false;
17
+ }
18
+ render() {
19
+ return (h(Host, { key: '5ee3e8b3a4182384a2f70632f1b6420acd27e278', class: this.animated ? { 'is-animated': this.animated } : '' }, h("div", { key: 'd81206158817db4f806e3c804177614791f4d121', class: "pds-progress" }, h("label", { key: 'a308666ace23b903e256a71d6f3b65d53fbc6ed6', class: "pds-progress__label", htmlFor: this.componentId }, this.label), h("progress", { key: 'ded042f6761fe83c12e26f9bcbf191ff2ee66689', id: this.componentId, max: "100", style: this.fillColor ? { '--color-progress-fill': this.fillColor } : {}, value: this.percent })), this.showPercent && h("div", { key: 'bab83ee8ac34b7caea9ab7b906a1a16b72ee29fc', class: "pds-progress__percentage" }, this.percent, "%")));
20
+ }
21
+ static get style() { return PdsProgressStyle0; }
22
+ }, [1, "pds-progress", {
23
+ "animated": [4],
24
+ "componentId": [1, "component-id"],
25
+ "fillColor": [1, "fill-color"],
26
+ "label": [1],
27
+ "percent": [2],
28
+ "showPercent": [4, "show-percent"]
29
+ }]);
30
+ function defineCustomElement$1() {
31
+ if (typeof customElements === "undefined") {
32
+ return;
33
+ }
34
+ const components = ["pds-progress"];
35
+ components.forEach(tagName => { switch (tagName) {
36
+ case "pds-progress":
37
+ if (!customElements.get(tagName)) {
38
+ customElements.define(tagName, PdsProgress$1);
39
+ }
40
+ break;
41
+ } });
42
+ }
43
+
44
+ const PdsProgress = PdsProgress$1;
45
+ const defineCustomElement = defineCustomElement$1;
46
+
47
+ export { PdsProgress, defineCustomElement };
48
+
49
+ //# sourceMappingURL=pds-progress.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-progress.js","mappings":";;AAAA,MAAM,cAAc,GAAG,gmEAAgmE,CAAC;AACxnE,0BAAe,cAAc;;MCMhBA,aAAW;;;;;wBAKH,KAAK;;;;uBAsBN,CAAC;2BAMG,KAAK;;IAE3B,MAAM;QACJ,QACE,EAAC,IAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAChE,4DAAK,KAAK,EAAC,cAAc,IACvB,8DAAO,KAAK,EAAC,qBAAqB,EAAC,OAAO,EAAE,IAAI,CAAC,WAAW,IACzD,IAAI,CAAC,KAAK,CACL,EACR,iEACE,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,GAAG,EAAC,KAAK,EACT,KAAK,EAAE,IAAI,CAAC,SAAS,GAAG,EAAE,uBAAuB,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,EACxE,KAAK,EAAE,IAAI,CAAC,OAAO,GAEV,CACP,EACL,IAAI,CAAC,WAAW,IAAI,4DAAK,KAAK,EAAC,0BAA0B,IAAE,IAAI,CAAC,OAAO,MAAQ,CAC3E,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsProgress"],"sources":["src/components/pds-progress/pds-progress.scss?tag=pds-progress&encapsulation=shadow","src/components/pds-progress/pds-progress.tsx"],"sourcesContent":[":host {\n --color-progress-fill: var(--pine-color-blue-300);\n\n --sizing-progress-bar-height: 8px;\n --sizing-progress-bar-width: 100%;\n\n align-items: center;\n display: flex;\n width: var(--sizing-progress-bar-width);\n}\n\n@keyframes progressBar {\n 0% {\n width: 0\n }\n\n 100% {\n width: var(--sizing-progress-bar-width);\n }\n}\n\n.pds-progress {\n --border-radius: var(--pine-border-radius-050);\n --color-progress-bar-background: var(--pine-color-grey-300);\n\n align-items: center;\n background-color: var(--color-progress-bar-background);\n border-radius: var(--border-radius);\n display: flex;\n flex-direction: row;\n height: var(--sizing-progress-bar-height);\n position: relative;\n width: 100%;\n}\n\n:host(.is-animated) progress,\n:host(.is-animated) progress::-webkit-progress-bar {\n animation: progressBar 3s ease;\n animation-fill-mode: forwards;\n}\n\nprogress,\nprogress::-webkit-progress-bar {\n background-color: transparent;\n border: 0;\n height: var(--sizing-progress-bar-height);\n width: 100%;\n}\n\nprogress::-webkit-progress-value {\n --border-radius: var(--pine-border-radius-050);\n --color-background: var(--pine-color-blue-300);\n\n background-color: var(--color-progress-fill, var(--color-background));\n border-radius: var(--border-radius);\n}\n\nprogress::-moz-progress-bar {\n --color-background: var(--pine-color-blue-300);\n --border-radius: var(--pine-border-radius-050);\n\n background-color: var(--color-progress-fill, var(--color-background));\n border-radius: var(--border-radius);\n}\n\n.pds-progress__label {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n}\n\n.pds-progress__percentage {\n --font-size: var(--pine-font-size-087);\n --font-weight: var(--pine-font-weight-medium);\n --line-height: var(--pine-line-height-150);\n --spacing-inline-start-margin: var(--pine-spacing-300);\n\n font-size: var(--font-size);\n font-weight: var(--font-weight);\n line-height: var(--line-height);\n margin-inline-start: calc(var(--spacing-inline-start-margin) / 2);\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'pds-progress',\n styleUrl: 'pds-progress.scss',\n shadow: true,\n})\nexport class PdsProgress {\n /**\n * Determines whether or not progress is animated.\n * @defaultValue false\n */\n @Prop() animated = false;\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 * Sets the progress fill color. Accepts a color token or a [valid color value](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value).\n * @defaultValue 'var(--pine-color-blue-300)'\n */\n @Prop() fillColor: string;\n\n /**\n * String used for label text. Label is visually hidden but required for better accessibility.\n */\n @Prop() label!: string;\n\n /**\n * Sets the progress fill pecentage and visually displayed when `show-percentage=true`.\n * @defaultValue 0\n */\n @Prop() percent = 0;\n\n /**\n * Determines whether or not the percent value should be displayed as text.\n * @defaultValue false\n */\n @Prop() showPercent = false;\n\n render() {\n return (\n <Host class={this.animated ? { 'is-animated': this.animated } : ''}>\n <div class=\"pds-progress\">\n <label class=\"pds-progress__label\" htmlFor={this.componentId}>\n {this.label}\n </label>\n <progress\n id={this.componentId}\n max=\"100\"\n style={this.fillColor ? { '--color-progress-fill': this.fillColor } : {}}\n value={this.percent}\n >\n </progress>\n </div>\n {this.showPercent && <div class=\"pds-progress__percentage\">{this.percent}%</div>}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsRadio extends Components.PdsRadio, HTMLElement {}
4
+ export const PdsRadio: {
5
+ prototype: PdsRadio;
6
+ new (): PdsRadio;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,78 @@
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 pdsRadioCss = ".sc-pds-radio-h{--border-interactive-default:var(--pine-border-width-thin) solid var( --pine-color-grey-400);--border-radius:50%;--box-shadow-focus:0 0 0 2px var(--color-focus);--box-shadow-focus-error:0 0 0 2px var(--color-invalid-focus);--color:var(--pine-color-charcoal-200);--color-background:var(--pine-color-white);--color-background-hover:var(--pine-color-grey-100);--color-background-disabled:var(--pine-color-grey-200);--color-border-hover:var(--pine-color-grey-500);--color-border-disabled:var(--pine-color-grey-300);--color-checked:var(--pine-color-charcoal-500);--color-disabled:var(---pine-color-grey-500);--color-focus:var(--pine-color-blue-200);--color-invalid:var(--pine-color-red-300);--color-invalid-focus:var(--pine-color-red-200);--font-size:var(--pine-font-size-087);--sizing-check-size:6px;--sizing-input-size:16px;--sizing-margin-block-start:6px;-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.is-invalid.sc-pds-radio-h input.sc-pds-radio{border-color:var(--color-invalid)}.is-invalid.sc-pds-radio-h input.sc-pds-radio:checked{background:var(--color-invalid)}.is-invalid.sc-pds-radio-h input.sc-pds-radio:focus-visible{-webkit-box-shadow:var(--box-shadow-focus-error);box-shadow:var(--box-shadow-focus-error);outline:none}.is-invalid.sc-pds-radio-h label.sc-pds-radio,.is-invalid.sc-pds-radio-h .pds-radio__message--error.sc-pds-radio{color:var(--color-invalid)}input.sc-pds-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--border-interactive-default);border-radius:var(--border-radius);height:var(--sizing-input-size);margin:0;position:relative;width:var(--sizing-input-size)}input.sc-pds-radio:hover{background:var(--color-background-hover);border-color:var(--color-border-hover)}input.sc-pds-radio:checked{background:var(--color-checked);border-color:var(--color-checked)}input.sc-pds-radio:checked::after{background:var(--color-background);border-radius:50%;content:\"\";display:block;height:var(--sizing-check-size);left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);width:var(--sizing-check-size)}input.sc-pds-radio:disabled{background:var(--color-background-disabled);border-color:var(--color-border-disabled);cursor:not-allowed}input.sc-pds-radio:disabled:checked{background:var(--color-disabled);border-color:var(--color-border-disabled)}input.sc-pds-radio:disabled:checked::after{border-color:var(--color-border-disabled)}input.sc-pds-radio:disabled+label.sc-pds-radio{color:var(--color-border-hover);cursor:not-allowed}input.sc-pds-radio:disabled~.pds-radio__message.sc-pds-radio{color:var(--color-disabled)}input.sc-pds-radio:focus-visible{-webkit-box-shadow:var(--box-shadow-focus);box-shadow:var(--box-shadow-focus);outline:none}label.sc-pds-radio{-webkit-margin-start:10px;margin-inline-start:10px}.pds-radio__message.sc-pds-radio{color:var(--color);font-size:var(--font-size);-webkit-margin-before:var(--sizing-margin-block-start);margin-block-start:var(--sizing-margin-block-start);-webkit-margin-start:26px;margin-inline-start:26px;width:100%}";
5
+ const PdsRadioStyle0 = pdsRadioCss;
6
+
7
+ const PdsRadio$1 = /*@__PURE__*/ proxyCustomElement(class PdsRadio extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.pdsRadioChange = createEvent(this, "pdsRadioChange", 7);
12
+ this.handleRadioChange = (e) => {
13
+ if (this.disabled) {
14
+ return;
15
+ }
16
+ const target = e.target;
17
+ const isChecked = target.checked;
18
+ this.pdsRadioChange.emit(isChecked);
19
+ };
20
+ this.checked = false;
21
+ this.disabled = false;
22
+ this.errorMessage = undefined;
23
+ this.invalid = false;
24
+ this.componentId = undefined;
25
+ this.label = undefined;
26
+ this.helperMessage = undefined;
27
+ this.name = undefined;
28
+ this.required = false;
29
+ this.value = undefined;
30
+ }
31
+ classNames() {
32
+ const classNames = [];
33
+ if (this.invalid) {
34
+ classNames.push('is-invalid');
35
+ }
36
+ if (this.disabled) {
37
+ classNames.push('is-disabled');
38
+ }
39
+ return classNames.join(' ');
40
+ }
41
+ render() {
42
+ return (h(Host, { key: 'e2fb2e853619e2dbcee43ba6141d6782f521a92d', class: this.classNames() }, h("input", { key: '944f31d74b9d54fad8d39ec4221bf76cb717c352', "aria-describedby": assignDescription(this.componentId, this.invalid, this.helperMessage), "aria-invalid": this.invalid ? "true" : undefined, type: "radio", id: this.componentId, name: this.name, value: this.value, checked: this.checked, required: this.required, disabled: this.disabled, onChange: this.handleRadioChange }), h(PdsLabel, { key: '4da032a55ddb9e8f92ddde9a8e5238836345ccde', htmlFor: this.componentId, text: this.label }), this.helperMessage &&
43
+ h("div", { key: '529acc87ec6154e1d01877cff7f3977ed878c02b', class: 'pds-radio__message', id: messageId(this.componentId, 'helper') }, this.helperMessage), this.errorMessage &&
44
+ h("div", { key: 'f5850864b0fa702cb129c79bee3770ea768c614d', class: `pds-radio__message pds-radio__message--error`, id: messageId(this.componentId, 'error'), "aria-live": "assertive" }, this.errorMessage)));
45
+ }
46
+ static get style() { return PdsRadioStyle0; }
47
+ }, [2, "pds-radio", {
48
+ "checked": [4],
49
+ "disabled": [4],
50
+ "errorMessage": [1, "error-message"],
51
+ "invalid": [4],
52
+ "componentId": [1, "component-id"],
53
+ "label": [1],
54
+ "helperMessage": [1, "helper-message"],
55
+ "name": [1],
56
+ "required": [4],
57
+ "value": [1]
58
+ }]);
59
+ function defineCustomElement$1() {
60
+ if (typeof customElements === "undefined") {
61
+ return;
62
+ }
63
+ const components = ["pds-radio"];
64
+ components.forEach(tagName => { switch (tagName) {
65
+ case "pds-radio":
66
+ if (!customElements.get(tagName)) {
67
+ customElements.define(tagName, PdsRadio$1);
68
+ }
69
+ break;
70
+ } });
71
+ }
72
+
73
+ const PdsRadio = PdsRadio$1;
74
+ const defineCustomElement = defineCustomElement$1;
75
+
76
+ export { PdsRadio, defineCustomElement };
77
+
78
+ //# sourceMappingURL=pds-radio.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-radio.js","mappings":";;;AAAA,MAAM,WAAW,GAAG,skGAAskG,CAAC;AAC3lG,uBAAe,WAAW;;MCQbA,UAAQ;;;;;QA4DX,sBAAiB,GAAG,CAAC,CAAQ;YACnC,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,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC,CAAA;uBAhEiB,KAAK;wBAMJ,KAAK;;uBAWN,KAAK;;;;;wBA0BJ,KAAK;;;IAuBhB,UAAU;QAChB,MAAM,UAAU,GAAG,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SAC/B;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAChC;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9B;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAC5B,kFACoB,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,OAAO,EACZ,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,iBAAiB,GAChC,EACF,EAAC,QAAQ,qDAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,GAAI,EACxD,IAAI,CAAC,aAAa;YACjB,4DACE,KAAK,EAAE,oBAAoB,EAC3B,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAExC,IAAI,CAAC,aAAa,CACf,EAEP,IAAI,CAAC,YAAY;YAChB,4DACE,KAAK,EAAE,8CAA8C,EACrD,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,eAC9B,WAAW,IAEpB,IAAI,CAAC,YAAY,CACd,CAEH,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsRadio"],"sources":["src/components/pds-radio/pds-radio.scss?tag=pds-radio&encapsulation=scoped","src/components/pds-radio/pds-radio.tsx"],"sourcesContent":[":host {\n --border-interactive-default: var(--pine-border-width-thin) solid var( --pine-color-grey-400);\n --border-radius: 50%;\n\n --box-shadow-focus: 0 0 0 2px var(--color-focus);\n --box-shadow-focus-error: 0 0 0 2px var(--color-invalid-focus);\n\n --color: var(--pine-color-charcoal-200);\n --color-background: var(--pine-color-white);\n --color-background-hover: var(--pine-color-grey-100);\n --color-background-disabled: var(--pine-color-grey-200);\n --color-border-hover: var(--pine-color-grey-500);\n --color-border-disabled: var(--pine-color-grey-300);\n --color-checked: var(--pine-color-charcoal-500);\n --color-disabled: var(---pine-color-grey-500);\n --color-focus: var(--pine-color-blue-200);\n --color-invalid: var(--pine-color-red-300);\n --color-invalid-focus: var(--pine-color-red-200);\n\n --font-size: var(--pine-font-size-087);\n\n --sizing-check-size: 6px;\n --sizing-input-size: 16px;\n --sizing-margin-block-start: 6px;\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: var(--box-shadow-focus-error);\n outline: none;\n }\n }\n\n label,\n .pds-radio__message--error {\n color: var(--color-invalid);\n }\n}\n\ninput {\n appearance: none;\n border: var(--border-interactive-default);\n border-radius: var(--border-radius);\n height: var(--sizing-input-size);\n margin: 0;\n position: relative;\n width: var(--sizing-input-size);\n\n &:hover {\n background: var(--color-background-hover);\n border-color: var(--color-border-hover);\n }\n\n &:checked {\n background: var(--color-checked);\n border-color: var(--color-checked);\n\n &::after {\n background: var(--color-background);\n border-radius: 50%;\n content: \"\";\n display: block;\n height: var(--sizing-check-size);\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: var(--sizing-check-size);\n }\n }\n\n &:disabled {\n background: var(--color-background-disabled);\n border-color: var(--color-border-disabled);\n cursor: not-allowed;\n\n &:checked {\n background: var(--color-disabled);\n border-color: var(--color-border-disabled);\n\n &::after {\n border-color: var(--color-border-disabled);\n }\n }\n\n + label {\n color: var(--color-border-hover);\n cursor: not-allowed;\n }\n\n ~ .pds-radio__message {\n color: var(--color-disabled);\n }\n }\n\n &:focus-visible {\n box-shadow: var(--box-shadow-focus);\n outline: none;\n }\n\n}\n\nlabel {\n margin-inline-start: 10px;\n}\n\n.pds-radio__message {\n color: var(--color);\n font-size: var(--font-size);\n margin-block-start: var(--sizing-margin-block-start);\n margin-inline-start: 26px;\n width: 100%;\n}\n","import { Component, Host, h, Prop, 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-radio',\n styleUrl: 'pds-radio.scss',\n scoped: true,\n})\nexport class PdsRadio {\n /**\n * Determines whether or not the radio is checked.\n * @defaultValue false\n */\n @Prop() checked = false;\n\n /**\n * Determines whether or not the radio is disabled.\n * @defaultValue false\n */\n @Prop() disabled = false;\n\n /**\n * Displays message text describing an invalid state.\n */\n @Prop() errorMessage: string;\n\n /**\n * Determines whether or not the radio is invalid.\n * @defaultValue false\n */\n @Prop() invalid = false;\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 * String used for label text next to radio.\n */\n @Prop() label: string;\n\n /**\n * String used for helper message below radio.\n */\n @Prop() helperMessage: string;\n\n /**\n * String used for radio `name` attribute.\n */\n @Prop() name: string;\n\n /**\n * Determines whether or not the radio is required.\n * @defaultValue false\n */\n @Prop() required = false;\n\n /**\n * The value of the radio 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() pdsRadioChange: EventEmitter<boolean>;\n\n private handleRadioChange = (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.pdsRadioChange.emit(isChecked);\n }\n\n private classNames() {\n const classNames = [];\n\n if (this.invalid) {\n classNames.push('is-invalid');\n }\n if (this.disabled) {\n classNames.push('is-disabled');\n }\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=\"radio\"\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.handleRadioChange}\n />\n <PdsLabel htmlFor={this.componentId} text={this.label} />\n {this.helperMessage &&\n <div\n class={'pds-radio__message'}\n id={messageId(this.componentId, 'helper')}\n >\n {this.helperMessage}\n </div>\n }\n {this.errorMessage &&\n <div\n class={`pds-radio__message pds-radio__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 PdsRow extends Components.PdsRow, HTMLElement {}
4
+ export const PdsRow: {
5
+ prototype: PdsRow;
6
+ new (): PdsRow;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,72 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const pdsRowCss = ":host{--border-default:var(--pine-border-width-thin) solid var(--pine-color-grey-300);--row-gap-y:calc(var(--pine-spacing-250) / 2);--row-gap-x:10px;display:block;-webkit-margin-after:calc(var(--row-gap-y) * -1);margin-block-end:calc(var(--row-gap-y) * -1);-webkit-margin-before:calc(var(--row-gap-y) * -1);margin-block-start:calc(var(--row-gap-y) * -1);-webkit-margin-end:calc(var(--row-gap-x) * -0.5);margin-inline-end:calc(var(--row-gap-x) * -0.5);-webkit-margin-start:calc(var(--row-gap-x) * -0.5);margin-inline-start:calc(var(--row-gap-x) * -0.5)}.pds-row{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-margin-after:calc(var(--row-gap-y) * -1);margin-block-end:calc(var(--row-gap-y) * -1);-webkit-margin-before:calc(var(--row-gap-y) * -1);margin-block-start:calc(var(--row-gap-y) * -1);-webkit-margin-end:calc(var(--row-gap-x) * -1);margin-inline-end:calc(var(--row-gap-x) * -1);-webkit-margin-start:calc(var(--row-gap-x) * -1);margin-inline-start:calc(var(--row-gap-x) * -1)}.pds-row>*{-webkit-padding-after:calc(var(--row-gap-y));padding-block-end:calc(var(--row-gap-y));-webkit-padding-before:calc(var(--row-gap-y));padding-block-start:calc(var(--row-gap-y));-webkit-padding-end:calc(var(--row-gap-x));padding-inline-end:calc(var(--row-gap-x));-webkit-padding-start:calc(var(--row-gap-x));padding-inline-start:calc(var(--row-gap-x))}.pds-row--no-wrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.pds-row--border{border:var(--border-default)}.pds-justify-content-start{-ms-flex-pack:start;justify-content:start}.pds-justify-content-center{-ms-flex-pack:center;justify-content:center}.pds-justify-content-end{-ms-flex-pack:end;justify-content:end}.pds-justify-content-space-between{-ms-flex-pack:justify;justify-content:space-between}.pds-justify-content-space-around{-ms-flex-pack:distribute;justify-content:space-around}.pds-justify-content-space-evenly{-ms-flex-pack:space-evenly;justify-content:space-evenly}.pds-align-items-start{-ms-flex-align:start;align-items:start}.pds-align-items-center{-ms-flex-align:center;align-items:center}.pds-align-items-end{-ms-flex-align:end;align-items:end}.pds-align-items-stretch{-ms-flex-align:stretch;align-items:stretch}.pds-align-items-baseline{-ms-flex-align:baseline;align-items:baseline}";
4
+ const PdsRowStyle0 = pdsRowCss;
5
+
6
+ const PdsRow$1 = /*@__PURE__*/ proxyCustomElement(class PdsRow extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.colGapMap = {
11
+ none: '0',
12
+ xxs: '.25rem',
13
+ xs: '.5rem',
14
+ sm: '1rem',
15
+ md: '1.5rem',
16
+ lg: '2.25rem',
17
+ xl: '3rem',
18
+ xxl: '4rem',
19
+ };
20
+ this.alignItems = undefined;
21
+ this.border = false;
22
+ this.colGap = undefined;
23
+ this.componentId = undefined;
24
+ this.justifyContent = undefined;
25
+ this.minHeight = undefined;
26
+ this.noWrap = false;
27
+ }
28
+ render() {
29
+ const rowClasses = `
30
+ ${this.alignItems !== undefined && this.alignItems.trim() !== '' ? `pds-align-items-${this.alignItems}` : ''}
31
+ ${this.border ? 'pds-row--border' : ''}
32
+ ${this.justifyContent !== undefined && this.justifyContent.trim() !== '' ? `pds-justify-content-${this.justifyContent}` : ''}
33
+ ${this.noWrap ? 'pds-row--no-wrap' : ''}
34
+ `;
35
+ const rowInlineStyles = Object.assign(Object.assign({}, (this.colGap && {
36
+ '--row-gap-x': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',
37
+ '--row-gap-y': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',
38
+ })), (this.minHeight && {
39
+ 'min-height': this.minHeight,
40
+ }));
41
+ return h(Host, { key: '37046262dfc9a47b690bb5f642b718f298a7d180', class: `pds-row ${rowClasses}`, style: rowInlineStyles });
42
+ }
43
+ static get style() { return PdsRowStyle0; }
44
+ }, [0, "pds-row", {
45
+ "alignItems": [1, "align-items"],
46
+ "border": [4],
47
+ "colGap": [1, "col-gap"],
48
+ "componentId": [1, "component-id"],
49
+ "justifyContent": [1, "justify-content"],
50
+ "minHeight": [1, "min-height"],
51
+ "noWrap": [4, "no-wrap"]
52
+ }]);
53
+ function defineCustomElement$1() {
54
+ if (typeof customElements === "undefined") {
55
+ return;
56
+ }
57
+ const components = ["pds-row"];
58
+ components.forEach(tagName => { switch (tagName) {
59
+ case "pds-row":
60
+ if (!customElements.get(tagName)) {
61
+ customElements.define(tagName, PdsRow$1);
62
+ }
63
+ break;
64
+ } });
65
+ }
66
+
67
+ const PdsRow = PdsRow$1;
68
+ const defineCustomElement = defineCustomElement$1;
69
+
70
+ export { PdsRow, defineCustomElement };
71
+
72
+ //# sourceMappingURL=pds-row.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-row.js","mappings":";;AAAA,MAAM,SAAS,GAAG,wvEAAwvE,CAAC;AAC3wE,qBAAe,SAAS;;MCOXA,QAAM;;;;QAsCT,cAAS,GAA2C;YAC1D,IAAI,EAAE,GAAG;YACT,GAAG,EAAE,QAAQ;YACb,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,QAAQ;YACZ,EAAE,EAAE,SAAS;YACb,EAAE,EAAE,MAAM;YACV,GAAG,EAAE,MAAM;SACZ,CAAC;;sBArCgB,KAAK;;;;;sBA0BL,KAAK;;IAavB,MAAM;QACJ,MAAM,UAAU,GAAG;MACjB,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,mBAAmB,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;MAC1G,IAAI,CAAC,MAAM,GAAG,iBAAiB,GAAG,EAAE;MACpC,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,uBAAuB,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;MAC1H,IAAI,CAAC,MAAM,GAAG,kBAAkB,GAAG,EAAE;GACxC,CAAC;QAEA,MAAM,eAAe,oCACf,IAAI,CAAC,MAAM,IAAI;YACjB,aAAa,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACxG,aAAa,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;SACzG,KACG,IAAI,CAAC,SAAS,IAAI;YACpB,YAAY,EAAE,IAAI,CAAC,SAAS;SAC7B,EACF,CAAC;QAEF,OAAO,EAAC,IAAI,qDAAC,KAAK,EAAE,WAAW,UAAU,EAAE,EAAE,KAAK,EAAE,eAAe,GAAS,CAAC;KAC9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsRow"],"sources":["src/components/pds-row/pds-row.scss?tag=pds-row","src/components/pds-row/pds-row.tsx"],"sourcesContent":[":host {\n --border-default: var(--pine-border-width-thin) solid var(--pine-color-grey-300);\n --row-gap-y: calc(var(--pine-spacing-250) / 2);\n --row-gap-x: 10px;\n\n display: block;\n margin-block-end: calc(var(--row-gap-y) * -1);\n margin-block-start: calc(var(--row-gap-y) * -1);\n margin-inline-end: calc(var(--row-gap-x) * -0.5);\n margin-inline-start: calc(var(--row-gap-x) * -0.5);\n}\n\n.pds-row {\n display: flex;\n flex-grow: 1;\n flex-wrap: wrap;\n margin-block-end: calc(var(--row-gap-y) * -1);\n margin-block-start: calc(var(--row-gap-y) * -1);\n margin-inline-end: calc(var(--row-gap-x) * -1);\n margin-inline-start: calc(var(--row-gap-x) * -1);\n\n > * {\n padding-block-end: calc(var(--row-gap-y));\n padding-block-start: calc(var(--row-gap-y));\n padding-inline-end: calc(var(--row-gap-x));\n padding-inline-start: calc(var(--row-gap-x));\n }\n}\n\n.pds-row--no-wrap {\n flex-wrap: nowrap;\n}\n\n.pds-row--border {\n border: var(--border-default);\n}\n\n// Justify Content helpers\n.pds-justify-content-start {\n justify-content: start;\n}\n\n.pds-justify-content-center {\n justify-content: center;\n}\n\n.pds-justify-content-end {\n justify-content: end;\n}\n\n.pds-justify-content-space-between {\n justify-content: space-between;\n}\n\n.pds-justify-content-space-around {\n justify-content: space-around;\n}\n\n.pds-justify-content-space-evenly {\n justify-content: space-evenly;\n}\n\n// Align Items helpers\n.pds-align-items-start {\n align-items: start;\n}\n\n.pds-align-items-center {\n align-items: center;\n}\n\n.pds-align-items-end {\n align-items: end;\n}\n\n.pds-align-items-stretch {\n align-items: stretch;\n}\n\n.pds-align-items-baseline {\n align-items: baseline;\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\nimport { BoxTShirtSizeType } from '../../utils/types';\n\n@Component({\n tag: 'pds-row',\n styleUrl: 'pds-row.scss',\n})\nexport class PdsRow {\n /**\n * Defines the vertical alignment of the row items.\n * @defaultValue start\n */\n @Prop() alignItems?: `start` | `center` | `end` | `baseline` | `stretch`;\n\n /**\n * If `true`, the row will have a border.\n */\n @Prop() border? = false;\n\n /**\n * Defines the spacing between the row items.\n */\n @Prop() colGap?: BoxTShirtSizeType | null;\n\n /**\n * A unique identifier used for the underlying component `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Defines the horizontal alignment of the row items.\n * @defaultValue start\n */\n @Prop() justifyContent?: `start` | `center` | `end` | `space-between` | `space-around`;\n\n /**\n * The minimum height of the row. Used in conjunction with alignment props\n */\n @Prop() minHeight?: string;\n\n /**\n * If `true`, the row items will not wrap to the next line if horizontal space is not available.\n */\n @Prop() noWrap? = false;\n\n private colGapMap: { [key in BoxTShirtSizeType]: string } = {\n none: '0',\n xxs: '.25rem',\n xs: '.5rem',\n sm: '1rem',\n md: '1.5rem',\n lg: '2.25rem',\n xl: '3rem',\n xxl: '4rem',\n };\n\n render() {\n const rowClasses = `\n ${this.alignItems !== undefined && this.alignItems.trim() !== '' ? `pds-align-items-${this.alignItems}` : ''}\n ${this.border ? 'pds-row--border' : ''}\n ${this.justifyContent !== undefined && this.justifyContent.trim() !== '' ? `pds-justify-content-${this.justifyContent}` : ''}\n ${this.noWrap ? 'pds-row--no-wrap' : ''}\n `;\n\n const rowInlineStyles = {\n ...(this.colGap && {\n '--row-gap-x': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',\n '--row-gap-y': this.colGap !== undefined && this.colGap.trim() !== '' ? this.colGapMap[this.colGap] : '',\n }),\n ...(this.minHeight && {\n 'min-height': this.minHeight,\n }),\n };\n\n return <Host class={`pds-row ${rowClasses}`} style={rowInlineStyles}></Host>;\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PdsSortableItem extends Components.PdsSortableItem, HTMLElement {}
4
+ export const PdsSortableItem: {
5
+ prototype: PdsSortableItem;
6
+ new (): PdsSortableItem;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,58 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { h as handle } from './index2.js';
3
+ import { d as defineCustomElement$2 } from './pds-icon2.js';
4
+
5
+ const pdsSortableItemCss = ".pds-sortable-item.sc-pds-sortable-item-h{--border-radius:var(--pine-border-radius-125);--border-default:var(--pine-border-width-thin) solid var(--pine-color-grey-300);--box-shadow:var(--pine-box-shadow-lg);--color-background-default:var(--pine-color-white);--color-background-interactive:var(--pine-color-grey-200);--color-interactive-handle:var(--pine-color-blue-300);--spacing-margin-inline-end:var(--pine-spacing-300);--spacing-padding-block-xs:var(--pine-spacing-100);--spacing-padding-inline:var(--pine-spacing-300);--spacing-padding-inline-start:var(--pine-spacing-300);-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;padding-block:var(--spacing-padding-block-xs);padding-inline:var(--spacing-padding-inline)}.pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__actions.sc-pds-sortable-item{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-padding-start:var(--spacing-padding-inline-start);padding-inline-start:var(--spacing-padding-inline-start)}.pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{line-height:1;-webkit-margin-end:var(--spacing-margin-inline-end);margin-inline-end:var(--spacing-margin-inline-end)}.pds-sortable--bordered .pds-sortable-item.sc-pds-sortable-item-h:first-child{border-start-end-radius:var(--border-radius);border-start-start-radius:var(--border-radius)}.pds-sortable--bordered .pds-sortable-item.sc-pds-sortable-item-h:last-child{border-end-end-radius:var(--border-radius);border-end-start-radius:var(--border-radius)}.pds-sortable--divided .pds-sortable-item.sc-pds-sortable-item-h{-webkit-border-after:var(--border-default);border-block-end:var(--border-default)}.pds-sortable--divided .pds-sortable-item.sc-pds-sortable-item-h:last-child{-webkit-border-after:0;border-block-end:0}.pds-sortable--handle-type-row .pds-sortable-item.sc-pds-sortable-item-h{cursor:-webkit-grab;cursor:grab}.pds-sortable--handle-type-handle .pds-sortable-item.sc-pds-sortable-item-h .pds-sortable-item__handle.sc-pds-sortable-item{cursor:-webkit-grab;cursor:grab}.pds-sortable-item.sc-pds-sortable-item-h:hover{background-color:var(--color-background-interactive)}.pds-sortable-item.sc-pds-sortable-item-h:hover pds-icon.sc-pds-sortable-item{color:var(--color-interactive-handle)}.pds-sortable-item--drag.sc-pds-sortable-item-h{background-color:var(--color-background-default);border-radius:0;-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);opacity:1}.pds-sortable-item--ghost.sc-pds-sortable-item-h{background-color:var(--color-background-interactive);border-radius:0}";
6
+ const PdsSortableItemStyle0 = pdsSortableItemCss;
7
+
8
+ const PdsSortableItem$1 = /*@__PURE__*/ proxyCustomElement(class PdsSortableItem extends HTMLElement {
9
+ constructor() {
10
+ super();
11
+ this.__registerHost();
12
+ this.enableActions = false;
13
+ this.componentId = undefined;
14
+ this.showHandle = false;
15
+ }
16
+ componentWillRender() {
17
+ // When the parent sortable has a type of 'handle', the sortable items
18
+ // will automatically set showHandle to 'true'.
19
+ this.sortableRef = this.el.closest('pds-sortable');
20
+ if (this.sortableRef && this.sortableRef.handleType === 'handle') {
21
+ this.showHandle = true;
22
+ }
23
+ }
24
+ render() {
25
+ return (h(Host, { key: '61c57ebc93b66e4c8777fe52163c2c7f600361a5', class: "pds-sortable-item", id: this.componentId }, this.showHandle && (h("div", { key: 'f2bafa535db6cfa07113bd8f9a32d5b7a0bc694d', class: "pds-sortable-item__handle" }, h("pds-icon", { key: '9ead72e13f881f9cdbe4cb910de09173c42c96c5', icon: handle }))), h("slot", { key: '7322ce5649cd2f7765d9275ec47317570854e5f9' }), this.enableActions && (h("div", { key: '709a91c4160407b491fb7ed44c7c7c0a9e980262', class: "pds-sortable-item__actions" }, h("slot", { key: '280ed68aec92927b2a79581f56d3905188a27f1a', name: "sortable-item-actions" })))));
26
+ }
27
+ get el() { return this; }
28
+ static get style() { return PdsSortableItemStyle0; }
29
+ }, [6, "pds-sortable-item", {
30
+ "enableActions": [4, "enable-actions"],
31
+ "componentId": [1, "component-id"],
32
+ "showHandle": [1028, "show-handle"]
33
+ }]);
34
+ function defineCustomElement$1() {
35
+ if (typeof customElements === "undefined") {
36
+ return;
37
+ }
38
+ const components = ["pds-sortable-item", "pds-icon"];
39
+ components.forEach(tagName => { switch (tagName) {
40
+ case "pds-sortable-item":
41
+ if (!customElements.get(tagName)) {
42
+ customElements.define(tagName, PdsSortableItem$1);
43
+ }
44
+ break;
45
+ case "pds-icon":
46
+ if (!customElements.get(tagName)) {
47
+ defineCustomElement$2();
48
+ }
49
+ break;
50
+ } });
51
+ }
52
+
53
+ const PdsSortableItem = PdsSortableItem$1;
54
+ const defineCustomElement = defineCustomElement$1;
55
+
56
+ export { PdsSortableItem, defineCustomElement };
57
+
58
+ //# sourceMappingURL=pds-sortable-item.js.map
@@ -0,0 +1 @@
1
+ {"file":"pds-sortable-item.js","mappings":";;;;AAAA,MAAM,kBAAkB,GAAG,iiFAAiiF,CAAC;AAC7jF,8BAAe,kBAAkB;;MCUpBA,iBAAe;;;;6BAOF,KAAK;;0BAWS,KAAK;;IAE3C,mBAAmB;;;QAGjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAA2B,CAAC;QAE7E,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,QAAQ,EAAE;YAChE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;SACxB;KACF;IAED,MAAM;QACJ,QACE,EAAC,IAAI,qDAAC,KAAK,EAAC,mBAAmB,EAAC,EAAE,EAAE,IAAI,CAAC,WAAW,IACjD,IAAI,CAAC,UAAU,KACd,4DAAK,KAAK,EAAC,2BAA2B,IACpC,iEAAU,IAAI,EAAEC,MAAU,GAAa,CACnC,CACP,EACD,8DAAa,EACZ,IAAI,CAAC,aAAa,KACjB,4DAAK,KAAK,EAAC,4BAA4B,IACrC,6DAAM,IAAI,EAAC,uBAAuB,GAAG,CACjC,CACP,CACI,EACP;KACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["PdsSortableItem","handleIcon"],"sources":["src/components/pds-sortable/pds-sortable-item/pds-sortable-item.scss?tag=pds-sortable-item&encapsulation=scoped","src/components/pds-sortable/pds-sortable-item/pds-sortable-item.tsx"],"sourcesContent":[":host(.pds-sortable-item) {\n --border-radius: var(--pine-border-radius-125);\n\n --border-default: var(--pine-border-width-thin) solid var(--pine-color-grey-300);\n\n --box-shadow: var(--pine-box-shadow-lg);\n\n --color-background-default: var(--pine-color-white);\n --color-background-interactive: var(--pine-color-grey-200);\n --color-interactive-handle: var(--pine-color-blue-300);\n\n --spacing-margin-inline-end: var(--pine-spacing-300);\n --spacing-padding-block-xs: var(--pine-spacing-100);\n --spacing-padding-inline: var(--pine-spacing-300);\n --spacing-padding-inline-start: var(--pine-spacing-300);\n\n align-items: center;\n display: flex;\n padding-block: var(--spacing-padding-block-xs);\n padding-inline: var(--spacing-padding-inline);\n\n .pds-sortable-item__actions {\n margin-inline-start: auto;\n padding-inline-start: var(--spacing-padding-inline-start);\n }\n\n .pds-sortable-item__handle {\n line-height: 1;\n margin-inline-end: var(--spacing-margin-inline-end);\n }\n\n // styles when sortable is bordered\n .pds-sortable--bordered & {\n &:first-child {\n border-start-end-radius: var(--border-radius);\n border-start-start-radius: var(--border-radius);\n }\n\n &:last-child {\n border-end-end-radius: var(--border-radius);\n border-end-start-radius: var(--border-radius);\n }\n }\n\n // styles when sortable is divided\n .pds-sortable--divided & {\n border-block-end: var(--border-default);\n\n &:last-child {\n border-block-end: 0;\n }\n }\n\n // cursor styles based on handle-type\n .pds-sortable--handle-type-row & {\n cursor: grab;\n }\n\n .pds-sortable--handle-type-handle & {\n .pds-sortable-item__handle {\n cursor: grab;\n }\n }\n}\n\n:host(.pds-sortable-item):hover {\n background-color: var(--color-background-interactive);\n\n pds-icon {\n color: var(--color-interactive-handle)\n }\n}\n\n:host(.pds-sortable-item--drag) {\n background-color: var(--color-background-default);\n border-radius: 0;\n box-shadow: var(--box-shadow);\n opacity: 1;\n}\n\n:host(.pds-sortable-item--ghost) {\n background-color: var(--color-background-interactive);\n border-radius: 0;\n}\n","import { Component, Element, Host, h, Prop } from '@stencil/core';\n\nimport { handle as handleIcon } from '@pine-ds/icons/icons';\n/**\n * @slot sortable-item-actions - Content is placed within the `pds-sortable-item__actions` element as children. This slot is only rendered if `actions` is set to `true`.\n */\n@Component({\n tag: 'pds-sortable-item',\n styleUrl: 'pds-sortable-item.scss',\n scoped: true,\n})\nexport class PdsSortableItem {\n @Element() el: HTMLPdsSortableItemElement;\n sortableRef: HTMLPdsSortableElement;\n /**\n * Determines whether `sortable-item-actions` slot should be enabled.\n * @defaultValue false\n */\n @Prop() enableActions = false;\n\n /**\n * A unique identifier used for the sortable item `id` attribute.\n */\n @Prop() componentId: string;\n\n /**\n * Determines whether `sortable-item` should have a handle.\n * @defaultValue false\n */\n @Prop({ mutable: true }) showHandle = false;\n\n componentWillRender() {\n // When the parent sortable has a type of 'handle', the sortable items\n // will automatically set showHandle to 'true'.\n this.sortableRef = this.el.closest('pds-sortable') as HTMLPdsSortableElement;\n\n if (this.sortableRef && this.sortableRef.handleType === 'handle') {\n this.showHandle = true;\n }\n }\n\n render() {\n return (\n <Host class=\"pds-sortable-item\" id={this.componentId}>\n {this.showHandle && (\n <div class=\"pds-sortable-item__handle\">\n <pds-icon icon={handleIcon}></pds-icon>\n </div>\n )}\n <slot></slot>\n {this.enableActions && (\n <div class=\"pds-sortable-item__actions\">\n <slot name=\"sortable-item-actions\" />\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 PdsSortable extends Components.PdsSortable, HTMLElement {}
4
+ export const PdsSortable: {
5
+ prototype: PdsSortable;
6
+ new (): PdsSortable;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;