mithril-materialized 2.0.0-beta.11 → 2.0.0-beta.14

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.
package/dist/index.css CHANGED
@@ -7063,6 +7063,332 @@ label {
7063
7063
  color: #9e9e9e;
7064
7064
  }
7065
7065
 
7066
+ /* Enhanced Range Sliders
7067
+ ========================================================================== */
7068
+ .range-slider.vertical {
7069
+ -webkit-appearance: none;
7070
+ -moz-appearance: none;
7071
+ appearance: none;
7072
+ writing-mode: vertical-lr;
7073
+ direction: rtl;
7074
+ width: 6px;
7075
+ transform: none;
7076
+ }
7077
+ .range-slider.vertical::-webkit-slider-runnable-track {
7078
+ width: 6px;
7079
+ height: 100%;
7080
+ }
7081
+ .range-slider.vertical::-webkit-slider-thumb {
7082
+ -webkit-appearance: none;
7083
+ width: 14px;
7084
+ height: 14px;
7085
+ margin-left: -4px;
7086
+ margin-top: 0;
7087
+ }
7088
+ .range-slider.vertical::-moz-range-track {
7089
+ width: 6px;
7090
+ height: 100%;
7091
+ }
7092
+ .range-slider.vertical::-moz-range-thumb {
7093
+ width: 14px;
7094
+ height: 14px;
7095
+ margin-left: -12px;
7096
+ margin-top: 0;
7097
+ }
7098
+ .range-slider.disabled {
7099
+ opacity: 0.6;
7100
+ cursor: not-allowed;
7101
+ }
7102
+ .range-slider.disabled::-webkit-slider-thumb {
7103
+ cursor: not-allowed;
7104
+ }
7105
+ .range-slider.disabled::-moz-range-thumb {
7106
+ cursor: not-allowed;
7107
+ }
7108
+
7109
+ .single-range-slider {
7110
+ outline: none;
7111
+ }
7112
+ .single-range-slider.horizontal {
7113
+ height: 40px;
7114
+ position: relative;
7115
+ display: flex;
7116
+ align-items: center;
7117
+ }
7118
+ .single-range-slider.vertical {
7119
+ width: 40px;
7120
+ position: relative;
7121
+ display: flex;
7122
+ flex-direction: column;
7123
+ align-items: center;
7124
+ height: 100%;
7125
+ }
7126
+ .single-range-slider .track {
7127
+ background-color: var(--mm-border-color, #c2c0c2);
7128
+ border-radius: 2px;
7129
+ }
7130
+ .single-range-slider .track.horizontal {
7131
+ position: absolute;
7132
+ top: 25%;
7133
+ left: 0;
7134
+ transform: translateY(-50%);
7135
+ width: 100%;
7136
+ height: 4px;
7137
+ }
7138
+ .single-range-slider .track.vertical {
7139
+ position: absolute;
7140
+ bottom: 10px;
7141
+ width: 4px;
7142
+ height: 100%;
7143
+ }
7144
+ .single-range-slider .range-progress {
7145
+ background-color: var(--mm-primary-color, #26a69a);
7146
+ border-radius: 2px;
7147
+ }
7148
+ .single-range-slider .range-progress.horizontal {
7149
+ position: absolute;
7150
+ top: 25%;
7151
+ transform: translateY(-50%);
7152
+ height: 4px;
7153
+ }
7154
+ .single-range-slider .range-progress.vertical {
7155
+ position: absolute;
7156
+ bottom: 10px;
7157
+ width: 4px;
7158
+ }
7159
+ .single-range-slider .thumb {
7160
+ background-color: var(--mm-primary-color, #26a69a);
7161
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
7162
+ width: 20px;
7163
+ height: 20px;
7164
+ border-radius: 50%;
7165
+ cursor: pointer;
7166
+ outline: none;
7167
+ }
7168
+ .single-range-slider .thumb.horizontal {
7169
+ position: absolute;
7170
+ transform: translateY(-50%);
7171
+ }
7172
+ .single-range-slider .thumb.vertical {
7173
+ position: absolute;
7174
+ }
7175
+ .single-range-slider .thumb:hover {
7176
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
7177
+ }
7178
+ .single-range-slider .thumb .value-tooltip {
7179
+ position: absolute;
7180
+ background: var(--mm-primary-color, #26a69a);
7181
+ color: white;
7182
+ padding: 4px 8px;
7183
+ border-radius: 4px;
7184
+ font-size: 12px;
7185
+ white-space: nowrap;
7186
+ min-width: 24px;
7187
+ text-align: center;
7188
+ pointer-events: none;
7189
+ z-index: 20;
7190
+ }
7191
+ .single-range-slider .thumb .value-tooltip.top {
7192
+ bottom: 100%;
7193
+ left: 50%;
7194
+ transform: translateX(-50%);
7195
+ margin-bottom: 8px;
7196
+ }
7197
+ .single-range-slider .thumb .value-tooltip.top::after {
7198
+ content: "";
7199
+ position: absolute;
7200
+ top: 100%;
7201
+ left: 50%;
7202
+ transform: translateX(-50%);
7203
+ border: 4px solid transparent;
7204
+ border-top-color: var(--mm-primary-color, #26a69a);
7205
+ }
7206
+ .single-range-slider .thumb .value-tooltip.bottom {
7207
+ top: 100%;
7208
+ left: 50%;
7209
+ transform: translateX(-50%);
7210
+ margin-top: 8px;
7211
+ }
7212
+ .single-range-slider .thumb .value-tooltip.bottom::after {
7213
+ content: "";
7214
+ position: absolute;
7215
+ bottom: 100%;
7216
+ left: 50%;
7217
+ transform: translateX(-50%);
7218
+ border: 4px solid transparent;
7219
+ border-bottom-color: var(--mm-primary-color, #26a69a);
7220
+ }
7221
+ .single-range-slider .thumb .value-tooltip.left {
7222
+ right: 100%;
7223
+ top: 50%;
7224
+ transform: translateY(-50%);
7225
+ margin-right: 8px;
7226
+ }
7227
+ .single-range-slider .thumb .value-tooltip.left::after {
7228
+ content: "";
7229
+ position: absolute;
7230
+ top: 50%;
7231
+ left: 100%;
7232
+ transform: translateY(-50%);
7233
+ border: 4px solid transparent;
7234
+ border-left-color: var(--mm-primary-color, #26a69a);
7235
+ }
7236
+ .single-range-slider .thumb .value-tooltip.right {
7237
+ left: 100%;
7238
+ top: 50%;
7239
+ transform: translateY(-50%);
7240
+ margin-left: 8px;
7241
+ }
7242
+ .single-range-slider .thumb .value-tooltip.right::after {
7243
+ content: "";
7244
+ position: absolute;
7245
+ top: 50%;
7246
+ right: 100%;
7247
+ transform: translateY(-50%);
7248
+ border: 4px solid transparent;
7249
+ border-right-color: var(--mm-primary-color, #26a69a);
7250
+ }
7251
+ .single-range-slider:focus .thumb, .single-range-slider:focus-visible .thumb {
7252
+ box-shadow: 0 0 0 3px var(--mm-primary-color-alpha-30, rgba(38, 166, 154, 0.3)), 0 4px 8px rgba(0, 0, 0, 0.2);
7253
+ }
7254
+ .single-range-slider:focus .thumb:hover, .single-range-slider:focus-visible .thumb:hover {
7255
+ box-shadow: 0 0 0 3px var(--mm-primary-color-alpha-30, rgba(38, 166, 154, 0.3)), 0 4px 8px rgba(0, 0, 0, 0.3);
7256
+ }
7257
+
7258
+ .double-range-slider {
7259
+ outline: none;
7260
+ border-radius: 4px;
7261
+ }
7262
+ .double-range-slider.horizontal {
7263
+ height: 40px;
7264
+ position: relative;
7265
+ display: flex;
7266
+ align-items: center;
7267
+ }
7268
+ .double-range-slider.vertical {
7269
+ width: 40px;
7270
+ position: relative;
7271
+ display: flex;
7272
+ flex-direction: column;
7273
+ align-items: center;
7274
+ }
7275
+ .double-range-slider .track {
7276
+ background-color: var(--mm-border-color, #c2c0c2);
7277
+ border-radius: 2px;
7278
+ }
7279
+ .double-range-slider .track.horizontal {
7280
+ position: absolute;
7281
+ top: 50%;
7282
+ left: 0;
7283
+ transform: translateY(-50%);
7284
+ width: 100%;
7285
+ height: 4px;
7286
+ }
7287
+ .double-range-slider .track.vertical {
7288
+ position: absolute;
7289
+ left: 50%;
7290
+ top: 0;
7291
+ transform: translateX(-50%);
7292
+ width: 4px;
7293
+ height: 100%;
7294
+ }
7295
+ .double-range-slider .range {
7296
+ background-color: var(--mm-primary-color, #26a69a);
7297
+ border-radius: 2px;
7298
+ }
7299
+ .double-range-slider .range.horizontal {
7300
+ position: absolute;
7301
+ top: 50%;
7302
+ transform: translateY(-50%);
7303
+ height: 4px;
7304
+ }
7305
+ .double-range-slider .range.vertical {
7306
+ position: absolute;
7307
+ left: 50%;
7308
+ transform: translateX(-50%);
7309
+ width: 4px;
7310
+ }
7311
+ .double-range-slider .thumb {
7312
+ background-color: var(--mm-primary-color, #26a69a);
7313
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
7314
+ width: 20px;
7315
+ height: 20px;
7316
+ border-radius: 50%;
7317
+ cursor: pointer;
7318
+ outline: none;
7319
+ }
7320
+ .double-range-slider .thumb.horizontal {
7321
+ position: absolute;
7322
+ top: 50%;
7323
+ transform: translateY(-50%);
7324
+ }
7325
+ .double-range-slider .thumb.vertical {
7326
+ position: absolute;
7327
+ left: 50%;
7328
+ transform: translateX(-50%);
7329
+ }
7330
+ .double-range-slider .thumb:hover {
7331
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
7332
+ }
7333
+ .double-range-slider .thumb .value {
7334
+ position: absolute;
7335
+ background: var(--mm-primary-color, #26a69a);
7336
+ color: white;
7337
+ padding: 2px 6px;
7338
+ border-radius: 4px;
7339
+ font-size: 12px;
7340
+ white-space: nowrap;
7341
+ min-width: 24px;
7342
+ text-align: center;
7343
+ pointer-events: none;
7344
+ z-index: 20;
7345
+ }
7346
+ .double-range-slider .thumb .value.horizontal {
7347
+ top: -30px;
7348
+ left: 50%;
7349
+ transform: translateX(-50%);
7350
+ }
7351
+ .double-range-slider .thumb .value.horizontal::after {
7352
+ content: "";
7353
+ position: absolute;
7354
+ top: 100%;
7355
+ left: 50%;
7356
+ transform: translateX(-50%);
7357
+ border: 4px solid transparent;
7358
+ border-top-color: var(--mm-primary-color, #26a69a);
7359
+ }
7360
+ .double-range-slider .thumb .value.vertical {
7361
+ top: 50%;
7362
+ left: -35px;
7363
+ transform: translateY(-50%);
7364
+ }
7365
+ .double-range-slider .thumb .value.vertical::after {
7366
+ content: "";
7367
+ position: absolute;
7368
+ top: 50%;
7369
+ left: 100%;
7370
+ transform: translateY(-50%);
7371
+ border: 4px solid transparent;
7372
+ border-left-color: var(--mm-primary-color, #26a69a);
7373
+ }
7374
+ .double-range-slider:focus .thumb.min-thumb.active, .double-range-slider:focus .thumb.max-thumb.active, .double-range-slider:focus-visible .thumb.min-thumb.active, .double-range-slider:focus-visible .thumb.max-thumb.active {
7375
+ box-shadow: 0 0 0 3px var(--mm-primary-color-alpha-30, rgba(38, 166, 154, 0.3)), 0 4px 8px rgba(0, 0, 0, 0.2);
7376
+ }
7377
+ .double-range-slider:focus .thumb.min-thumb.active:hover, .double-range-slider:focus .thumb.max-thumb.active:hover, .double-range-slider:focus-visible .thumb.min-thumb.active:hover, .double-range-slider:focus-visible .thumb.max-thumb.active:hover {
7378
+ box-shadow: 0 0 0 3px var(--mm-primary-color-alpha-30, rgba(38, 166, 154, 0.3)), 0 4px 8px rgba(0, 0, 0, 0.3);
7379
+ }
7380
+
7381
+ .range-field.vertical {
7382
+ display: flex;
7383
+ flex-direction: column;
7384
+ align-items: center;
7385
+ min-height: 100px;
7386
+ padding-top: 20px;
7387
+ }
7388
+ .range-field.vertical .double-range-slider {
7389
+ height: 100%;
7390
+ }
7391
+
7066
7392
  /***************
7067
7393
  Nav List
7068
7394
  ***************/
@@ -9606,4 +9932,285 @@ nav .theme-toggle:focus {
9606
9932
  overflow: hidden;
9607
9933
  text-overflow: ellipsis;
9608
9934
  white-space: nowrap;
9935
+ }
9936
+
9937
+ /* TreeView Component Styles */
9938
+ :root {
9939
+ --tree-node-height: 36px;
9940
+ --tree-indent-size: 24px;
9941
+ --tree-connector-width: 1px;
9942
+ --tree-expand-icon-size: 20px;
9943
+ --tree-bg-color: #ffffff;
9944
+ --tree-text-color: #212121;
9945
+ --tree-text-color-secondary: #757575;
9946
+ --tree-border-color: #e0e0e0;
9947
+ --tree-connector-color: #bdbdbd;
9948
+ --tree-hover-bg: #f5f5f5;
9949
+ --tree-selected-bg: #e3f2fd;
9950
+ --tree-selected-color: #1976d2;
9951
+ --tree-focused-outline: #2196f3;
9952
+ --tree-disabled-color: #9e9e9e;
9953
+ --tree-disabled-bg: #fafafa;
9954
+ }
9955
+
9956
+ [data-theme=dark],
9957
+ .dark-theme,
9958
+ body.dark {
9959
+ --tree-bg-color: #1e1e1e;
9960
+ --tree-text-color: #e0e0e0;
9961
+ --tree-text-color-secondary: #a0a0a0;
9962
+ --tree-border-color: #333333;
9963
+ --tree-connector-color: #555555;
9964
+ --tree-hover-bg: #2d2d2d;
9965
+ --tree-selected-bg: #282a45;
9966
+ --tree-selected-color: #90caf9;
9967
+ --tree-focused-outline: #64b5f6;
9968
+ --tree-disabled-color: #616161;
9969
+ --tree-disabled-bg: #2d2d2d;
9970
+ }
9971
+
9972
+ .tree-view {
9973
+ background-color: var(--tree-bg-color);
9974
+ color: var(--tree-text-color);
9975
+ border: 1px solid var(--tree-border-color);
9976
+ border-radius: 4px;
9977
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
9978
+ font-size: 14px;
9979
+ line-height: 1.5;
9980
+ }
9981
+ .tree-view .tree-root {
9982
+ list-style: none;
9983
+ margin: 0;
9984
+ padding: 0;
9985
+ }
9986
+ .tree-view .tree-node {
9987
+ list-style: none;
9988
+ position: relative;
9989
+ margin: 0;
9990
+ padding: 0;
9991
+ }
9992
+ .tree-view .tree-node.disabled {
9993
+ opacity: 0.6;
9994
+ cursor: not-allowed;
9995
+ }
9996
+ .tree-view .tree-node.disabled .tree-node-content {
9997
+ pointer-events: none;
9998
+ color: var(--tree-disabled-color);
9999
+ background-color: var(--tree-disabled-bg);
10000
+ }
10001
+ .tree-view .tree-node-content {
10002
+ display: flex;
10003
+ align-items: center;
10004
+ min-height: var(--tree-node-height);
10005
+ padding: 4px 8px;
10006
+ cursor: pointer;
10007
+ position: relative;
10008
+ transition: all 0.2s ease;
10009
+ -webkit-user-select: none;
10010
+ -moz-user-select: none;
10011
+ user-select: none;
10012
+ }
10013
+ .tree-view .tree-node-content:hover:not(:disabled) {
10014
+ background-color: var(--tree-hover-bg);
10015
+ }
10016
+ .tree-view .tree-node.selected .tree-node-content {
10017
+ background-color: var(--tree-selected-bg);
10018
+ color: var(--tree-selected-color);
10019
+ font-weight: 500;
10020
+ }
10021
+ .tree-view .tree-node.focused .tree-node-content {
10022
+ background-color: var(--tree-hover-bg);
10023
+ border-right: 1px solid var(--tree-focused-outline);
10024
+ }
10025
+ .tree-view .tree-node.selected.focused .tree-node-content {
10026
+ background-color: var(--tree-selected-bg);
10027
+ }
10028
+ .tree-view.show-connectors .tree-connectors {
10029
+ position: absolute;
10030
+ top: 0;
10031
+ left: 0;
10032
+ width: 100%;
10033
+ height: 100%;
10034
+ pointer-events: none;
10035
+ z-index: 0;
10036
+ }
10037
+ .tree-view.show-connectors .tree-connector {
10038
+ position: absolute;
10039
+ top: 0;
10040
+ height: 100%;
10041
+ width: var(--tree-connector-width);
10042
+ background-color: var(--tree-connector-color);
10043
+ }
10044
+ .tree-view.show-connectors .tree-connector::after {
10045
+ content: "";
10046
+ position: absolute;
10047
+ top: calc(var(--tree-node-height) / 2);
10048
+ left: 0;
10049
+ width: 12px;
10050
+ height: var(--tree-connector-width);
10051
+ background-color: var(--tree-connector-color);
10052
+ }
10053
+ .tree-view.show-connectors .tree-node:last-child .tree-node-content .tree-connector:last-child {
10054
+ height: calc(var(--tree-node-height) / 2 + 2px);
10055
+ }
10056
+ .tree-view.show-connectors .tree-node:not(.tree-last-in-branch) .tree-node-content .tree-connector {
10057
+ height: 100% !important;
10058
+ }
10059
+ .tree-view .tree-expand-icon {
10060
+ display: flex;
10061
+ align-items: center;
10062
+ justify-content: center;
10063
+ width: var(--tree-expand-icon-size);
10064
+ height: var(--tree-expand-icon-size);
10065
+ margin-right: 8px;
10066
+ margin-left: 2px;
10067
+ cursor: pointer;
10068
+ border-radius: 3px;
10069
+ transition: all 0.2s ease;
10070
+ flex-shrink: 0;
10071
+ }
10072
+ .tree-view .tree-expand-icon:hover {
10073
+ background-color: var(--tree-hover-bg);
10074
+ }
10075
+ .tree-view .tree-expand-icon.plus-minus .tree-plus-minus {
10076
+ display: flex;
10077
+ align-items: center;
10078
+ justify-content: center;
10079
+ width: 16px;
10080
+ height: 16px;
10081
+ border: 1px solid var(--tree-connector-color);
10082
+ border-radius: 2px;
10083
+ background-color: var(--tree-bg-color);
10084
+ font-size: 12px;
10085
+ font-weight: bold;
10086
+ line-height: 1;
10087
+ transition: all 0.2s ease;
10088
+ }
10089
+ .tree-view .tree-expand-icon.triangle .tree-triangle {
10090
+ font-size: 10px;
10091
+ transition: transform 0.2s ease;
10092
+ color: var(--tree-text-color-secondary);
10093
+ }
10094
+ .tree-view .tree-expand-icon.triangle .tree-triangle.expanded {
10095
+ transform: rotate(90deg);
10096
+ }
10097
+ .tree-view .tree-expand-icon .tree-caret-icon,
10098
+ .tree-view .tree-expand-icon .tree-chevron-icon {
10099
+ transition: transform 0.2s ease;
10100
+ }
10101
+ .tree-view .tree-expand-spacer {
10102
+ width: var(--tree-expand-icon-size);
10103
+ height: var(--tree-expand-icon-size);
10104
+ margin-right: 8px;
10105
+ margin-left: 2px;
10106
+ flex-shrink: 0;
10107
+ }
10108
+ .tree-view .tree-selection-indicator {
10109
+ margin-right: 8px;
10110
+ flex-shrink: 0;
10111
+ }
10112
+ .tree-view .tree-selection-indicator input[type=checkbox] {
10113
+ width: 16px;
10114
+ height: 16px;
10115
+ margin: 0;
10116
+ cursor: pointer;
10117
+ accent-color: var(--tree-selected-color);
10118
+ }
10119
+ .tree-view .tree-node-icon {
10120
+ margin-right: 8px;
10121
+ font-size: 18px;
10122
+ color: var(--tree-text-color-secondary);
10123
+ flex-shrink: 0;
10124
+ }
10125
+ .tree-view .tree-node-label {
10126
+ flex: 1;
10127
+ overflow: hidden;
10128
+ text-overflow: ellipsis;
10129
+ white-space: nowrap;
10130
+ }
10131
+ .tree-view .tree-children {
10132
+ list-style: none;
10133
+ margin: 0;
10134
+ padding: 0;
10135
+ overflow: hidden;
10136
+ transition: all 0.3s ease;
10137
+ }
10138
+ .tree-view .tree-children.tree-collapsing {
10139
+ max-height: 0;
10140
+ opacity: 0;
10141
+ }
10142
+ .tree-view .tree-children.tree-expanding {
10143
+ max-height: 1000px;
10144
+ opacity: 1;
10145
+ }
10146
+
10147
+ .tree-node .tree-children {
10148
+ animation-duration: 0.3s;
10149
+ animation-fill-mode: both;
10150
+ animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
10151
+ }
10152
+
10153
+ @keyframes tree-expand {
10154
+ from {
10155
+ max-height: 0;
10156
+ opacity: 0;
10157
+ }
10158
+ to {
10159
+ max-height: 1000px;
10160
+ opacity: 1;
10161
+ }
10162
+ }
10163
+ @keyframes tree-collapse {
10164
+ from {
10165
+ max-height: 1000px;
10166
+ opacity: 1;
10167
+ }
10168
+ to {
10169
+ max-height: 0;
10170
+ opacity: 0;
10171
+ }
10172
+ }
10173
+ @media (max-width: 768px) {
10174
+ .tree-view {
10175
+ --tree-node-height: 40px;
10176
+ --tree-indent-size: 20px;
10177
+ }
10178
+ .tree-view .tree-node-content {
10179
+ padding: 0 12px;
10180
+ }
10181
+ }
10182
+ @media (prefers-contrast: high) {
10183
+ .tree-view {
10184
+ --tree-border-color: #000000;
10185
+ --tree-connector-color: #000000;
10186
+ --tree-focused-outline: #0066cc;
10187
+ }
10188
+ .tree-view .tree-node-content:focus {
10189
+ outline-width: 3px;
10190
+ }
10191
+ }
10192
+ @media (prefers-reduced-motion: reduce) {
10193
+ .tree-view .tree-children,
10194
+ .tree-view .tree-expand-icon .tree-triangle,
10195
+ .tree-view .tree-expand-icon .tree-caret-icon,
10196
+ .tree-view .tree-expand-icon .tree-plus-minus,
10197
+ .tree-view .tree-node-content {
10198
+ transition: none;
10199
+ animation: none;
10200
+ }
10201
+ }
10202
+ @media print {
10203
+ .tree-view {
10204
+ --tree-bg-color: white;
10205
+ --tree-text-color: black;
10206
+ --tree-border-color: black;
10207
+ }
10208
+ .tree-view .tree-expand-icon {
10209
+ display: none;
10210
+ }
10211
+ .tree-view .tree-children {
10212
+ display: block !important;
10213
+ opacity: 1 !important;
10214
+ max-height: none !important;
10215
+ }
9609
10216
  }
package/dist/index.d.ts CHANGED
@@ -13,8 +13,10 @@ export * from './floating-action-button';
13
13
  export * from './icon';
14
14
  export * from './input-options';
15
15
  export * from './input';
16
+ export * from './range-slider';
16
17
  export * from './label';
17
18
  export * from './material-box';
19
+ export * from './material-icon';
18
20
  export * from './modal';
19
21
  export * from './option';
20
22
  export * from './pagination';
@@ -36,4 +38,5 @@ export * from './file-upload';
36
38
  export * from './sidenav';
37
39
  export * from './breadcrumb';
38
40
  export * from './wizard';
41
+ export * from './treeview';
39
42
  export * from './types';