@muziehdesign/components 18.2.0-next.0 → 18.2.0-next.1998

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 (73) hide show
  1. package/README.md +2 -2
  2. package/assets/icons/chevron-down-solid.svg +3 -0
  3. package/assets/icons/chevron-up-solid.svg +3 -0
  4. package/assets/icons/icondefinitions.svg +0 -0
  5. package/design/_accordion.scss +15 -0
  6. package/design/_alert.scss +51 -0
  7. package/design/_base.scss +54 -0
  8. package/design/_breadcrumb.scss +15 -0
  9. package/design/_button.scss +55 -0
  10. package/design/_components.scss +0 -0
  11. package/design/_date-picker.scss +23 -0
  12. package/design/_dl.scss +22 -0
  13. package/design/_dropdown-menu.scss +17 -0
  14. package/design/_form.scss +179 -0
  15. package/design/_infinite-scroll.scss +16 -0
  16. package/design/_material.scss +57 -0
  17. package/design/_modal.scss +287 -0
  18. package/design/_muzieh.scss +19 -0
  19. package/design/_pagination.scss +27 -0
  20. package/design/_progress-bar.scss +25 -0
  21. package/design/_table.scss +93 -0
  22. package/design/_tabs.scss +20 -0
  23. package/design/_wizard.scss +139 -0
  24. package/esm2022/lib/alert/alert.component.mjs +3 -3
  25. package/esm2022/lib/button.directive.mjs +11 -11
  26. package/esm2022/lib/components.module.mjs +1 -1
  27. package/esm2022/lib/date-display/date-display.pipe.mjs +1 -1
  28. package/esm2022/lib/date-time/date-time.component.mjs +3 -3
  29. package/esm2022/lib/date-time/time-value.mjs +1 -1
  30. package/esm2022/lib/enum-display/enum-display.pipe.mjs +1 -1
  31. package/esm2022/lib/infinite-scroll/infinite-scroll.component.mjs +3 -3
  32. package/esm2022/lib/inline-edit/inline-edit.component.mjs +65 -0
  33. package/esm2022/lib/inline-message/inline-message-dialog/inline-message-dialog.component.mjs +3 -3
  34. package/esm2022/lib/inline-message/inline-message.component.mjs +3 -3
  35. package/esm2022/lib/models/loading-state.mjs +1 -1
  36. package/esm2022/lib/models/page-event.mjs +1 -1
  37. package/esm2022/lib/models/result-table-options.mjs +1 -1
  38. package/esm2022/lib/models/sort-event.mjs +1 -1
  39. package/esm2022/lib/models/subject.mjs +1 -1
  40. package/esm2022/lib/models/wizard-step-link.mjs +1 -1
  41. package/esm2022/lib/page-header/page-header.component.mjs +3 -3
  42. package/esm2022/lib/page-loading-indicator/page-loading-indicator.component.mjs +3 -3
  43. package/esm2022/lib/pagination/pagination-default-options.mjs +1 -1
  44. package/esm2022/lib/pagination/pagination-default-options.token.mjs +1 -1
  45. package/esm2022/lib/pagination/pagination.component.mjs +5 -5
  46. package/esm2022/lib/phone-number/phone-number.pipe.mjs +1 -1
  47. package/esm2022/lib/result-table/result-table.component.mjs +25 -14
  48. package/esm2022/lib/result-table/result-table.model.mjs +1 -1
  49. package/esm2022/lib/sort-key.directive.mjs +1 -1
  50. package/esm2022/lib/sort.directive.mjs +1 -1
  51. package/esm2022/lib/spinner/spinner.component.mjs +3 -3
  52. package/esm2022/lib/subject-display/subject-display.pipe.mjs +3 -3
  53. package/esm2022/lib/svg-icon/svg-icon-config.mjs +9 -2
  54. package/esm2022/lib/svg-icon/svg-icon.component.mjs +6 -8
  55. package/esm2022/lib/testing/muzieh-component-harness.mjs +1 -1
  56. package/esm2022/lib/testing/result-table-harness.mjs +2 -2
  57. package/esm2022/lib/time-value-accessor.directive.mjs +1 -1
  58. package/esm2022/lib/time-value-validator.directive.mjs +1 -1
  59. package/esm2022/lib/wizard-progress-tracker/wizard-progress-tracker.component.mjs +3 -3
  60. package/esm2022/public-api.mjs +3 -1
  61. package/fesm2022/muziehdesign-components.mjs +132 -57
  62. package/fesm2022/muziehdesign-components.mjs.map +1 -1
  63. package/lib/enum-display/enum-display.pipe.d.ts +2 -2
  64. package/lib/inline-edit/inline-edit.component.d.ts +22 -0
  65. package/lib/models/page-event.d.ts +3 -3
  66. package/lib/models/result-table-options.d.ts +2 -1
  67. package/lib/pagination/pagination.component.d.ts +1 -1
  68. package/lib/result-table/result-table.component.d.ts +9 -6
  69. package/lib/result-table/result-table.model.d.ts +5 -5
  70. package/lib/subject-display/subject-display.pipe.d.ts +1 -1
  71. package/lib/svg-icon/svg-icon.component.d.ts +1 -1
  72. package/package.json +1 -1
  73. package/public-api.d.ts +2 -0
package/README.md CHANGED
@@ -1,3 +1,3 @@
1
- # Components
2
-
1
+ # Components
2
+
3
3
  Components from Muzieh Design System.
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-6">
2
+ <path fill-rule="evenodd" d="M12.53 16.28a.75.75 0 0 1-1.06 0l-7.5-7.5a.75.75 0 0 1 1.06-1.06L12 14.69l6.97-6.97a.75.75 0 1 1 1.06 1.06l-7.5 7.5Z" clip-rule="evenodd" />
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-6">
2
+ <path fill-rule="evenodd" d="M11.47 7.72a.75.75 0 0 1 1.06 0l7.5 7.5a.75.75 0 1 1-1.06 1.06L12 9.31l-6.97 6.97a.75.75 0 0 1-1.06-1.06l7.5-7.5Z" clip-rule="evenodd" />
3
+ </svg>
Binary file
@@ -0,0 +1,15 @@
1
+ .details {
2
+ @apply my-2.5;
3
+ }
4
+ .summary {
5
+ @apply relative list-none;
6
+ }
7
+
8
+ .summary::after {
9
+ @apply w-4 h-4 inline-block absolute right-6 top-1/2 -translate-y-1/2;
10
+ content: url('/assets/icons/chevron-up-solid.svg');
11
+ }
12
+
13
+ .details[open] .summary::after {
14
+ content: url('/assets/icons/chevron-down-solid.svg');
15
+ }
@@ -0,0 +1,51 @@
1
+ .alert {
2
+ @apply rounded-sm p-5;
3
+ }
4
+
5
+ .alert-title {
6
+ @apply inline-block align-middle;
7
+ }
8
+
9
+ .alert-body {
10
+ @apply pb-0.5 ml-7;
11
+ }
12
+
13
+ .alert-icon {
14
+ @apply inline-block align-middle w-7 -mt-0.5;
15
+ }
16
+
17
+ .alert-info {
18
+ @apply bg-blue-50 text-primary;
19
+
20
+ .alert-icon {
21
+ @apply text-blue-800;
22
+ }
23
+ }
24
+
25
+ .alert-success {
26
+ @apply bg-green-50 text-success;
27
+
28
+ .alert-icon {
29
+ @apply text-green-800;
30
+ }
31
+ }
32
+
33
+ .alert-error {
34
+ @apply bg-red-50 text-danger;
35
+
36
+ .alert-icon {
37
+ @apply text-red-800;
38
+ }
39
+ }
40
+
41
+ .alert-warning {
42
+ @apply bg-yellow-50 text-warning;
43
+
44
+ .alert-icon {
45
+ @apply text-yellow-800;
46
+ }
47
+ }
48
+
49
+ .alert-footer {
50
+ @apply mt-3 ml-3;
51
+ }
@@ -0,0 +1,54 @@
1
+ @layer base {
2
+ h1 {
3
+ @apply text-2xl font-medium mt-8;
4
+ }
5
+
6
+ h2 {
7
+ @apply text-xl font-medium mt-8;
8
+ }
9
+
10
+ h3 {
11
+ @apply text-lg font-medium mt-8;
12
+ }
13
+
14
+ h4 {
15
+ @apply text-base font-medium;
16
+ }
17
+
18
+ h5 {
19
+ @apply text-sm font-semibold mt-5;
20
+ }
21
+
22
+ h6 {
23
+ @apply text-sm font-semibold mt-5;
24
+ }
25
+
26
+ h1,
27
+ h2,
28
+ h3,
29
+ h4,
30
+ h5,
31
+ h6 {
32
+ @apply mb-1;
33
+ }
34
+
35
+ a {
36
+ @apply text-blue-500 hover:text-blue-900 hover:underline;
37
+ }
38
+
39
+ p {
40
+ @apply my-2;
41
+ }
42
+
43
+ small {
44
+ @apply text-sm;
45
+ }
46
+
47
+ details summary {
48
+ cursor: pointer;
49
+ }
50
+
51
+ strong {
52
+ @apply font-medium;
53
+ }
54
+ }
@@ -0,0 +1,15 @@
1
+ @layer components {
2
+ .breadcrumbs ol {
3
+ @apply flex space-x-4;
4
+ }
5
+
6
+ .breadcrumbs li:not(:last-child):after {
7
+ content: '/';
8
+ @apply text-gray-400 pl-4;
9
+ }
10
+
11
+ .breadcrumbs,
12
+ .breadcrumbs a {
13
+ @apply text-gray-600;
14
+ }
15
+ }
@@ -0,0 +1,55 @@
1
+ .button {
2
+ @apply inline-flex px-4 py-2.5 font-medium items-center text-sm space-x-3 focus:outline-none focus:ring-2 focus:ring-offset-2 text-secondary;
3
+ }
4
+
5
+ .button-primary {
6
+ @apply text-white shadow-sm bg-blue-600 hover:bg-blue-700 focus:ring-blue-500 active:bg-blue-700;
7
+ }
8
+
9
+ .button-secondary {
10
+ @apply text-secondary shadow-sm bg-gray-200 hover:bg-gray-300 focus:ring-blue-500 active:bg-gray-300;
11
+ }
12
+
13
+ .button-danger {
14
+ @apply text-white shadow-sm bg-red-500 hover:bg-red-600 focus:ring-red-500 active:bg-red-600;
15
+ }
16
+
17
+ .button-warning {
18
+ @apply text-white shadow-sm bg-yellow-500 hover:bg-yellow-600 focus:ring-yellow-500 active:bg-yellow-600;
19
+ }
20
+
21
+ .button-link {
22
+ @apply hover:underline text-primary;
23
+ }
24
+
25
+ .button-list button:not(last-child) {
26
+ @apply mr-4 mb-2;
27
+ }
28
+
29
+ .button.loading {
30
+ @apply cursor-wait relative;
31
+ }
32
+
33
+ .button-loading-spinner {
34
+ @apply h-5 w-5 animate-spin m-auto;
35
+ }
36
+
37
+ .button-loading-overlay {
38
+ @apply absolute inset-0 flex items-center justify-center;
39
+ }
40
+
41
+ .button-secondary .button-loading-overlay {
42
+ @apply bg-gray-200;
43
+ }
44
+
45
+ .button-primary .button-loading-overlay {
46
+ @apply bg-blue-700;
47
+ }
48
+
49
+ .button-icon .icon {
50
+ @apply m-0;
51
+ }
52
+
53
+ .link-action {
54
+ @apply cursor-pointer;
55
+ }
File without changes
@@ -0,0 +1,23 @@
1
+ .mat-calendar-body-cell-content {
2
+ border-radius: 0px!important;
3
+ border-width: 0px!important;
4
+ border: 1px solid #E5E7EB!important;
5
+ width: 95%!important;
6
+ height: 95%!important;
7
+ }
8
+
9
+ .mat-calendar-body-selected {
10
+ @apply text-white shadow-sm bg-blue-600 hover:bg-blue-700 focus:ring-blue-500 active:bg-blue-700;
11
+ }
12
+
13
+ .mat-calendar-body-label {
14
+ opacity: 0;
15
+ }
16
+
17
+ .mat-calendar-body-label[colspan="7"] {
18
+ display: none;
19
+ }
20
+
21
+ .mat-calendar-body-disabled {
22
+ background-color: #F9FAFB!important;
23
+ }
@@ -0,0 +1,22 @@
1
+ @layer components {
2
+ .dl-horizontal dt,
3
+ .dl-horizontal dd {
4
+ @apply inline-block p-3;
5
+ }
6
+
7
+ .dl-horizontal dt {
8
+ @apply w-48 align-top font-medium;
9
+ }
10
+
11
+ .dl-horizontal .dl-item:nth-child(odd) {
12
+ @apply bg-gray-100;
13
+ }
14
+
15
+ .dl-stacked dt {
16
+ @apply text-gray-600 mt-2 tracking-wide text-sm;
17
+ }
18
+
19
+ .dl-stacked dd {
20
+ @apply mb-2;
21
+ }
22
+ }
@@ -0,0 +1,17 @@
1
+ .dropdown-menu {
2
+ display: none;
3
+ }
4
+
5
+ .dropdown-menu.show {
6
+ z-index: 1000;
7
+ float: left;
8
+ min-width: 10rem;
9
+ padding: 0.5rem 0;
10
+ display: block;
11
+ background-color: white;
12
+ }
13
+
14
+ .dropdown-item {
15
+ display: block;
16
+ padding: 0.5rem;
17
+ }
@@ -0,0 +1,179 @@
1
+ .form {
2
+ @apply max-w-md;
3
+
4
+ // TODO
5
+ h1,
6
+ h2,
7
+ h3,
8
+ h4,
9
+ h5,
10
+ h6 {
11
+ @apply mt-3 mb-0;
12
+ }
13
+
14
+ header {
15
+ @apply mb-2;
16
+ }
17
+
18
+ .description {
19
+ @apply text-gray-600 text-sm;
20
+ }
21
+
22
+ .footer {
23
+ @apply mt-4 mb-3;
24
+ }
25
+ }
26
+
27
+ .field {
28
+ @apply block py-1 text-sm;
29
+
30
+ .help-text {
31
+ @apply text-gray-500 block mt-1;
32
+ }
33
+ }
34
+
35
+ .field-label {
36
+ @apply text-gray-600 font-medium;
37
+ }
38
+
39
+ .field-checkbox {
40
+ @apply flex items-center;
41
+
42
+ .field-label {
43
+ @apply text-current font-normal pl-2 text-base;
44
+ }
45
+ }
46
+
47
+ .field-control:not([type='checkbox']) {
48
+ @apply mt-1 block w-full;
49
+ }
50
+
51
+ .fieldset {
52
+ @apply mt-6;
53
+
54
+ legend {
55
+ @apply text-gray-700 tracking-wide uppercase font-medium text-sm;
56
+ }
57
+ }
58
+
59
+ .option-list {
60
+ @apply block py-1;
61
+
62
+ legend {
63
+ @apply text-gray-600 text-sm font-medium;
64
+ }
65
+ }
66
+
67
+ .form-message {
68
+ @apply p-1 block;
69
+
70
+ // this is temporary
71
+ &.success {
72
+ @apply text-success;
73
+ }
74
+ &.success svg {
75
+ @apply text-success inline-block;
76
+ }
77
+ &.failed svg {
78
+ @apply text-danger inline-block;
79
+ }
80
+ }
81
+
82
+ .field-error {
83
+ @apply mt-1 block text-danger;
84
+ }
85
+
86
+ .form {
87
+ .ng-submitted .ng-invalid:not(:focus),
88
+ .ng-touched.ng-invalid:not(:focus) {
89
+ @apply border-danger;
90
+ }
91
+ }
92
+
93
+ /*
94
+ .field-control-addon {
95
+ @apply px-3 inline-flex flex-col flex-shrink-0 items-center justify-center text-secondary;
96
+
97
+ &.field-control {
98
+ @apply w-full;
99
+ }
100
+
101
+ .button {
102
+ @apply py-1 h-full -ml-2.5 -mr-3;
103
+ }
104
+ }
105
+
106
+ .field-control-group {
107
+ @apply flex items-stretch h-full border border-gray-500 shadow;
108
+
109
+ .field-control {
110
+ @apply grow m-0 border-transparent outline-0;
111
+ }
112
+
113
+ /*
114
+ .field-control:focus {
115
+ @apply border border-primary;
116
+ }
117
+
118
+ &:focus-within {
119
+ @apply border-primary outline-2 outline outline-offset-2;
120
+ }
121
+
122
+ &.invalid {
123
+ @apply border-danger;
124
+ }
125
+
126
+ .ng-submitted .field-control.ng-invalid, .field-control.ng-touched.ng-invalid {
127
+ @apply border-0;
128
+ }
129
+ }*/
130
+
131
+
132
+ .field-control-addon {
133
+ @apply inline-flex flex-col flex-shrink-0 items-center justify-center text-secondary px-3;
134
+
135
+ &.field-control {
136
+ @apply w-full;
137
+ }
138
+
139
+ .button {
140
+ @apply py-1 h-full -mr-3;
141
+ }
142
+ }
143
+
144
+ .field-control-group {
145
+ @apply flex items-stretch h-full border border-gray-500 shadow;
146
+
147
+ .field-control {
148
+ box-shadow: none;
149
+ @apply grow m-0 border-0 outline-0;
150
+ }
151
+
152
+ &:focus-within {
153
+ @apply outline outline-1 outline-primary;
154
+ }
155
+
156
+ &.invalid:not(:focus-within) {
157
+ @apply border-danger;
158
+ }
159
+
160
+ > *:not(:first-child).field-control-addon {
161
+ @apply pl-0;
162
+ }
163
+
164
+ > *:not(:last-child).field-control-addon {
165
+ @apply pr-0;
166
+ }
167
+ }
168
+
169
+ .field-control-combo {
170
+ @apply flex items-stretch;
171
+
172
+ .field-control {
173
+ @apply grow border;
174
+ }
175
+
176
+ .button {
177
+ @apply -mx-2 mt-1;
178
+ }
179
+ }
@@ -0,0 +1,16 @@
1
+ .infinite-scroll-container {
2
+ .scroll-item {
3
+ @apply cursor-pointer p-2 border-b border-gray-300;
4
+ &:hover {
5
+ @apply bg-blue-100;
6
+ }
7
+ }
8
+
9
+ .scroll-item-selected {
10
+ @apply bg-blue-100;
11
+ }
12
+
13
+ .scroll-spinner-container {
14
+ @apply mt-5;
15
+ }
16
+ }
@@ -0,0 +1,57 @@
1
+
2
+ // Custom Theming for Angular Material
3
+ // For more information: https://material.angular.io/guide/theming
4
+ @use '@angular/material' as mat;
5
+ // Plus imports for other components in your app.
6
+
7
+ // Include the common styles for Angular Material. We include this here so that you only
8
+ // have to load a single css file for Angular Material in your app.
9
+ // Be sure that you only ever include this mixin once!
10
+ // TODO(v15): As of v15 mat.legacy-core no longer includes default typography styles.
11
+ // The following line adds:
12
+ // 1. Default typography styles for all components
13
+ // 2. Styles for typography hierarchy classes (e.g. .mat-headline-1)
14
+ // If you specify typography styles for the components you use elsewhere, you should delete this line.
15
+ // If you don't need the default component typographies but still want the hierarchy styles,
16
+ // you can delete this line and instead use:
17
+ // `@include mat.legacy-typography-hierarchy(mat.define-typography-config());`
18
+ /* TODO(mdc-migration): Remove all-legacy-component-typographies once all legacy components are migrated*/
19
+ // @include mat.all-legacy-component-typographies();
20
+ @include mat.all-component-typographies();
21
+ /* TODO(mdc-migration): Remove legacy-core once all legacy components are migrated*/
22
+ // @include mat.legacy-core();
23
+ @include mat.core();
24
+
25
+ // Define the palettes for your theme using the Material Design palettes available in palette.scss
26
+ // (imported above). For each palette, you can optionally specify a default, lighter, and darker
27
+ // hue. Available color palettes: https://material.io/design/color/
28
+ $color-primary: mat.m2-define-palette(mat.$m2-indigo-palette);
29
+ $color-accent: mat.m2-define-palette(mat.$m2-pink-palette, A200, A100, A400);
30
+
31
+ // The warn palette is optional (defaults to red).
32
+ $color-warn: mat.m2-define-palette(mat.$m2-red-palette);
33
+
34
+ // Create the theme object. A theme consists of configurations for individual
35
+ // theming systems such as "color" or "typography".
36
+ $muzieh-theme: mat.m2-define-light-theme((
37
+ color: (
38
+ primary: $color-primary,
39
+ accent: $color-accent,
40
+ warn: $color-warn,
41
+ )
42
+ ));
43
+
44
+ // Include theme styles for core and each component used in your app.
45
+ // Alternatively, you can import and @include the theme mixins for each component
46
+ // that you are using.
47
+ /* TODO(mdc-migration): Remove all-legacy-component-themes once all legacy components are migrated*/
48
+ // @include mat.all-legacy-component-themes($muzieh-theme);
49
+ @include mat.all-component-themes($muzieh-theme);
50
+
51
+ .mat-mdc-menu-panel {
52
+ @apply min-h-0 #{!important};
53
+ }
54
+
55
+ .mat-mdc-menu-item {
56
+ @apply text-gray-700 block px-4 py-2 text-sm h-9 leading-3 #{!important};
57
+ }