@ninebone/table 0.0.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 (63) hide show
  1. package/dist/css/_common.css +11 -0
  2. package/dist/css/ai.css +609 -0
  3. package/dist/css/aiMessage.css +18 -0
  4. package/dist/css/ideAssi.css +616 -0
  5. package/dist/css/ideDiff.css +124 -0
  6. package/dist/css/ngButton.css +40 -0
  7. package/dist/css/ngCheckBox.css +81 -0
  8. package/dist/css/ngColExpand.css +17 -0
  9. package/dist/css/ngCombo.css +75 -0
  10. package/dist/css/ngComboPanel.css +102 -0
  11. package/dist/css/ngExpandButton.css +71 -0
  12. package/dist/css/ngExpandCheck.css +34 -0
  13. package/dist/css/ngExpandIcon.css +36 -0
  14. package/dist/css/ngFilterPanel.css +94 -0
  15. package/dist/css/ngFlexBox.css +7 -0
  16. package/dist/css/ngFoot.css +109 -0
  17. package/dist/css/ngHScrollBar.css +85 -0
  18. package/dist/css/ngHead.css +86 -0
  19. package/dist/css/ngImg.css +22 -0
  20. package/dist/css/ngInfo.css +54 -0
  21. package/dist/css/ngInputColor.css +77 -0
  22. package/dist/css/ngInputDate.css +74 -0
  23. package/dist/css/ngInputText.css +65 -0
  24. package/dist/css/ngMaximize.css +26 -0
  25. package/dist/css/ngProgress.css +40 -0
  26. package/dist/css/ngRadio.css +61 -0
  27. package/dist/css/ngRenderer.css +59 -0
  28. package/dist/css/ngRowDetail.css +26 -0
  29. package/dist/css/ngRowDrag.css +13 -0
  30. package/dist/css/ngRowExpand.css +20 -0
  31. package/dist/css/ngRowIndicator.css +111 -0
  32. package/dist/css/ngRowPin.css +30 -0
  33. package/dist/css/ngRowState.css +16 -0
  34. package/dist/css/ngSvg.css +22 -0
  35. package/dist/css/ngTextArea.css +64 -0
  36. package/dist/css/ngTreeItem.css +133 -0
  37. package/dist/css/ngVScrollBar.css +85 -0
  38. package/dist/css/ninegrid.css +1212 -0
  39. package/dist/css/nxAlert.css +142 -0
  40. package/dist/css/nxButtons.css +33 -0
  41. package/dist/css/nxCollapse.css +67 -0
  42. package/dist/css/nxConfirm.css +143 -0
  43. package/dist/css/nxDialog.css +606 -0
  44. package/dist/css/nxDiv.css +120 -0
  45. package/dist/css/nxEditor.css +171 -0
  46. package/dist/css/nxForm.css +67 -0
  47. package/dist/css/nxModal.css +627 -0
  48. package/dist/css/nxPanel.css +129 -0
  49. package/dist/css/nxSideMenu.css +62 -0
  50. package/dist/css/nxSideMenuBody.css +8 -0
  51. package/dist/css/nxSideMenuFoot.css +78 -0
  52. package/dist/css/nxSideMenuHead.css +82 -0
  53. package/dist/css/nxSideMenuItem.css +203 -0
  54. package/dist/css/nxSplitter.css +63 -0
  55. package/dist/css/nxTab.css +193 -0
  56. package/dist/css/nxTitle.css +210 -0
  57. package/dist/css/nxTitle2.css +33 -0
  58. package/dist/index.html +60 -0
  59. package/dist/nine-table.js +141 -0
  60. package/dist/nine-table.js.map +1 -0
  61. package/dist/nine-table.umd.js +47 -0
  62. package/dist/nine-table.umd.js.map +1 -0
  63. package/package.json +34 -0
@@ -0,0 +1,109 @@
1
+ :host {
2
+ position: relative;
3
+ display: none;
4
+ width: 100%;
5
+ height: 0;
6
+ }
7
+ :host(.expand) {
8
+ display: flex;
9
+ height: 22px;
10
+ }
11
+
12
+ button {
13
+ background-repeat: no-repeat;
14
+ background-position: center;
15
+ background-size: auto;
16
+ }
17
+
18
+ ng-paging {
19
+ position: relative;
20
+ display: flex;
21
+ flex-direction: row-reverse;
22
+ height: calc(100% - 3px);
23
+ margin-top: 3px;
24
+ width: 400px;
25
+ --border: 1px solid blueviolet;
26
+ }
27
+
28
+ ng-paging span {
29
+ --margin-top: 2px;
30
+ margin-left: 6px;
31
+ margin-right: 6px;
32
+ color: #999;
33
+ }
34
+
35
+ ng-paging button {
36
+ width: 17px;
37
+ height: 100%;
38
+ margin-left: 2px;
39
+ outline: none;
40
+ border: none;
41
+ border-right: 1px solid #ccc;
42
+ }
43
+ ng-paging button:hover {
44
+ filter: brightness(95%);
45
+ }
46
+ ng-paging button:disabled {
47
+ opacity: 0.5;
48
+ }
49
+
50
+ ng-paging .ng-paging-first {
51
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="%23999" viewBox="0 0 16 16"><path d="M4 4a.5.5 0 0 1 1 0v3.248l6.267-3.636c.54-.313 1.232.066 1.232.696v7.384c0 .63-.692 1.01-1.232.697L5 8.753V12a.5.5 0 0 1-1 0z"/></svg>');
52
+ }
53
+ ng-paging .ng-paging-prev {
54
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" fill="%23999" viewBox="0 0 16 16"><path d="m3.86 8.753 5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 0 0-1.659-.753l-5.48 4.796a1 1 0 0 0 0 1.506z"/></svg>');
55
+ }
56
+ ng-paging .ng-paging-next {
57
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" fill="%23999" viewBox="0 0 16 16"><path d="m12.14 8.753-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 0 1 1.659-.753l5.48 4.796a1 1 0 0 1 0 1.506z"/></svg>');
58
+ }
59
+ ng-paging .ng-paging-last {
60
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="%23999" viewBox="0 0 16 16"><path d="M12.5 4a.5.5 0 0 0-1 0v3.248L5.233 3.612C4.693 3.3 4 3.678 4 4.308v7.384c0 .63.692 1.01 1.233.697L11.5 8.753V12a.5.5 0 0 0 1 0z"/></svg>');
61
+ }
62
+
63
+ ng-layout {
64
+ position: relative;
65
+ display: flex;
66
+ height: 100%;
67
+ width: 100%;
68
+ overflow: hidden;
69
+ }
70
+ ng-layout .ng-wrap {
71
+ display: flex;
72
+ }
73
+
74
+ ng-layout button {
75
+ padding-left: 6px;
76
+ padding-right: 6px;
77
+ height: 100%;
78
+ outline: none;
79
+ border: none;
80
+ border-left: 1px solid #eee;
81
+ border-bottom: 1px solid #f0f0f0;
82
+ background: none;
83
+ outline: none;
84
+ cursor: pointer;
85
+ overflow: hidden;
86
+ text-overflow: ellipsis;
87
+ white-space: nowrap;
88
+ }
89
+ ng-layout button:hover {
90
+ filter: brightness(95%);
91
+ }
92
+ ng-layout button:active {
93
+ color: red;
94
+ }
95
+
96
+ ng-layout button.ng-active {
97
+ color: green;
98
+ border-bottom: 2px solid green;
99
+ background-color: #f9f9f9;
100
+ }
101
+
102
+ ng-layout .ng-wrap button:first-child {
103
+ margin-left: 8px;
104
+ border-left: 1px solid #ccc;
105
+ }
106
+
107
+ ng-layout .ng-wrap button:last-child {
108
+ border-right: 1px solid #ccc;
109
+ }
@@ -0,0 +1,85 @@
1
+ :host {
2
+ position: sticky;
3
+ left: 0;
4
+ display: flex;
5
+ width: 100%;
6
+ height: 100%;
7
+ border-top: 1px solid #ccc;
8
+ --border-right: 1px solid #ccc;
9
+ background-color: #f9f9f9;
10
+ box-sizing : border-box;
11
+ }
12
+
13
+ .ng-scroll-track {
14
+ position: relative;
15
+ display: flex;
16
+ align-items: center;
17
+ width: 100%;
18
+ height: 100%;
19
+ }
20
+
21
+ .ng-scroll-thumb {
22
+ position: relative;
23
+ height: calc(100% - 2px);
24
+ }
25
+
26
+ .ng-scroll-left,.ng-scroll-right {
27
+ position: relative;
28
+ display: flex;
29
+ align-items: center;
30
+ justify-content: center;
31
+ width: 16px;
32
+ height: 100%;
33
+ border: none;
34
+ margin: 0;
35
+ background-color: #eee;
36
+ box-sizing : border-box;
37
+ outline: 0;
38
+ }
39
+
40
+ .ng-scroll-left {
41
+ border-right: 1px solid #ddd;
42
+ }
43
+
44
+ .ng-scroll-right {
45
+ border-left: 1px solid #ddd;
46
+ }
47
+
48
+ .ng-scroll-left .ng-scroll-icon {
49
+ border-right : 4px solid #999;
50
+ border-top : 4px solid transparent;
51
+ border-bottom : 4px solid transparent;
52
+ }
53
+
54
+ .ng-scroll-left:disabled .ng-scroll-icon {
55
+ border-right : 4px solid #ccc!important;
56
+ }
57
+
58
+ .ng-scroll-right .ng-scroll-icon {
59
+ border-left : 4px solid #999;
60
+ border-top : 4px solid transparent;
61
+ border-bottom : 4px solid transparent;
62
+ }
63
+
64
+ .ng-scroll-right:disabled .ng-scroll-icon {
65
+ border-left : 4px solid #ccc!important;
66
+ }
67
+
68
+ button {
69
+ padding: 0;
70
+ }
71
+ .ng-scroll-thumb {
72
+ position: absolute;
73
+ background-color: #eee;
74
+ box-sizing : border-box;
75
+ border: 1px solid #ccc;
76
+ border-radius: 3px 3px 3px 3px;
77
+ }
78
+
79
+ .ng-scroll-thumb:hover, .ng-scroll-left:hover, .ng-scroll-right:hover, .ng-scroll-top:hover, .ng-scroll-bottom:hover {
80
+ filter: brightness(95%);
81
+ }
82
+
83
+ .ng-scroll-thumb:disabled, .ng-scroll-left:disabled, .ng-scroll-right:disabled, .ng-scroll-top:disabled, .ng-scroll-bottom:disabled {
84
+ pointer-events:none;
85
+ }
@@ -0,0 +1,86 @@
1
+ :host {
2
+ position: relative;
3
+ display: flex;
4
+ width: 100%;
5
+ height: 0;
6
+ padding-bottom: unset !important;
7
+ overflow: visible;
8
+ z-index: 1;
9
+ }
10
+ :host(.expand) {
11
+ height: 32px;
12
+ padding-bottom: 2px;
13
+ }
14
+
15
+ :host(.expand) ng-menu {
16
+ height: 100%;
17
+ margin-top: 0;
18
+ bottom: 3px;
19
+ }
20
+
21
+ :host(.expand) ng-title {
22
+ display: flex;
23
+ align-items: flex-end;
24
+ bottom: 3px;
25
+ margin-left: 6px;
26
+ color: #666;
27
+ }
28
+ :host(.expand) ng-custom {
29
+ display: flex;
30
+ flex-direction: row-reverse;
31
+ width: 100%;
32
+ right: 1px;
33
+ }
34
+
35
+ buttons {
36
+ display: flex;
37
+ }
38
+
39
+ button {
40
+ padding-left: 6px;
41
+ padding-right: 6px;
42
+ height: 100%;
43
+ outline: none;
44
+ border: 1px solid #999;
45
+ border-radius: 3px;
46
+ margin-left: 5px;
47
+ cursor: pointer;
48
+ }
49
+ button:hover {
50
+ filter: brightness(95%);
51
+ }
52
+ button:active {
53
+ color: red;
54
+ }
55
+
56
+ ng-custom {
57
+ position: relative;
58
+ display: none;
59
+ }
60
+
61
+ ng-menu {
62
+ position: relative;
63
+ width: 16px;
64
+ height: 16px;
65
+ margin-top: 1px;
66
+ bottom: 0;
67
+ z-index: 1;
68
+ cursor: pointer;
69
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="black" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5"/></svg>');
70
+ background-repeat: no-repeat;
71
+ background-position: bottom -3px right 0px;
72
+ background-size: auto;
73
+ }
74
+ :host(.expand) ng-menu {
75
+ background-position: bottom 0px right 0px;
76
+ }
77
+
78
+ ng-title {
79
+ position: relative;
80
+ display: none;
81
+ }
82
+ ng-title > span {
83
+ white-space: nowrap;
84
+ font-weight: bold;
85
+ line-height: 14px;
86
+ }
@@ -0,0 +1,22 @@
1
+ :host {
2
+ height: 100%;
3
+ width: calc(100% - 8px);
4
+ display: flex;
5
+ align-items: center;
6
+ margin-left: 4px;
7
+ margin-right: 4px;
8
+ }
9
+
10
+ img {
11
+
12
+ }
13
+ img:hover {
14
+
15
+ }
16
+
17
+ div.ng-wrap {
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ width: 100%;
22
+ }
@@ -0,0 +1,54 @@
1
+ :host {
2
+ position: absolute;
3
+ bottom: 2px;
4
+ left: 1px;
5
+ width: 12px;
6
+ height: 12px;
7
+ }
8
+
9
+ svg.icon {
10
+ fill: #999;
11
+ cursor: pointer;
12
+ }
13
+ div.panel {
14
+ position: absolute;
15
+ display: none;
16
+ z-index: 1;
17
+ border: 1px solid #dcdcdc;
18
+ background: white;
19
+ box-shadow: 2px 2px 6px 0px #888888;
20
+ text-align: left;
21
+ padding: 8px 16px 8px 4px;
22
+ }
23
+
24
+ ul {
25
+ --list-style: none;
26
+ }
27
+ ol {
28
+ --list-style: none;
29
+ }
30
+ ul,ol,dl {
31
+ padding: 0;
32
+ margin: 0;
33
+ padding-bottom: 8px;
34
+ }
35
+ dl {
36
+ --margin-left: 4px;
37
+ }
38
+ li {
39
+ display: flex;
40
+ align-items: center;
41
+ height: 16px;
42
+ padding-top: 4px;
43
+ }
44
+ li * {
45
+ margin-left: 8px;
46
+ }
47
+ dt {
48
+ color: green;
49
+ margin-inline-start: 16px;
50
+ }
51
+ dd {
52
+ color: #999;
53
+ text-wrap: wrap;
54
+ }
@@ -0,0 +1,77 @@
1
+ :host {
2
+ --position: relative;
3
+ height: 100%;
4
+ width: calc(100% - 8px);
5
+ display: flex;
6
+ align-items: center;
7
+ margin-left: 4px;
8
+ margin-right: 4px;
9
+ }
10
+
11
+ :host(.invalid) button {
12
+ padding: 2px;
13
+ }
14
+ :host(.invalid) button:after {
15
+ content: '';
16
+ width: 16px;
17
+ height: 16px;
18
+ border: none;
19
+ background-repeat: no-repeat;
20
+ background-position: center;
21
+ background-size: auto;
22
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: none; stroke-width: 2px; stroke: darkgoldenrod;" viewBox="0 0 16 16"><path d="m8 1 7 14H1L8 1z"></path><path d="M7.99 12H8v.01h-.01zM8 6v4"></path></svg>');
23
+ }
24
+
25
+ input[type=color]:invalid {
26
+ border: 2px solid red !important;
27
+ }
28
+
29
+ input[type=color] {
30
+ width: 100%;
31
+ height: 26px;
32
+ padding: 0px;
33
+ margin-left: unset;
34
+ border: 1px solid #eee;
35
+ border-right: none;
36
+ border-top-left-radius: 3px;
37
+ border-bottom-left-radius: 3px;
38
+ -webkit-appearance: none;
39
+ -moz-appearance: none;
40
+ appearance: none;
41
+ background-color: transparent;
42
+ }
43
+ input[type=color]::-webkit-color-swatch {
44
+ border: 0;
45
+ border-top-left-radius: 2px;
46
+ border-bottom-left-radius: 2px;
47
+ }
48
+ input[type=color]::-webkit-color-swatch-wrapper {
49
+ padding: 1px;
50
+ }
51
+
52
+ button {
53
+ display: inline-flex;
54
+ --width: 24px;
55
+ height: 26px;
56
+ --padding: 2px;
57
+ margin-right: unset;
58
+ border: 1px solid #eee;
59
+ border-top-right-radius: 3px;
60
+ border-bottom-right-radius: 3px;
61
+ background-color: #f9f9f9;
62
+ justify-content: center;
63
+ align-items: center;
64
+ }
65
+ button:after {
66
+ content: "";
67
+ border-top: 0.3em solid;
68
+ border-right: 0.3em solid transparent;
69
+ border-bottom: 0;
70
+ border-left: 0.3em solid transparent;
71
+ }
72
+ input[type=color]:hover {
73
+ filter: brightness(90%);
74
+ }
75
+ button:hover {
76
+ filter: brightness(95%);
77
+ }
@@ -0,0 +1,74 @@
1
+ :host {
2
+ height: 100%;
3
+ width: calc(100% - 8px);
4
+ display: flex;
5
+ align-items: center;
6
+ margin-left: 4px;
7
+ margin-right: 4px;
8
+ }
9
+
10
+ :host(.invalid) input::-webkit-calendar-picker-indicator,
11
+ input:invalid::-webkit-calendar-picker-indicator {
12
+ width: 16px;
13
+ ---height: 16px;
14
+ max-height: 26px;
15
+ border: none;
16
+ background-repeat: no-repeat;
17
+ background-position: center center;
18
+ background-size: auto;
19
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: none; stroke-width: 2px; stroke: darkgoldenrod;" viewBox="0 0 16 16"><path d="m8 1 7 14H1L8 1z"></path><path d="M7.99 12H8v.01h-.01zM8 6v4"></path></svg>');
20
+ opacity: 1;
21
+ background-color: #f0f0f0;
22
+ }
23
+
24
+ input {
25
+ position: relative;
26
+ height: 26px;
27
+ padding:0;
28
+ margin:0;
29
+ font: inherit;
30
+ width: 100%;
31
+ font: inherit;
32
+ padding-left: 4px;
33
+ border: 1px solid #f0f0f0;
34
+ border-radius: 3px;
35
+ outline: 0;
36
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="black" viewBox="0 0 16 16"><path d="M11 7.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5z"/><path d="M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M2 2a1 1 0 0 0-1 1v11a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1z"/><path d="M2.5 4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5H3a.5.5 0 0 1-.5-.5z"/></svg>');
37
+ background-repeat: no-repeat;
38
+ background-position: right 2px center;
39
+ background-size: 14px auto;
40
+ color: unset;
41
+ box-sizing: border-box;
42
+ }
43
+ input:hover {
44
+ filter: brightness(95%);
45
+ }
46
+ input::-webkit-calendar-picker-indicator {
47
+ position: absolute;
48
+ right: 0;
49
+ top: 0;
50
+ width: 100%;
51
+ background: #ccc;
52
+ color: transparent;
53
+ cursor: pointer;
54
+ width: 16px;
55
+ opacity: 0.3;
56
+ }
57
+ input::before {
58
+ content: attr(data-placeholder);
59
+ position: absolute;
60
+ display: flex;
61
+ align-items: center;
62
+ width: calc(100% - 22px);
63
+ height: 100%;
64
+ background-color: white;
65
+ }
66
+ input:valid::before,
67
+ input:focus::before {
68
+ display: none;
69
+ }
70
+ input:focus {
71
+ border: 1px solid #28a745;
72
+ border-radius: 3px;
73
+ --box-shadow: 0 0 0 0.15rem rgba(40, 167, 69, 0.25);
74
+ }
@@ -0,0 +1,65 @@
1
+ :host {
2
+ height: 100%;
3
+ width: calc(100% - 8px);
4
+ display: flex;
5
+ align-items: center;
6
+ margin-left: 4px;
7
+ margin-right: 4px;
8
+ }
9
+
10
+ :host(.ng-left) input[type=text] {
11
+ text-align: left;
12
+ }
13
+ :host(.ng-center) input[type=text] {
14
+ text-align: center;
15
+ }
16
+ :host(.ng-right) input[type=text] {
17
+ text-align: right;
18
+ }
19
+
20
+ input[type=text].border-left-none {
21
+ border-left: 0;
22
+ border-top-left-radius: 0;
23
+ border-bottom-left-radius: 0;
24
+ }
25
+ input[type=text].border-right-none {
26
+ border-right: 0;
27
+ border-top-right-radius: 0;
28
+ border-bottom-right-radius: 0;
29
+ }
30
+
31
+ input[type=text] {
32
+ position: relative;
33
+ -moz-user-select: auto;
34
+ -webkit-user-select: auto;
35
+ -ms-user-select: auto;
36
+ user-select: auto;
37
+ width: 100%;
38
+ height: 26px;
39
+ border: 1px solid #eee;
40
+ border-radius: 3px;
41
+ padding-left: 4px;
42
+ outline: 0;
43
+ font: inherit;
44
+ box-sizing: border-box;
45
+ background-color: white;
46
+ color: #333;
47
+ }
48
+
49
+ input[type=text].invalid {
50
+ content: '';
51
+ background-repeat: no-repeat;
52
+ background-position: right 2px top 4px;
53
+ background-size: auto;
54
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: none; stroke-width: 2px; stroke: darkgoldenrod;" viewBox="0 0 16 16"><path d="m8 1 7 14H1L8 1z"></path><path d="M7.99 12H8v.01h-.01zM8 6v4"></path></svg>');
55
+ }
56
+
57
+ input[type=text]:disabled {
58
+ border-color: #fdfdfd;
59
+ filter: brightness(95%);
60
+ }
61
+ input[type=text]:read-only {
62
+ border-color: #fdfdfd;
63
+ filter: brightness(97%);
64
+ }
65
+
@@ -0,0 +1,26 @@
1
+ :host {
2
+ height: 100%;
3
+ width: 100%;
4
+ display: inline-flex;
5
+ align-items: center;
6
+ justify-content: center;
7
+ }
8
+
9
+ svg {
10
+ cursor: pointer;
11
+ width: 12px;
12
+ height: 12px;
13
+ }
14
+
15
+ svg:hover {
16
+ opacity: 0.7;
17
+ }
18
+ svg:active {
19
+ fill: red;
20
+ }
21
+
22
+ svg {
23
+ stroke-width: 1.5px;
24
+ stroke: #666;
25
+ fill: none;
26
+ }
@@ -0,0 +1,40 @@
1
+ :host {
2
+ height: 100%;
3
+ width: calc(100% - 8px);
4
+ display: flex;
5
+ align-items: center;
6
+ margin-left: 4px;
7
+ margin-right: 4px;
8
+ }
9
+
10
+ progress {
11
+ position: relative;
12
+ top: unset;
13
+ height: calc(100% - 4px);
14
+ width: 100%;
15
+ margin-left: unset;
16
+ margin-right: unset;
17
+ border-radius: 0;
18
+ }
19
+
20
+ progress::-webkit-progress-bar {
21
+
22
+ }
23
+
24
+ progress::-webkit-progress-value {
25
+ }
26
+
27
+ span {
28
+ position: absolute;
29
+ width: unset !important;
30
+ justify-content: center;
31
+ --text-shadow: 0 0 0.1em black, 0 0 0.1em black;
32
+ }
33
+
34
+ div.ng-wrap {
35
+ display: flex;
36
+ align-items: center;
37
+ justify-content: center;
38
+ width: 100%;
39
+ height: 100%;
40
+ }
@@ -0,0 +1,61 @@
1
+ :host {
2
+ height: 100%;
3
+ width: calc(100% - 8px);
4
+ display: flex;
5
+ align-items: center;
6
+ margin-left: 4px;
7
+ margin-right: 4px;
8
+ }
9
+
10
+ :host(.invalid)::after {
11
+ content: '';
12
+ margin-left: 4px;
13
+ width: 16px;
14
+ height: 16px;
15
+ border: none;
16
+ background-repeat: no-repeat;
17
+ background-position: center;
18
+ background-size: auto;
19
+ background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" style="fill: none; stroke-width: 2px; stroke: darkgoldenrod;" viewBox="0 0 16 16"><path d="m8 1 7 14H1L8 1z"></path><path d="M7.99 12H8v.01h-.01zM8 6v4"></path></svg>');
20
+ }
21
+
22
+ input {
23
+ flex-shrink: 0;
24
+ width: 14px;
25
+ height: 14px;
26
+ padding: 0;
27
+ margin: 0;
28
+ -webkit-appearance: none;
29
+ -moz-appearance: none;
30
+ appearance: none;
31
+ background-repeat: no-repeat;
32
+ background-position: center;
33
+ background-size: contain;
34
+ border: 1px solid dimgray;
35
+ border-radius: 50%;
36
+ outline: 0;
37
+ }
38
+ input:checked {
39
+ background-image: url('data:image/svg+xml;utf8,<svg height="14" width="14" xmlns="http://www.w3.org/2000/svg"><circle r="3" cx="50%" cy="50%" fill="dimgray" /></svg>');
40
+ }
41
+
42
+ label {
43
+ display: flex;
44
+ align-items: center;
45
+ --margin-left: 4px;
46
+ margin-right: 4px;
47
+ }
48
+ label.disabled {
49
+ pointer-events: none;
50
+ opacity: 0.5;
51
+ }
52
+
53
+ span {
54
+ margin-left: 4px;
55
+ }
56
+
57
+ div.ng-wrap {
58
+ display: flex;
59
+ align-items: center;
60
+ width: 100%;
61
+ }