@3t-transform/threeteeui 0.1.5 → 0.1.6

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 (101) hide show
  1. package/dist/cjs/{index-906c2757.js → index-b3010e55.js} +2 -99
  2. package/dist/cjs/loader.cjs.js +3 -4
  3. package/dist/cjs/{tttx-button_2.cjs.entry.js → tttx-button.cjs.entry.js} +24 -50
  4. package/dist/cjs/tttx-form.cjs.entry.js +364 -364
  5. package/dist/cjs/tttx-icon.cjs.entry.js +21 -0
  6. package/dist/cjs/tttx-keyvalue-block.cjs.entry.js +57 -57
  7. package/dist/cjs/tttx-list.cjs.entry.js +43 -43
  8. package/dist/cjs/tttx-loading-spinner.cjs.entry.js +16 -16
  9. package/dist/cjs/tttx-standalone-input.cjs.entry.js +61 -58
  10. package/dist/cjs/tttx.cjs.js +3 -7
  11. package/dist/collection/collection-manifest.json +2 -2
  12. package/dist/collection/components/atoms/tttx-button/tttx-button.js +110 -116
  13. package/dist/collection/components/atoms/tttx-button/tttx-button.stories.js +14 -14
  14. package/dist/collection/components/atoms/tttx-icon/tttx-icon.css +4 -0
  15. package/dist/collection/components/atoms/tttx-icon/tttx-icon.js +62 -62
  16. package/dist/collection/components/atoms/tttx-icon/tttx-icon.stories.js +22 -22
  17. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.js +107 -107
  18. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.js +38 -38
  19. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.js +67 -67
  20. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.js +17 -17
  21. package/dist/collection/components/molecules/tttx-form/lib/setErrorState.js +35 -35
  22. package/dist/collection/components/molecules/tttx-form/lib/validityCheck.js +58 -58
  23. package/dist/collection/components/molecules/tttx-form/tttx-form.css +32 -3
  24. package/dist/collection/components/molecules/tttx-form/tttx-form.js +364 -364
  25. package/dist/collection/components/molecules/tttx-form/tttx-form.stories.js +127 -127
  26. package/dist/collection/components/molecules/tttx-list/tttx-list.js +105 -105
  27. package/dist/collection/components/molecules/tttx-list/tttx-list.stories.js +43 -43
  28. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.css +32 -3
  29. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.js +627 -572
  30. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.js +148 -135
  31. package/dist/collection/components/palette.stories.js +7 -7
  32. package/dist/collection/docs/gettingstarted-developer.stories.js +5 -5
  33. package/dist/collection/icons.js +2838 -2838
  34. package/dist/collection/index.js +1 -1
  35. package/dist/collection/shared/domsanitiser.options.js +14 -14
  36. package/dist/components/index.d.ts +0 -9
  37. package/dist/components/index.js +1 -1
  38. package/dist/components/tttx-button.js +48 -59
  39. package/dist/components/tttx-form.js +381 -381
  40. package/dist/components/tttx-icon2.js +29 -29
  41. package/dist/components/tttx-keyvalue-block.js +74 -74
  42. package/dist/components/tttx-list.js +65 -65
  43. package/dist/components/tttx-loading-spinner.js +33 -33
  44. package/dist/components/tttx-standalone-input.js +108 -102
  45. package/dist/esm/{index-4010ad69.js → index-31631990.js} +3 -98
  46. package/dist/esm/loader.js +3 -4
  47. package/dist/esm/polyfills/core-js.js +0 -0
  48. package/dist/esm/polyfills/css-shim.js +1 -1
  49. package/dist/esm/polyfills/dom.js +0 -0
  50. package/dist/esm/polyfills/es5-html-element.js +0 -0
  51. package/dist/esm/polyfills/index.js +0 -0
  52. package/dist/esm/polyfills/system.js +0 -0
  53. package/dist/esm/{tttx-button_2.entry.js → tttx-button.entry.js} +25 -50
  54. package/dist/esm/tttx-form.entry.js +364 -364
  55. package/dist/esm/tttx-icon.entry.js +17 -0
  56. package/dist/esm/tttx-keyvalue-block.entry.js +57 -57
  57. package/dist/esm/tttx-list.entry.js +43 -43
  58. package/dist/esm/tttx-loading-spinner.entry.js +16 -16
  59. package/dist/esm/tttx-standalone-input.entry.js +61 -58
  60. package/dist/esm/tttx.js +3 -4
  61. package/dist/tttx/p-0c6a665d.js +2 -0
  62. package/dist/tttx/p-14270585.entry.js +1 -0
  63. package/dist/tttx/{p-3281444a.entry.js → p-1f3d39fc.entry.js} +1 -1
  64. package/dist/tttx/p-263d093c.entry.js +1 -0
  65. package/dist/tttx/p-2e7f486e.entry.js +1 -0
  66. package/dist/tttx/p-39f991c3.entry.js +3 -0
  67. package/dist/tttx/{p-dab7ee1b.entry.js → p-84d90779.entry.js} +1 -1
  68. package/dist/tttx/p-979ebe65.entry.js +1 -0
  69. package/dist/tttx/tttx.esm.js +1 -1
  70. package/dist/types/components/atoms/tttx-button/tttx-button.d.ts +10 -13
  71. package/dist/types/components/atoms/tttx-button/tttx-button.stories.d.ts +10 -10
  72. package/dist/types/components/atoms/tttx-icon/tttx-icon.d.ts +5 -5
  73. package/dist/types/components/atoms/tttx-icon/tttx-icon.stories.d.ts +20 -20
  74. package/dist/types/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.d.ts +7 -7
  75. package/dist/types/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.d.ts +9 -9
  76. package/dist/types/components/atoms/tttx-loading-spinner/tttx-loading-spinner.d.ts +6 -6
  77. package/dist/types/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.d.ts +17 -17
  78. package/dist/types/components/molecules/tttx-form/lib/setErrorState.d.ts +13 -13
  79. package/dist/types/components/molecules/tttx-form/lib/validityCheck.d.ts +17 -17
  80. package/dist/types/components/molecules/tttx-form/tttx-form.d.ts +114 -114
  81. package/dist/types/components/molecules/tttx-form/tttx-form.stories.d.ts +13 -13
  82. package/dist/types/components/molecules/tttx-list/tttx-list.d.ts +11 -11
  83. package/dist/types/components/molecules/tttx-list/tttx-list.stories.d.ts +14 -14
  84. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.d.ts +56 -53
  85. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.d.ts +122 -106
  86. package/dist/types/components/palette.stories.d.ts +6 -6
  87. package/dist/types/components.d.ts +6 -0
  88. package/dist/types/docs/gettingstarted-developer.stories.d.ts +5 -5
  89. package/dist/types/icons.d.ts +2 -2
  90. package/dist/types/index.d.ts +1 -1
  91. package/dist/types/shared/domsanitiser.options.d.ts +10 -10
  92. package/dist/types/stencil-public-runtime.d.ts +3 -59
  93. package/loader/index.d.ts +0 -9
  94. package/package.json +1 -1
  95. package/dist/collection/transform-tag-name.js +0 -5
  96. package/dist/tttx/p-083eeedc.entry.js +0 -1
  97. package/dist/tttx/p-5687f4ad.js +0 -2
  98. package/dist/tttx/p-5c9a1626.entry.js +0 -3
  99. package/dist/tttx/p-931e42c9.entry.js +0 -1
  100. package/dist/tttx/p-b5c1dd86.entry.js +0 -1
  101. package/dist/types/transform-tag-name.d.ts +0 -1
@@ -1,127 +1,127 @@
1
- import { withActions } from '@storybook/addon-actions/decorator';
2
- export default {
3
- title: 'molecules/Form',
4
- component: 'tttx-form',
5
- parameters: {
6
- actions: {
7
- handles: ['dataSubmitted', 'dataChanged'],
8
- },
9
- },
10
- decorators: [withActions],
11
- };
12
- const formSchema = {
13
- properties: {
14
- title: {
15
- type: 'string',
16
- format: 'string',
17
- form: {
18
- type: 'text',
19
- placeholder: 'Mr, Mrs, Dr, Hon Rev',
20
- label: 'Title',
21
- },
22
- },
23
- forename: {
24
- type: 'string',
25
- format: 'string',
26
- form: {
27
- type: 'text',
28
- placeholder: 'John',
29
- label: 'Forename',
30
- validation: {
31
- required: {
32
- message: 'Please enter your forename',
33
- },
34
- },
35
- },
36
- },
37
- surname: {
38
- type: 'string',
39
- format: 'string',
40
- form: {
41
- type: 'text',
42
- placeholder: 'Doe',
43
- label: 'Surname',
44
- validation: {
45
- required: {
46
- message: 'Please enter your surname',
47
- },
48
- },
49
- },
50
- },
51
- postcode: {
52
- type: 'string',
53
- format: 'string',
54
- form: {
55
- type: 'text',
56
- placeholder: 'AB10',
57
- label: 'Start of postcode',
58
- validation: {
59
- required: {
60
- message: 'Please enter the beginning of your postcode',
61
- },
62
- pattern: {
63
- pattern: '^([A-Za-z][0-9])$|^([A-Za-z][0-9]{2})$|^([A-Za-z]{2}[0-9])$|^([A-Za-z]{2}[0-9]{2})$|^([A-Za-z][0-9][A-Za-z])$|^([A-Za-z]{2}[0-9][A-Za-z])$|^(GIR|BF|BX|XX)$',
64
- message: 'Please enter the first half of your postcode. EG: ZZ99',
65
- },
66
- maxlength: 4,
67
- },
68
- },
69
- },
70
- age: {
71
- type: 'number',
72
- format: 'number',
73
- form: {
74
- type: 'number',
75
- placeholder: '',
76
- label: 'Age',
77
- validation: {
78
- required: {
79
- message: 'Please enter your age',
80
- },
81
- badInput: {
82
- message: 'Please enter a number',
83
- },
84
- },
85
- },
86
- },
87
- dob: {
88
- type: 'string',
89
- format: 'date-time',
90
- form: {
91
- type: 'date',
92
- placeholder: '',
93
- label: 'Date of birth',
94
- validation: {
95
- required: {
96
- message: 'Please enter your date of birth',
97
- },
98
- minmax: {
99
- min: '1900-01-01',
100
- max: '2100-12-31',
101
- message: 'Please enter a date between 1900 and 2100',
102
- },
103
- },
104
- },
105
- },
106
- },
107
- };
108
- const jsonFormSchema = JSON.stringify(formSchema);
109
- export const ExampleFormFromJSON = () => `<tttx-form formSchema='${jsonFormSchema}'></tttx-form>`;
110
- const singleFormItemSchema = {
111
- properties: {
112
- input: {
113
- type: 'string',
114
- format: 'string',
115
- form: {
116
- type: 'text',
117
- label: 'Input Field',
118
- validation: {
119
- required: {
120
- message: 'Please enter something'
121
- }
122
- }
123
- }
124
- }
125
- }
126
- };
127
- export const SingleFormItem = () => `<tttx-form formSchema='${JSON.stringify(singleFormItemSchema)}'></tttx-form>`;
1
+ import { withActions } from '@storybook/addon-actions/decorator';
2
+ export default {
3
+ title: 'molecules/Form',
4
+ component: 'tttx-form',
5
+ parameters: {
6
+ actions: {
7
+ handles: ['dataSubmitted', 'dataChanged'],
8
+ },
9
+ },
10
+ decorators: [withActions],
11
+ };
12
+ const formSchema = {
13
+ properties: {
14
+ title: {
15
+ type: 'string',
16
+ format: 'string',
17
+ form: {
18
+ type: 'text',
19
+ placeholder: 'Mr, Mrs, Dr, Hon Rev',
20
+ label: 'Title',
21
+ },
22
+ },
23
+ forename: {
24
+ type: 'string',
25
+ format: 'string',
26
+ form: {
27
+ type: 'text',
28
+ placeholder: 'John',
29
+ label: 'Forename',
30
+ validation: {
31
+ required: {
32
+ message: 'Please enter your forename',
33
+ },
34
+ },
35
+ },
36
+ },
37
+ surname: {
38
+ type: 'string',
39
+ format: 'string',
40
+ form: {
41
+ type: 'text',
42
+ placeholder: 'Doe',
43
+ label: 'Surname',
44
+ validation: {
45
+ required: {
46
+ message: 'Please enter your surname',
47
+ },
48
+ },
49
+ },
50
+ },
51
+ postcode: {
52
+ type: 'string',
53
+ format: 'string',
54
+ form: {
55
+ type: 'text',
56
+ placeholder: 'AB10',
57
+ label: 'Start of postcode',
58
+ validation: {
59
+ required: {
60
+ message: 'Please enter the beginning of your postcode',
61
+ },
62
+ pattern: {
63
+ pattern: '^([A-Za-z][0-9])$|^([A-Za-z][0-9]{2})$|^([A-Za-z]{2}[0-9])$|^([A-Za-z]{2}[0-9]{2})$|^([A-Za-z][0-9][A-Za-z])$|^([A-Za-z]{2}[0-9][A-Za-z])$|^(GIR|BF|BX|XX)$',
64
+ message: 'Please enter the first half of your postcode. EG: ZZ99',
65
+ },
66
+ maxlength: 4,
67
+ },
68
+ },
69
+ },
70
+ age: {
71
+ type: 'number',
72
+ format: 'number',
73
+ form: {
74
+ type: 'number',
75
+ placeholder: '',
76
+ label: 'Age',
77
+ validation: {
78
+ required: {
79
+ message: 'Please enter your age',
80
+ },
81
+ badInput: {
82
+ message: 'Please enter a number',
83
+ },
84
+ },
85
+ },
86
+ },
87
+ dob: {
88
+ type: 'string',
89
+ format: 'date-time',
90
+ form: {
91
+ type: 'date',
92
+ placeholder: '',
93
+ label: 'Date of birth',
94
+ validation: {
95
+ required: {
96
+ message: 'Please enter your date of birth',
97
+ },
98
+ minmax: {
99
+ min: '1900-01-01',
100
+ max: '2100-12-31',
101
+ message: 'Please enter a date between 1900 and 2100',
102
+ },
103
+ },
104
+ },
105
+ },
106
+ },
107
+ };
108
+ const jsonFormSchema = JSON.stringify(formSchema);
109
+ export const ExampleFormFromJSON = () => `<tttx-form formSchema='${jsonFormSchema}'></tttx-form>`;
110
+ const singleFormItemSchema = {
111
+ properties: {
112
+ input: {
113
+ type: 'string',
114
+ format: 'string',
115
+ form: {
116
+ type: 'text',
117
+ label: 'Input Field',
118
+ validation: {
119
+ required: {
120
+ message: 'Please enter something'
121
+ }
122
+ }
123
+ }
124
+ }
125
+ }
126
+ };
127
+ export const SingleFormItem = () => `<tttx-form formSchema='${JSON.stringify(singleFormItemSchema)}'></tttx-form>`;
@@ -1,105 +1,105 @@
1
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
2
- import { h } from '@stencil/core';
3
- import * as DOMPurify from 'dompurify';
4
- import domSanitiserOptions from '../../../shared/domsanitiser.options';
5
- export class TttxList {
6
- constructor() {
7
- this.data = undefined;
8
- this.name = undefined;
9
- }
10
- onRowClickHandler(item) {
11
- if (!item.clickable || !item.rowData)
12
- return;
13
- this.rowClick.emit({ name: this.name, data: item.rowData });
14
- }
15
- renderListItem(item) {
16
- const cleanHTML = DOMPurify.sanitize(item.element, domSanitiserOptions);
17
- return (h("li", { class: `item ${item.clickable ? 'clickable' : ''}`, onClick: () => {
18
- this.onRowClickHandler(item);
19
- } }, item.element && h("span", { class: "item-content", innerHTML: cleanHTML }), item.icon && h("tttx-icon", { class: "align-right ", icon: item.icon })));
20
- }
21
- render() {
22
- if (!this.data)
23
- return;
24
- if (typeof this.data === 'string') {
25
- this._data = JSON.parse(this.data);
26
- }
27
- else {
28
- this._data = this.data;
29
- }
30
- return h("ul", { class: "list" }, this._data.map((item) => this.renderListItem(item)));
31
- }
32
- static get is() { return "tttx-list"; }
33
- static get encapsulation() { return "shadow"; }
34
- static get originalStyleUrls() {
35
- return {
36
- "$": ["tttx-list.scss"]
37
- };
38
- }
39
- static get styleUrls() {
40
- return {
41
- "$": ["tttx-list.css"]
42
- };
43
- }
44
- static get properties() {
45
- return {
46
- "data": {
47
- "type": "string",
48
- "mutable": true,
49
- "complexType": {
50
- "original": "string | ListItem[]",
51
- "resolved": "ListItem[] | string",
52
- "references": {
53
- "ListItem": {
54
- "location": "import",
55
- "path": "./interfaces"
56
- }
57
- }
58
- },
59
- "required": false,
60
- "optional": false,
61
- "docs": {
62
- "tags": [],
63
- "text": ""
64
- },
65
- "attribute": "data",
66
- "reflect": false
67
- },
68
- "name": {
69
- "type": "string",
70
- "mutable": false,
71
- "complexType": {
72
- "original": "string",
73
- "resolved": "string",
74
- "references": {}
75
- },
76
- "required": false,
77
- "optional": false,
78
- "docs": {
79
- "tags": [],
80
- "text": ""
81
- },
82
- "attribute": "name",
83
- "reflect": false
84
- }
85
- };
86
- }
87
- static get events() {
88
- return [{
89
- "method": "rowClick",
90
- "name": "listRowClick",
91
- "bubbles": true,
92
- "cancelable": true,
93
- "composed": true,
94
- "docs": {
95
- "tags": [],
96
- "text": ""
97
- },
98
- "complexType": {
99
- "original": "any",
100
- "resolved": "any",
101
- "references": {}
102
- }
103
- }];
104
- }
105
- }
1
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
2
+ import { h } from '@stencil/core';
3
+ import * as DOMPurify from 'dompurify';
4
+ import domSanitiserOptions from '../../../shared/domsanitiser.options';
5
+ export class TttxList {
6
+ constructor() {
7
+ this.data = undefined;
8
+ this.name = undefined;
9
+ }
10
+ onRowClickHandler(item) {
11
+ if (!item.clickable || !item.rowData)
12
+ return;
13
+ this.rowClick.emit({ name: this.name, data: item.rowData });
14
+ }
15
+ renderListItem(item) {
16
+ const cleanHTML = DOMPurify.sanitize(item.element, domSanitiserOptions);
17
+ return (h("li", { class: `item ${item.clickable ? 'clickable' : ''}`, onClick: () => {
18
+ this.onRowClickHandler(item);
19
+ } }, item.element && h("span", { class: "item-content", innerHTML: cleanHTML }), item.icon && h("tttx-icon", { class: "align-right ", icon: item.icon })));
20
+ }
21
+ render() {
22
+ if (!this.data)
23
+ return;
24
+ if (typeof this.data === 'string') {
25
+ this._data = JSON.parse(this.data);
26
+ }
27
+ else {
28
+ this._data = this.data;
29
+ }
30
+ return h("ul", { class: "list" }, this._data.map((item) => this.renderListItem(item)));
31
+ }
32
+ static get is() { return "tttx-list"; }
33
+ static get encapsulation() { return "shadow"; }
34
+ static get originalStyleUrls() {
35
+ return {
36
+ "$": ["tttx-list.scss"]
37
+ };
38
+ }
39
+ static get styleUrls() {
40
+ return {
41
+ "$": ["tttx-list.css"]
42
+ };
43
+ }
44
+ static get properties() {
45
+ return {
46
+ "data": {
47
+ "type": "string",
48
+ "mutable": true,
49
+ "complexType": {
50
+ "original": "string | ListItem[]",
51
+ "resolved": "ListItem[] | string",
52
+ "references": {
53
+ "ListItem": {
54
+ "location": "import",
55
+ "path": "./interfaces"
56
+ }
57
+ }
58
+ },
59
+ "required": false,
60
+ "optional": false,
61
+ "docs": {
62
+ "tags": [],
63
+ "text": ""
64
+ },
65
+ "attribute": "data",
66
+ "reflect": false
67
+ },
68
+ "name": {
69
+ "type": "string",
70
+ "mutable": false,
71
+ "complexType": {
72
+ "original": "string",
73
+ "resolved": "string",
74
+ "references": {}
75
+ },
76
+ "required": false,
77
+ "optional": false,
78
+ "docs": {
79
+ "tags": [],
80
+ "text": ""
81
+ },
82
+ "attribute": "name",
83
+ "reflect": false
84
+ }
85
+ };
86
+ }
87
+ static get events() {
88
+ return [{
89
+ "method": "rowClick",
90
+ "name": "listRowClick",
91
+ "bubbles": true,
92
+ "cancelable": true,
93
+ "composed": true,
94
+ "docs": {
95
+ "tags": [],
96
+ "text": ""
97
+ },
98
+ "complexType": {
99
+ "original": "any",
100
+ "resolved": "any",
101
+ "references": {}
102
+ }
103
+ }];
104
+ }
105
+ }
@@ -1,30 +1,30 @@
1
- import { withActions } from '@storybook/addon-actions/decorator';
2
- export default {
3
- title: 'molecules/List',
4
- component: 'tttx-list',
5
- parameters: {
6
- actions: {
7
- handles: ['listRowClick'],
8
- },
9
- },
10
- decorators: [withActions],
11
- };
1
+ import { withActions } from '@storybook/addon-actions/decorator';
2
+ export default {
3
+ title: 'molecules/List',
4
+ component: 'tttx-list',
5
+ parameters: {
6
+ actions: {
7
+ handles: ['listRowClick'],
8
+ },
9
+ },
10
+ decorators: [withActions],
11
+ };
12
12
  const TemplateStringList = ({ data }) => `
13
13
  <tttx-list
14
14
  data='${JSON.stringify(data)}'
15
15
  id='list'
16
16
  name='stringList'
17
17
  ></tttx-list>
18
- `;
19
- export const BasicStringList = TemplateStringList.bind({});
20
- BasicStringList.args = {
21
- data: [
22
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="green" /></span> Demulon 1,000,000' },
23
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="green" /></span> Patrick' },
24
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="orange" /></span> Lee' },
25
- { element: '<span><tttx-icon icon="egg" color="red" /></span> Ben' },
26
- ],
27
- };
18
+ `;
19
+ export const BasicStringList = TemplateStringList.bind({});
20
+ BasicStringList.args = {
21
+ data: [
22
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="green" /></span> Demulon 1,000,000' },
23
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="green" /></span> Patrick' },
24
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="orange" /></span> Lee' },
25
+ { element: '<span><tttx-icon icon="egg" color="red" /></span> Ben' },
26
+ ],
27
+ };
28
28
  const TemplateObjectList = ({ data }) => `
29
29
  <tttx-list
30
30
  id='objectList'
@@ -36,16 +36,16 @@ const TemplateObjectList = ({ data }) => `
36
36
  }
37
37
  objectList.data = ${JSON.stringify(data)};
38
38
  </script>
39
- `;
40
- export const BasicObjectList = TemplateObjectList.bind({});
41
- BasicObjectList.args = {
42
- data: [
43
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Demulon 1,000,000' },
44
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="red" /></span> Patrick' },
45
- { icon: 'chevron_right', element: '<span><tttx-icon icon="add" /></span> Lee' },
46
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Ben' },
47
- ],
48
- };
39
+ `;
40
+ export const BasicObjectList = TemplateObjectList.bind({});
41
+ BasicObjectList.args = {
42
+ data: [
43
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Demulon 1,000,000' },
44
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="red" /></span> Patrick' },
45
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="add" /></span> Lee' },
46
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Ben' },
47
+ ],
48
+ };
49
49
  const TemplateClickableList = ({ data }) => `
50
50
  <tttx-list
51
51
  id='clickableList'
@@ -57,15 +57,15 @@ const TemplateClickableList = ({ data }) => `
57
57
  }
58
58
  clickableList.data = ${JSON.stringify(data)};
59
59
  </script>
60
- `;
61
- export const BasicClickableList = TemplateClickableList.bind({});
62
- BasicClickableList.args = {
63
- data: [
64
- { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Demulon 1,000,000', rowData: '[{ "name": "Demulon 1,000,000" }]' },
65
- { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="red" /></span> Emma', rowData: [{ name: 'Emma' }] },
66
- { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="green" /></span> Eulogio', rowData: 'Eulogio' },
67
- { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="red" /></span> Patrick' },
68
- { clickable: false, icon: 'chevron_right', element: '<span><tttx-icon icon="add" /></span> Lee ' },
69
- { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Ben' },
70
- ],
71
- };
60
+ `;
61
+ export const BasicClickableList = TemplateClickableList.bind({});
62
+ BasicClickableList.args = {
63
+ data: [
64
+ { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Demulon 1,000,000', rowData: '[{ "name": "Demulon 1,000,000" }]' },
65
+ { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="red" /></span> Emma', rowData: [{ name: 'Emma' }] },
66
+ { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="green" /></span> Eulogio', rowData: 'Eulogio' },
67
+ { clickable: true, icon: 'chevron_right', element: '<span><tttx-icon icon="egg" color="red" /></span> Patrick' },
68
+ { clickable: false, icon: 'chevron_right', element: '<span><tttx-icon icon="add" /></span> Lee ' },
69
+ { icon: 'chevron_right', element: '<span><tttx-icon icon="egg" /></span> Ben' },
70
+ ],
71
+ };
@@ -45,7 +45,6 @@
45
45
 
46
46
  .icon-right {
47
47
  margin-top: 5px;
48
- margin-right: 4px;
49
48
  }
50
49
 
51
50
  .icon-left {
@@ -61,8 +60,10 @@
61
60
  padding-right: 4px;
62
61
  }
63
62
 
64
- .focused {
65
- border-color: #1479c6;
63
+ .input-icon {
64
+ position: absolute;
65
+ margin-top: 9px;
66
+ margin-left: 4px;
66
67
  }
67
68
 
68
69
  .errormsg {
@@ -104,6 +105,20 @@ label.inputBlock {
104
105
  line-height: 21px;
105
106
  }
106
107
 
108
+ label.inputInline {
109
+ display: flex;
110
+ white-space: nowrap;
111
+ align-items: center;
112
+ }
113
+ label.inputInline .input-container {
114
+ margin: 0 4px;
115
+ width: 100%;
116
+ display: flex;
117
+ align-items: center;
118
+ gap: 4px;
119
+ position: relative;
120
+ }
121
+
107
122
  label {
108
123
  font-weight: 500;
109
124
  font-size: 16px;
@@ -129,10 +144,20 @@ input[type=date] {
129
144
  line-height: 37px;
130
145
  }
131
146
 
147
+ /* Android device date alignment fix */
148
+ @media (max-width: 600px) {
149
+ input[type=date] {
150
+ padding-top: 6px;
151
+ }
152
+ }
132
153
  input.invalid:invalid, input.standalone.invalid {
133
154
  border: 1px solid #dc0000;
134
155
  }
135
156
 
157
+ .input-icon ~ input {
158
+ padding: 0 32px;
159
+ }
160
+
136
161
  input ~ .errorBubble {
137
162
  min-height: 27px;
138
163
  position: relative;
@@ -172,6 +197,10 @@ input:focus {
172
197
  border-color: #1479c6;
173
198
  }
174
199
 
200
+ input:focus-visible {
201
+ outline: none;
202
+ }
203
+
175
204
  :host {
176
205
  display: block;
177
206
  }