@xplortech/apollo-core 0.0.7 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +42 -1
  3. package/build/style.css +972 -372
  4. package/dist/apollo-core/apollo-core.css +2127 -9
  5. package/dist/apollo-core/apollo-core.esm.js +125 -1
  6. package/dist/apollo-core/app-globals-0f993ce5.js +3 -0
  7. package/dist/apollo-core/css-shim-bbdf0cc6.js +4 -0
  8. package/dist/apollo-core/dom-1f98a75f.js +73 -0
  9. package/dist/apollo-core/index-912d1a21.js +584 -0
  10. package/dist/apollo-core/index-f313719f.js +2938 -0
  11. package/dist/apollo-core/index.esm.js +1 -0
  12. package/dist/apollo-core/p-00996870.js +1 -0
  13. package/dist/apollo-core/p-21872e0f.entry.js +1 -0
  14. package/dist/apollo-core/{p-1fc2ec24.entry.js → p-6c4f9227.entry.js} +4 -3
  15. package/dist/apollo-core/p-d8ea7d80.entry.js +1 -0
  16. package/dist/apollo-core/shadow-css-67b66845.js +389 -0
  17. package/dist/apollo-core/xpl-avatar.entry.js +19 -0
  18. package/dist/apollo-core/xpl-badge.entry.js +17 -0
  19. package/dist/apollo-core/xpl-breadcrumb-item.entry.js +19 -0
  20. package/dist/apollo-core/xpl-breadcrumbs.entry.js +14 -0
  21. package/dist/{esm/xpl-button_3.entry.js → apollo-core/xpl-button.entry.js} +15 -152
  22. package/dist/apollo-core/xpl-checkbox.entry.js +14 -0
  23. package/dist/apollo-core/xpl-choicelist.entry.js +12 -0
  24. package/dist/apollo-core/xpl-pagination.entry.js +72 -0
  25. package/dist/apollo-core/xpl-radio.entry.js +14 -0
  26. package/dist/apollo-core/xpl-table.entry.js +85 -0
  27. package/dist/apollo-core/xpl-utility-bar.entry.js +12 -0
  28. package/dist/cjs/apollo-core.cjs.js +113 -5
  29. package/dist/cjs/app-globals-3a1e7e63.js +5 -0
  30. package/dist/cjs/css-shim-a7379e2b.js +6 -0
  31. package/dist/cjs/dom-3e7d9c3b.js +75 -0
  32. package/dist/cjs/index-318d5fc7.js +586 -0
  33. package/dist/cjs/{index-d0d9877d.js → index-716d8f57.js} +106 -29
  34. package/dist/cjs/index-fca88002.js +2973 -0
  35. package/dist/cjs/index.cjs.js +1 -0
  36. package/dist/cjs/loader.cjs.js +19 -3
  37. package/dist/cjs/shadow-css-09555044.js +391 -0
  38. package/dist/cjs/xpl-avatar.cjs.entry.js +23 -0
  39. package/dist/cjs/xpl-avatar_9.cjs.entry.js +16327 -0
  40. package/dist/cjs/xpl-badge.cjs.entry.js +21 -0
  41. package/dist/cjs/xpl-breadcrumb-item.cjs.entry.js +23 -0
  42. package/dist/cjs/xpl-breadcrumbs.cjs.entry.js +18 -0
  43. package/dist/cjs/{xpl-button_3.cjs.entry.js → xpl-button.cjs.entry.js} +14 -153
  44. package/dist/cjs/xpl-checkbox.cjs.entry.js +18 -0
  45. package/dist/cjs/xpl-choicelist.cjs.entry.js +16 -0
  46. package/dist/cjs/xpl-pagination.cjs.entry.js +76 -0
  47. package/dist/cjs/xpl-radio.cjs.entry.js +18 -0
  48. package/dist/cjs/xpl-table.cjs.entry.js +89 -0
  49. package/dist/cjs/xpl-utility-bar.cjs.entry.js +16 -0
  50. package/dist/collection/collection-manifest.json +10 -2
  51. package/dist/collection/components/xpl-avatar/xpl-avatar.js +158 -0
  52. package/dist/collection/components/xpl-badge/xpl-badge.js +50 -0
  53. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +19 -0
  54. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +12 -0
  55. package/dist/collection/components/xpl-button/xpl-button.js +37 -5
  56. package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +139 -0
  57. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +9 -0
  58. package/dist/collection/components/xpl-radio/xpl-radio.js +122 -0
  59. package/dist/collection/components/xpl-table/xpl-table.js +9 -5
  60. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +10 -0
  61. package/dist/custom-elements/index.d.ts +36 -0
  62. package/dist/custom-elements/index.js +733 -11
  63. package/dist/esm/apollo-core.js +113 -5
  64. package/dist/esm/app-globals-0f993ce5.js +3 -0
  65. package/dist/esm/css-shim-bbdf0cc6.js +4 -0
  66. package/dist/esm/dom-1f98a75f.js +73 -0
  67. package/dist/esm/{index-252a5f91.js → index-4c8962a5.js} +106 -29
  68. package/dist/esm/index-912d1a21.js +584 -0
  69. package/dist/esm/index-f313719f.js +2938 -0
  70. package/dist/esm/index.js +1 -1
  71. package/dist/esm/loader.js +19 -3
  72. package/dist/esm/shadow-css-67b66845.js +389 -0
  73. package/dist/esm/xpl-avatar.entry.js +19 -0
  74. package/dist/esm/xpl-avatar_9.entry.js +16315 -0
  75. package/dist/esm/xpl-badge.entry.js +17 -0
  76. package/dist/esm/xpl-breadcrumb-item.entry.js +19 -0
  77. package/dist/esm/xpl-breadcrumbs.entry.js +14 -0
  78. package/dist/esm/xpl-button.entry.js +16086 -0
  79. package/dist/esm/xpl-checkbox.entry.js +14 -0
  80. package/dist/esm/xpl-choicelist.entry.js +12 -0
  81. package/dist/esm/xpl-pagination.entry.js +72 -0
  82. package/dist/esm/xpl-radio.entry.js +14 -0
  83. package/dist/esm/xpl-table.entry.js +85 -0
  84. package/dist/esm/xpl-utility-bar.entry.js +12 -0
  85. package/dist/stories/avatar.stories.js +173 -0
  86. package/dist/stories/badge.stories.js +48 -0
  87. package/dist/stories/breadcrumbs.stories.js +115 -0
  88. package/dist/stories/button.stories.js +98 -0
  89. package/dist/stories/checkbox.stories.js +66 -0
  90. package/dist/stories/pagination.stories.js +84 -0
  91. package/dist/stories/radio.stories.js +56 -0
  92. package/dist/stories/table.stories.js +107 -0
  93. package/dist/stories/tabs.stories.js +24 -0
  94. package/dist/stories/utility-bar.stories.js +94 -0
  95. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/avatar.stories.d.ts +91 -0
  96. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/badge.stories.d.ts +48 -0
  97. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/breadcrumbs.stories.d.ts +53 -0
  98. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/button.stories.d.ts +74 -0
  99. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/checkbox.stories.d.ts +64 -0
  100. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/pagination.stories.d.ts +0 -0
  101. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/radio.stories.d.ts +56 -0
  102. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/table.stories.d.ts +50 -0
  103. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/tabs.stories.d.ts +0 -0
  104. package/dist/types/Users/fernandogelin/Projects/apollo/.stencil/stories/utility-bar.stories.d.ts +20 -0
  105. package/dist/types/components/xpl-avatar/xpl-avatar.d.ts +11 -0
  106. package/dist/types/components/xpl-badge/xpl-badge.d.ts +5 -0
  107. package/dist/types/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.d.ts +4 -0
  108. package/dist/types/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.d.ts +3 -0
  109. package/dist/types/{.stencil → components}/xpl-button/xpl-button.d.ts +3 -1
  110. package/dist/types/components/xpl-checkbox/xpl-checkbox.d.ts +11 -0
  111. package/dist/types/components/xpl-choicelist/xpl-choicelist.d.ts +3 -0
  112. package/dist/types/components/xpl-radio/xpl-radio.d.ts +10 -0
  113. package/dist/types/{.stencil → components}/xpl-table/xpl-table.d.ts +2 -2
  114. package/dist/types/components/xpl-utility-bar/xpl-utility-bar.d.ts +3 -0
  115. package/dist/types/components.d.ts +132 -4
  116. package/dist/types/stencil-public-runtime.d.ts +183 -182
  117. package/package.json +42 -13
  118. package/dist/apollo-core/p-3f7da885.js +0 -1
  119. /package/dist/types/{.stencil → components}/xpl-pagination/xpl-pagination.d.ts +0 -0
@@ -0,0 +1,158 @@
1
+ import { Component, Host, h, Prop } from "@stencil/core";
2
+ export class XplAvatar {
3
+ constructor() {
4
+ this.disabled = false;
5
+ }
6
+ render() {
7
+ let className = "xpl-avatar";
8
+ if (this.size)
9
+ className += ` xpl-avatar--${this.size}`;
10
+ if (this.color)
11
+ className += ` xpl-avatar--${this.color}`;
12
+ const inner = (h("div", null,
13
+ this.src ? (h("img", { alt: this.name, src: this.src })) : (h("div", { class: "xpl-avatar__placeholder" },
14
+ h("slot", null))),
15
+ this.status && h("div", { class: `xpl-avatar__dot--${this.status}` })));
16
+ return (h(Host, null, this.href && !this.disabled ? (h("a", { href: this.href, class: className, target: this.target }, inner)) : this.href && this.disabled ? (h("div", { class: className + " xpl-avatar--disabled" }, inner)) : (h("div", { class: className }, inner))));
17
+ }
18
+ static get is() { return "xpl-avatar"; }
19
+ static get properties() { return {
20
+ "color": {
21
+ "type": "string",
22
+ "mutable": false,
23
+ "complexType": {
24
+ "original": "\"green\" | \"yellow\" | \"pink\" | \"primary\" | \"secondary\"",
25
+ "resolved": "\"green\" | \"pink\" | \"primary\" | \"secondary\" | \"yellow\"",
26
+ "references": {}
27
+ },
28
+ "required": false,
29
+ "optional": true,
30
+ "docs": {
31
+ "tags": [],
32
+ "text": ""
33
+ },
34
+ "attribute": "color",
35
+ "reflect": false
36
+ },
37
+ "disabled": {
38
+ "type": "boolean",
39
+ "mutable": false,
40
+ "complexType": {
41
+ "original": "boolean",
42
+ "resolved": "boolean",
43
+ "references": {}
44
+ },
45
+ "required": false,
46
+ "optional": true,
47
+ "docs": {
48
+ "tags": [],
49
+ "text": ""
50
+ },
51
+ "attribute": "disabled",
52
+ "reflect": false,
53
+ "defaultValue": "false"
54
+ },
55
+ "href": {
56
+ "type": "string",
57
+ "mutable": false,
58
+ "complexType": {
59
+ "original": "string",
60
+ "resolved": "string",
61
+ "references": {}
62
+ },
63
+ "required": false,
64
+ "optional": true,
65
+ "docs": {
66
+ "tags": [],
67
+ "text": ""
68
+ },
69
+ "attribute": "href",
70
+ "reflect": false
71
+ },
72
+ "name": {
73
+ "type": "string",
74
+ "mutable": false,
75
+ "complexType": {
76
+ "original": "string",
77
+ "resolved": "string",
78
+ "references": {}
79
+ },
80
+ "required": false,
81
+ "optional": true,
82
+ "docs": {
83
+ "tags": [],
84
+ "text": ""
85
+ },
86
+ "attribute": "name",
87
+ "reflect": false
88
+ },
89
+ "size": {
90
+ "type": "string",
91
+ "mutable": false,
92
+ "complexType": {
93
+ "original": "\"md\" | \"sm\"",
94
+ "resolved": "\"md\" | \"sm\"",
95
+ "references": {}
96
+ },
97
+ "required": false,
98
+ "optional": true,
99
+ "docs": {
100
+ "tags": [],
101
+ "text": ""
102
+ },
103
+ "attribute": "size",
104
+ "reflect": false
105
+ },
106
+ "src": {
107
+ "type": "string",
108
+ "mutable": false,
109
+ "complexType": {
110
+ "original": "string",
111
+ "resolved": "string",
112
+ "references": {}
113
+ },
114
+ "required": false,
115
+ "optional": true,
116
+ "docs": {
117
+ "tags": [],
118
+ "text": ""
119
+ },
120
+ "attribute": "src",
121
+ "reflect": false
122
+ },
123
+ "status": {
124
+ "type": "string",
125
+ "mutable": false,
126
+ "complexType": {
127
+ "original": "\"active\" | \"warning\" | \"inactive\"",
128
+ "resolved": "\"active\" | \"inactive\" | \"warning\"",
129
+ "references": {}
130
+ },
131
+ "required": false,
132
+ "optional": true,
133
+ "docs": {
134
+ "tags": [],
135
+ "text": ""
136
+ },
137
+ "attribute": "status",
138
+ "reflect": false
139
+ },
140
+ "target": {
141
+ "type": "string",
142
+ "mutable": false,
143
+ "complexType": {
144
+ "original": "string",
145
+ "resolved": "string",
146
+ "references": {}
147
+ },
148
+ "required": false,
149
+ "optional": true,
150
+ "docs": {
151
+ "tags": [],
152
+ "text": ""
153
+ },
154
+ "attribute": "target",
155
+ "reflect": false
156
+ }
157
+ }; }
158
+ }
@@ -0,0 +1,50 @@
1
+ import { Component, Host, h, Prop } from "@stencil/core";
2
+ export class XplBadge {
3
+ render() {
4
+ let className = "xpl-badge";
5
+ if (this.dot)
6
+ className += " xpl-badge--dot";
7
+ if (this.variant)
8
+ className += " xpl-badge--" + this.variant;
9
+ return (h(Host, null,
10
+ h("div", { class: className },
11
+ h("slot", null))));
12
+ }
13
+ static get is() { return "xpl-badge"; }
14
+ static get properties() { return {
15
+ "dot": {
16
+ "type": "boolean",
17
+ "mutable": false,
18
+ "complexType": {
19
+ "original": "boolean",
20
+ "resolved": "boolean",
21
+ "references": {}
22
+ },
23
+ "required": false,
24
+ "optional": true,
25
+ "docs": {
26
+ "tags": [],
27
+ "text": ""
28
+ },
29
+ "attribute": "dot",
30
+ "reflect": false
31
+ },
32
+ "variant": {
33
+ "type": "string",
34
+ "mutable": false,
35
+ "complexType": {
36
+ "original": "\"success\" | \"warning\" | \"inactive\" | \"error\"",
37
+ "resolved": "\"error\" | \"inactive\" | \"success\" | \"warning\"",
38
+ "references": {}
39
+ },
40
+ "required": false,
41
+ "optional": true,
42
+ "docs": {
43
+ "tags": [],
44
+ "text": ""
45
+ },
46
+ "attribute": "variant",
47
+ "reflect": false
48
+ }
49
+ }; }
50
+ }
@@ -0,0 +1,19 @@
1
+ import { Component, Host, h } from '@stencil/core';
2
+ export class XplBreadcrumbItem {
3
+ constructor() {
4
+ // This is temporary as we still don't have a xpl-icon component. When that's created we should update this code.
5
+ this.chevron = `<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="chevron-right" class="svg-inline--fa fa-chevron-right fa-w-10" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512">
6
+ <path fill="currentColor" d="M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z"></path>
7
+ </svg>
8
+ `;
9
+ }
10
+ render() {
11
+ return (h(Host, { class: "xpl-breadcrumb-item", role: "listitem" },
12
+ h("li", { role: "none" },
13
+ h("slot", null)),
14
+ h("span", { innerHTML: `${this.chevron}` })));
15
+ }
16
+ ;
17
+ static get is() { return "xpl-breadcrumb-item"; }
18
+ }
19
+ ;
@@ -0,0 +1,12 @@
1
+ import { Component, Host, h } from '@stencil/core';
2
+ export class XplBreadcrumbs {
3
+ render() {
4
+ return (h(Host, null,
5
+ h("nav", { class: "xpl-breadcrumbs", "aria-label": "Breadcrumb" },
6
+ h("ol", { role: "list" },
7
+ h("slot", null)))));
8
+ }
9
+ ;
10
+ static get is() { return "xpl-breadcrumbs"; }
11
+ }
12
+ ;
@@ -3,7 +3,6 @@ import "../../../font-awesome/fontawesome";
3
3
  import "../../../font-awesome/regular";
4
4
  export class XplButton {
5
5
  constructor() {
6
- this.disabled = undefined;
7
6
  this.size = "default";
8
7
  this.variant = "primary";
9
8
  }
@@ -31,7 +30,7 @@ export class XplButton {
31
30
  !this.iconTrailing && icon,
32
31
  this.iconOnly ? (h("span", { class: "sr-only" },
33
32
  h("slot", null))) : (h("slot", null)),
34
- this.iconTrailing && icon)) : (h("button", { class: className, disabled: this.disabled, type: this.type },
33
+ this.iconTrailing && icon)) : (h("button", { class: className, disabled: this.disabled, name: this.name, type: this.type, value: this.value },
35
34
  !this.iconTrailing && icon,
36
35
  this.iconOnly ? (h("span", { class: "sr-only" },
37
36
  h("slot", null))) : (h("slot", null)),
@@ -54,8 +53,7 @@ export class XplButton {
54
53
  "text": ""
55
54
  },
56
55
  "attribute": "disabled",
57
- "reflect": false,
58
- "defaultValue": "undefined"
56
+ "reflect": false
59
57
  },
60
58
  "href": {
61
59
  "type": "string",
@@ -125,6 +123,23 @@ export class XplButton {
125
123
  "attribute": "icon-trailing",
126
124
  "reflect": false
127
125
  },
126
+ "name": {
127
+ "type": "string",
128
+ "mutable": false,
129
+ "complexType": {
130
+ "original": "string",
131
+ "resolved": "string",
132
+ "references": {}
133
+ },
134
+ "required": false,
135
+ "optional": true,
136
+ "docs": {
137
+ "tags": [],
138
+ "text": ""
139
+ },
140
+ "attribute": "name",
141
+ "reflect": false
142
+ },
128
143
  "size": {
129
144
  "type": "string",
130
145
  "mutable": false,
@@ -144,6 +159,23 @@ export class XplButton {
144
159
  "defaultValue": "\"default\""
145
160
  },
146
161
  "type": {
162
+ "type": "string",
163
+ "mutable": false,
164
+ "complexType": {
165
+ "original": "\"submit\" | \"reset\" | \"button\"",
166
+ "resolved": "\"button\" | \"reset\" | \"submit\"",
167
+ "references": {}
168
+ },
169
+ "required": false,
170
+ "optional": true,
171
+ "docs": {
172
+ "tags": [],
173
+ "text": ""
174
+ },
175
+ "attribute": "type",
176
+ "reflect": false
177
+ },
178
+ "value": {
147
179
  "type": "string",
148
180
  "mutable": false,
149
181
  "complexType": {
@@ -157,7 +189,7 @@ export class XplButton {
157
189
  "tags": [],
158
190
  "text": ""
159
191
  },
160
- "attribute": "type",
192
+ "attribute": "value",
161
193
  "reflect": false
162
194
  },
163
195
  "variant": {
@@ -0,0 +1,139 @@
1
+ import { Component, Host, h, Prop, State } from "@stencil/core";
2
+ import { v4 as uuid } from "uuid";
3
+ export class XplCheckbox {
4
+ constructor() {
5
+ this.id = uuid();
6
+ }
7
+ render() {
8
+ return (h(Host, { class: "xpl-checkbox-container" },
9
+ h("input", { class: "xpl-checkbox", type: "checkbox", checked: this.checked, disabled: this.disabled, id: this.id, indeterminate: this.indeterminate, name: this.name, required: this.required, value: this.value }),
10
+ h("label", { htmlFor: this.id },
11
+ h("slot", null),
12
+ this.description && h("small", null, this.description))));
13
+ }
14
+ static get is() { return "xpl-checkbox"; }
15
+ static get properties() { return {
16
+ "checked": {
17
+ "type": "boolean",
18
+ "mutable": false,
19
+ "complexType": {
20
+ "original": "boolean",
21
+ "resolved": "boolean",
22
+ "references": {}
23
+ },
24
+ "required": false,
25
+ "optional": true,
26
+ "docs": {
27
+ "tags": [],
28
+ "text": ""
29
+ },
30
+ "attribute": "checked",
31
+ "reflect": false
32
+ },
33
+ "description": {
34
+ "type": "string",
35
+ "mutable": false,
36
+ "complexType": {
37
+ "original": "string",
38
+ "resolved": "string",
39
+ "references": {}
40
+ },
41
+ "required": false,
42
+ "optional": true,
43
+ "docs": {
44
+ "tags": [],
45
+ "text": ""
46
+ },
47
+ "attribute": "description",
48
+ "reflect": false
49
+ },
50
+ "disabled": {
51
+ "type": "boolean",
52
+ "mutable": false,
53
+ "complexType": {
54
+ "original": "boolean",
55
+ "resolved": "boolean",
56
+ "references": {}
57
+ },
58
+ "required": false,
59
+ "optional": true,
60
+ "docs": {
61
+ "tags": [],
62
+ "text": ""
63
+ },
64
+ "attribute": "disabled",
65
+ "reflect": false
66
+ },
67
+ "indeterminate": {
68
+ "type": "boolean",
69
+ "mutable": false,
70
+ "complexType": {
71
+ "original": "boolean",
72
+ "resolved": "boolean",
73
+ "references": {}
74
+ },
75
+ "required": false,
76
+ "optional": true,
77
+ "docs": {
78
+ "tags": [],
79
+ "text": ""
80
+ },
81
+ "attribute": "indeterminate",
82
+ "reflect": false
83
+ },
84
+ "name": {
85
+ "type": "string",
86
+ "mutable": false,
87
+ "complexType": {
88
+ "original": "string",
89
+ "resolved": "string",
90
+ "references": {}
91
+ },
92
+ "required": false,
93
+ "optional": true,
94
+ "docs": {
95
+ "tags": [],
96
+ "text": ""
97
+ },
98
+ "attribute": "name",
99
+ "reflect": false
100
+ },
101
+ "required": {
102
+ "type": "boolean",
103
+ "mutable": false,
104
+ "complexType": {
105
+ "original": "boolean",
106
+ "resolved": "boolean",
107
+ "references": {}
108
+ },
109
+ "required": false,
110
+ "optional": true,
111
+ "docs": {
112
+ "tags": [],
113
+ "text": ""
114
+ },
115
+ "attribute": "required",
116
+ "reflect": false
117
+ },
118
+ "value": {
119
+ "type": "string",
120
+ "mutable": false,
121
+ "complexType": {
122
+ "original": "string",
123
+ "resolved": "string",
124
+ "references": {}
125
+ },
126
+ "required": false,
127
+ "optional": true,
128
+ "docs": {
129
+ "tags": [],
130
+ "text": ""
131
+ },
132
+ "attribute": "value",
133
+ "reflect": false
134
+ }
135
+ }; }
136
+ static get states() { return {
137
+ "id": {}
138
+ }; }
139
+ }
@@ -0,0 +1,9 @@
1
+ import { Component, Host, h } from "@stencil/core";
2
+ export class XplChoicelist {
3
+ render() {
4
+ return (h(Host, null,
5
+ h("slot", null)));
6
+ }
7
+ static get is() { return "xpl-choicelist"; }
8
+ static get encapsulation() { return "shadow"; }
9
+ }
@@ -0,0 +1,122 @@
1
+ import { Component, Host, h, Prop, State } from "@stencil/core";
2
+ import { v4 as uuid } from "uuid";
3
+ export class XplRadio {
4
+ constructor() {
5
+ this.id = uuid();
6
+ }
7
+ render() {
8
+ return (h(Host, { class: "xpl-radio-container" },
9
+ h("input", { class: "xpl-radio", type: "radio", checked: this.checked, disabled: this.disabled, id: this.id, name: this.name, required: this.required, value: this.value }),
10
+ h("label", { htmlFor: this.id },
11
+ h("slot", null),
12
+ this.description && h("small", null, this.description))));
13
+ }
14
+ static get is() { return "xpl-radio"; }
15
+ static get properties() { return {
16
+ "checked": {
17
+ "type": "boolean",
18
+ "mutable": false,
19
+ "complexType": {
20
+ "original": "boolean",
21
+ "resolved": "boolean",
22
+ "references": {}
23
+ },
24
+ "required": false,
25
+ "optional": true,
26
+ "docs": {
27
+ "tags": [],
28
+ "text": ""
29
+ },
30
+ "attribute": "checked",
31
+ "reflect": false
32
+ },
33
+ "description": {
34
+ "type": "string",
35
+ "mutable": false,
36
+ "complexType": {
37
+ "original": "string",
38
+ "resolved": "string",
39
+ "references": {}
40
+ },
41
+ "required": false,
42
+ "optional": true,
43
+ "docs": {
44
+ "tags": [],
45
+ "text": ""
46
+ },
47
+ "attribute": "description",
48
+ "reflect": false
49
+ },
50
+ "disabled": {
51
+ "type": "boolean",
52
+ "mutable": false,
53
+ "complexType": {
54
+ "original": "boolean",
55
+ "resolved": "boolean",
56
+ "references": {}
57
+ },
58
+ "required": false,
59
+ "optional": true,
60
+ "docs": {
61
+ "tags": [],
62
+ "text": ""
63
+ },
64
+ "attribute": "disabled",
65
+ "reflect": false
66
+ },
67
+ "name": {
68
+ "type": "string",
69
+ "mutable": false,
70
+ "complexType": {
71
+ "original": "string",
72
+ "resolved": "string",
73
+ "references": {}
74
+ },
75
+ "required": false,
76
+ "optional": true,
77
+ "docs": {
78
+ "tags": [],
79
+ "text": ""
80
+ },
81
+ "attribute": "name",
82
+ "reflect": false
83
+ },
84
+ "required": {
85
+ "type": "boolean",
86
+ "mutable": false,
87
+ "complexType": {
88
+ "original": "boolean",
89
+ "resolved": "boolean",
90
+ "references": {}
91
+ },
92
+ "required": false,
93
+ "optional": true,
94
+ "docs": {
95
+ "tags": [],
96
+ "text": ""
97
+ },
98
+ "attribute": "required",
99
+ "reflect": false
100
+ },
101
+ "value": {
102
+ "type": "string",
103
+ "mutable": false,
104
+ "complexType": {
105
+ "original": "string",
106
+ "resolved": "string",
107
+ "references": {}
108
+ },
109
+ "required": false,
110
+ "optional": true,
111
+ "docs": {
112
+ "tags": [],
113
+ "text": ""
114
+ },
115
+ "attribute": "value",
116
+ "reflect": false
117
+ }
118
+ }; }
119
+ static get states() { return {
120
+ "id": {}
121
+ }; }
122
+ }
@@ -66,9 +66,13 @@ export class XplTable {
66
66
  h("table", { class: className },
67
67
  this.columns && (h("thead", null, this.columns.map((column, i) => {
68
68
  return (h("th", null, this.multiselect && i === 0 ? (h("label", { htmlFor: "__xpl-table-th" },
69
- h("input", { id: "__xpl-table-th", type: "checkbox", onChange: (e) => {
69
+ h("input", { checked: this.areAllSelected, id: "__xpl-table-th",
70
+ // appear indeterminate when at least one but not all
71
+ // are selected
72
+ indeterminate: !this.areAllSelected &&
73
+ this.selected.some((a) => a), onChange: (e) => {
70
74
  this.selectAll(e);
71
- }, checked: this.areAllSelected }),
75
+ }, type: "checkbox" }),
72
76
  column)) : (column)));
73
77
  }))),
74
78
  h("tbody", null, this.rowData.map((row, rowNum) => {
@@ -77,7 +81,7 @@ export class XplTable {
77
81
  : "" }, row.map((cell, i) => {
78
82
  return (h("td", null, this.multiselect && i === 0 ? (h("label", { htmlFor: "__xpl-table-row-" + rowNum },
79
83
  h("input", { id: "__xpl-table-row-" + rowNum, checked: this.selected[rowNum], type: "checkbox", onChange: (e) => this.selectOne(e, rowNum) }),
80
- cell)) : (cell)));
84
+ h("div", { innerHTML: cell }))) : (h("div", { innerHTML: cell }))));
81
85
  })));
82
86
  }))))));
83
87
  }
@@ -102,8 +106,8 @@ export class XplTable {
102
106
  "type": "unknown",
103
107
  "mutable": false,
104
108
  "complexType": {
105
- "original": "(string | number)[][]",
106
- "resolved": "(string | number)[][]",
109
+ "original": "string[][]",
110
+ "resolved": "string[][]",
107
111
  "references": {}
108
112
  },
109
113
  "required": false,
@@ -0,0 +1,10 @@
1
+ import { Component, Host, h } from '@stencil/core';
2
+ export class XplUtilityBar {
3
+ render() {
4
+ return (h(Host, null,
5
+ h("nav", { "aria-label": "utility navigation bar", class: "xpl-utility-bar" },
6
+ h("slot", { name: "main" }),
7
+ h("slot", { name: "aside" }))));
8
+ }
9
+ static get is() { return "xpl-utility-bar"; }
10
+ }