@things-factory/shell 7.0.1-beta.8 → 7.0.1-rc.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.
- package/client/themes/app-theme.css +24 -33
- package/client/themes/calendar-theme.css +59 -0
- package/client/themes/dark.css +0 -100
- package/client/themes/grist-theme.css +8 -10
- package/client/themes/layout-theme.css +1 -5
- package/client/themes/light.css +0 -100
- package/client/themes/oops-theme.css +2 -2
- package/client/themes/report-theme.css +47 -0
- package/client/themes/state-color.css +1 -1
- package/dist-server/initializers/database.js +6 -6
- package/dist-server/initializers/database.js.map +1 -1
- package/dist-server/middlewares/domain-middleware.js +1 -2
- package/dist-server/middlewares/domain-middleware.js.map +1 -1
- package/dist-server/middlewares/index.js +1 -2
- package/dist-server/middlewares/index.js.map +1 -1
- package/dist-server/pubsub.js +0 -1
- package/dist-server/pubsub.js.map +1 -1
- package/dist-server/routers/global-router.js.map +1 -1
- package/dist-server/schema.js +1 -2
- package/dist-server/schema.js.map +1 -1
- package/dist-server/server-dev.js.map +1 -1
- package/dist-server/server.js.map +1 -1
- package/dist-server/service/attribute-set/attribute-set-item-type.js +5 -5
- package/dist-server/service/attribute-set/attribute-set-item-type.js.map +1 -1
- package/dist-server/service/attribute-set/attribute-set-mutation.js +2 -2
- package/dist-server/service/attribute-set/attribute-set-mutation.js.map +1 -1
- package/dist-server/service/attribute-set/attribute-set-query.js +3 -3
- package/dist-server/service/attribute-set/attribute-set-query.js.map +1 -1
- package/dist-server/service/attribute-set/attribute-set-type.js +6 -6
- package/dist-server/service/attribute-set/attribute-set-type.js.map +1 -1
- package/dist-server/service/attribute-set/attribute-set.js +2 -2
- package/dist-server/service/attribute-set/attribute-set.js.map +1 -1
- package/dist-server/service/common-types/list-param.js +9 -9
- package/dist-server/service/common-types/list-param.js.map +1 -1
- package/dist-server/service/common-types/log.js +2 -2
- package/dist-server/service/common-types/log.js.map +1 -1
- package/dist-server/service/common-types/object-ref.js +2 -2
- package/dist-server/service/common-types/object-ref.js.map +1 -1
- package/dist-server/service/common-types/scalar-any.js.map +1 -1
- package/dist-server/service/common-types/scalar-date.js.map +1 -1
- package/dist-server/service/directive-transaction/transaction.js.map +1 -1
- package/dist-server/service/domain/{domain-Mutation.js → domain-mutation.js} +3 -3
- package/dist-server/service/domain/domain-mutation.js.map +1 -0
- package/dist-server/service/domain/domain-query.js +3 -3
- package/dist-server/service/domain/domain-query.js.map +1 -1
- package/dist-server/service/domain/domain-types.js +6 -6
- package/dist-server/service/domain/domain-types.js.map +1 -1
- package/dist-server/service/domain/domain.js +6 -7
- package/dist-server/service/domain/domain.js.map +1 -1
- package/dist-server/service/domain/index.d.ts +1 -1
- package/dist-server/service/domain/index.js +2 -2
- package/dist-server/service/domain/index.js.map +1 -1
- package/dist-server/service/index.d.ts +1 -1
- package/dist-server/service/subscription-data/data-resolver.js +2 -2
- package/dist-server/service/subscription-data/data-resolver.js.map +1 -1
- package/dist-server/service/subscription-data/data-types.js +2 -2
- package/dist-server/service/subscription-data/data-types.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/dist-server/typeorm/encrypt-transform.js +1 -1
- package/dist-server/typeorm/encrypt-transform.js.map +1 -1
- package/dist-server/typeorm/get-data-encryption-key.js.map +1 -1
- package/dist-server/typeorm/json5-transform.js.map +1 -1
- package/dist-server/utils/condition-builder.js.map +1 -1
- package/dist-server/utils/get-domain.d.ts +0 -1
- package/dist-server/utils/get-domain.js +7 -8
- package/dist-server/utils/get-domain.js.map +1 -1
- package/dist-server/utils/get-query-builder-from-list-params.js +1 -2
- package/dist-server/utils/get-query-builder-from-list-params.js.map +1 -1
- package/dist-server/utils/get-times-for-period.js +2 -3
- package/dist-server/utils/get-times-for-period.js.map +1 -1
- package/dist-server/utils/list-param-adjuster.js +1 -2
- package/dist-server/utils/list-param-adjuster.js.map +1 -1
- package/dist-server/utils/list-params-converter.js +1 -2
- package/dist-server/utils/list-params-converter.js.map +1 -1
- package/dist-server/utils/list-query-builder.js.map +1 -1
- package/dist-server/utils/publish-progress.js +1 -2
- package/dist-server/utils/publish-progress.js.map +1 -1
- package/package.json +14 -14
- package/server/service/attribute-set/attribute-set-query.ts +1 -1
- package/server/service/domain/domain-query.ts +1 -1
- package/server/service/domain/index.ts +1 -1
- package/dist-server/service/domain/domain-Mutation.js.map +0 -1
- /package/dist-server/service/domain/{domain-Mutation.d.ts → domain-mutation.d.ts} +0 -0
@@ -1,27 +1,14 @@
|
|
1
1
|
body {
|
2
2
|
/* theme color */
|
3
|
-
--primary-color
|
4
|
-
--
|
5
|
-
--secondary-color-rgb: 57, 78, 100;
|
6
|
-
--secondary-color: rgb(var(--secondary-color-rgb));
|
3
|
+
--primary-color: var(--md-sys-color-primary);
|
4
|
+
--secondary-color: var(--md-sys-color-secondary);
|
7
5
|
--focus-color: var(--md-sys-color-on-primary);
|
8
|
-
--primary-background-color: var(--md-sys-color-
|
9
|
-
--secondary-background-color:
|
10
|
-
--md-sys-color-on-primary: #fff;
|
11
|
-
--theme-black-color: rgba(0, 0, 0, 0.9);
|
6
|
+
--primary-background-color: var(--md-sys-color-primary-container);
|
7
|
+
--secondary-background-color: var(--md-sys-color-secondary-container);
|
12
8
|
|
13
9
|
--focus-background-color: var(--md-sys-color-primary);
|
14
|
-
--primary-text-color:
|
15
|
-
--secondary-text-color:
|
16
|
-
|
17
|
-
--opacity-dark-color: rgba(0, 0, 0, 0.4);
|
18
|
-
--opacity-light-color: rgba(255, 255, 255, 0.8);
|
19
|
-
|
20
|
-
/* status color */
|
21
|
-
--status-success-color: #35a24a;
|
22
|
-
--status-warning-color: #ee8d03;
|
23
|
-
--status-danger-color: #d14946;
|
24
|
-
--status-info-color: #398ace;
|
10
|
+
--primary-text-color: var(--md-sys-color-on-primary);
|
11
|
+
--secondary-text-color: var(--md-sys-color-on-secondary);
|
25
12
|
|
26
13
|
/* common style */
|
27
14
|
--border-radius: 4px;
|
@@ -32,12 +19,12 @@ body {
|
|
32
19
|
|
33
20
|
--theme-font: 'Noto', Helvetica;
|
34
21
|
|
35
|
-
--margin-default:
|
36
|
-
--margin-narrow: 4px;
|
37
|
-
--margin-wide:
|
38
|
-
--padding-default: var(--
|
39
|
-
--padding-narrow: var(--
|
40
|
-
--padding-wide: var(--
|
22
|
+
--margin-default: var(--spacing-medium, 8px);
|
23
|
+
--margin-narrow: var(--spacing-small, 4px);
|
24
|
+
--margin-wide: var(--spacing-large, 12px);
|
25
|
+
--padding-default: var(--spacing-medium, 8px);
|
26
|
+
--padding-narrow: var(--spacing-small, 4px);
|
27
|
+
--padding-wide: var(--spacing-large, 12px);
|
41
28
|
|
42
29
|
--scrollbar-thumb-color: rgba(57, 78, 100, 0.5);
|
43
30
|
--scrollbar-thumb-hover-color: var(--md-sys-color-primary);
|
@@ -57,7 +44,7 @@ body {
|
|
57
44
|
|
58
45
|
--page-description-margin: var(--margin-narrow) 0 var(--margin-wide) 0;
|
59
46
|
--page-description-font: normal var(--fontsize-default) / 1.2rem var(--theme-font);
|
60
|
-
--page-description-color: var(--
|
47
|
+
--page-description-color: var(--md-sys-color-primary);
|
61
48
|
|
62
49
|
--subtitle-padding: 12px 5px 3px 5px;
|
63
50
|
--subtitle-font: bold 18px var(--theme-font);
|
@@ -65,9 +52,9 @@ body {
|
|
65
52
|
--subtitle-border-bottom: 1px solid var(--md-sys-color-primary);
|
66
53
|
|
67
54
|
/* icon style */
|
68
|
-
--icon-tiny-size: 24px;
|
69
|
-
--icon-default-size:
|
70
|
-
--icon-big-size: 48px;
|
55
|
+
--icon-tiny-size: var(--icon-size-medium, 24px);
|
56
|
+
--icon-default-size: var(--icon-size-large, 32px);
|
57
|
+
--icon-big-size: var(--icon-size-huge, 48px);
|
71
58
|
--icon-default-color: var(--md-sys-color-on-primary);
|
72
59
|
|
73
60
|
/* material design component themes */
|
@@ -82,7 +69,7 @@ body {
|
|
82
69
|
--mdc-button-horizontal-padding: 16px;
|
83
70
|
|
84
71
|
/* button style */
|
85
|
-
--button-background-color:
|
72
|
+
--button-background-color: var(--md-sys-color-surface-variant);
|
86
73
|
--button-background-focus-color: var(--md-sys-color-primary);
|
87
74
|
--button-border: var(--border-dim-color);
|
88
75
|
--button-border-radius: var(--border-radius);
|
@@ -108,7 +95,7 @@ body {
|
|
108
95
|
--th-border-top: 2px solid var(--md-sys-color-secondary);
|
109
96
|
--th-text-transform: capitalize;
|
110
97
|
--th-font: bold var(--fontsize-small) var(--theme-font);
|
111
|
-
--th-color:
|
98
|
+
--th-color: var(--md-sys-color-secondary);
|
112
99
|
|
113
100
|
--tr-background-color: var(--md-sys-color-surface-variant);
|
114
101
|
--tr-background-odd-color: rgba(255, 255, 255, 0.4);
|
@@ -119,7 +106,7 @@ body {
|
|
119
106
|
--td-font: normal 13px var(--theme-font);
|
120
107
|
--td-color: var(--md-sys-color-secondary);
|
121
108
|
|
122
|
-
--label-cell-background-color:
|
109
|
+
--label-cell-background-color: var(--md-sys-color-surface); /* th or td common background color */
|
123
110
|
|
124
111
|
/* form style */
|
125
112
|
--label-font: normal var(--fontsize-default) var(--theme-font);
|
@@ -135,10 +122,14 @@ body {
|
|
135
122
|
--fieldset-margin: var(--padding-wide) 0;
|
136
123
|
--fieldset-padding: 0 var(--padding-wide) var(--padding-wide) var(--padding-wide);
|
137
124
|
--legend-padding: var(--padding-default) 0;
|
138
|
-
--legend-color: var(--
|
125
|
+
--legend-color: var(--md-sys-color-secondary);
|
139
126
|
--legend-font: bold 16px var(--theme-font);
|
140
127
|
}
|
141
128
|
|
129
|
+
body.dark {
|
130
|
+
caret-color: white;
|
131
|
+
}
|
132
|
+
|
142
133
|
@media only screen and (max-width: 460px) {
|
143
134
|
body {
|
144
135
|
/* subtitle style */
|
@@ -0,0 +1,59 @@
|
|
1
|
+
body {
|
2
|
+
--ox-calendar-padding: var(--padding-default);
|
3
|
+
|
4
|
+
/* monthly common color */
|
5
|
+
--calendar-monthly-text-color: var(--md-sys-color-secondary);
|
6
|
+
--calendar-monthly-border: 1px solid rgba(0, 0, 0, 0.1);
|
7
|
+
--calendar-monthly-border-width: 0 1px 1px 0px;
|
8
|
+
|
9
|
+
/* monthly layout */
|
10
|
+
--calendar-monthly-ol-margin: var(--margin-default) 0;
|
11
|
+
--calendar-monthly-ol-top-border: 2px solid var(--md-sys-color-secondary);
|
12
|
+
--calendar-current-monty-background-color: var(--md-sys-color-surface-variant);
|
13
|
+
--calendar-monthly-label-align: left;
|
14
|
+
--calendar-monthly-label-padding: var(--padding-narrow) 0;
|
15
|
+
--calendar-monthly-label-color: var(--md-sys-color-secondary);
|
16
|
+
--calendar-monthly-opacity: 0.5;
|
17
|
+
--calendar-monthly-date-label-background-color: var(--status-danger-color);
|
18
|
+
--calendar-monthly-date-label-margin: var(--margin-narrow);
|
19
|
+
--calendar-monthly-date-label-padding: 0px 6px;
|
20
|
+
--calendar-monthly-date-label-color: var(--md-sys-color-on-primary);
|
21
|
+
|
22
|
+
--calendar-monthly-background-color: #f4f4f4;
|
23
|
+
--calendar-monthly-event-border-radius: var(--border-radius);
|
24
|
+
--calendar-monthly-event-margin: var(--padding-narrow) 0 0 0;
|
25
|
+
--calendar-monthly-event-padding: 2px var(--padding-default);
|
26
|
+
--calendar-monthly-event-border: 3px solid #ccc;
|
27
|
+
--calendar-monthly-event-border-width: 0 0 0 3px;
|
28
|
+
|
29
|
+
/* weekly common color */
|
30
|
+
--calendar-weekly-text-color: var(--md-sys-color-secondary);
|
31
|
+
--calendar-weekly-border: 1px solid rgba(0, 0, 0, 0.1);
|
32
|
+
--calendar-weekly-border-width: 0 1px 1px 0px;
|
33
|
+
|
34
|
+
/* weekly layout */
|
35
|
+
--calendar-weekly-ol-margin: var(--margin-default) 0;
|
36
|
+
--calendar-weekly-ol-top-border: 2px solid var(--md-sys-color-secondary);
|
37
|
+
--calendar-current-week-background-color: var(--md-sys-color-surface-variant);
|
38
|
+
--calendar-weekly-label-align: center;
|
39
|
+
--calendar-weekly-label-padding: var(--padding-narrow) 0;
|
40
|
+
--calendar-weekly-label-color: var(--md-sys-color-secondary);
|
41
|
+
--calendar-weekly-opacity: 0.5;
|
42
|
+
--calendar-weekly-date-label-background-color: var(--status-danger-color);
|
43
|
+
--calendar-weekly-date-label-margin: var(--margin-narrow);
|
44
|
+
--calendar-weekly-date-label-padding: 0px 6px;
|
45
|
+
--calendar-weekly-date-label-color: var(--md-sys-color-on-primary);
|
46
|
+
|
47
|
+
--calendar-weekly-background-color: #f4f4f4;
|
48
|
+
--calendar-weekly-event-border-radius: var(--border-radius);
|
49
|
+
--calendar-weekly-event-margin: var(--padding-narrow) 0 0 0;
|
50
|
+
--calendar-weekly-event-padding: 2px var(--padding-default);
|
51
|
+
--calendar-weekly-event-border: 3px solid #ccc;
|
52
|
+
--calendar-weekly-event-border-width: 0 0 0 3px;
|
53
|
+
}
|
54
|
+
|
55
|
+
@media only screen and (max-width: 460px) {
|
56
|
+
body {
|
57
|
+
--calendar-monthly-text-color: tomato;
|
58
|
+
}
|
59
|
+
}
|
package/client/themes/dark.css
CHANGED
@@ -48,104 +48,4 @@
|
|
48
48
|
--md-sys-color-surface-container: rgb(30 31 37);
|
49
49
|
--md-sys-color-surface-container-high: rgb(41 42 47);
|
50
50
|
--md-sys-color-surface-container-highest: rgb(51 52 58);
|
51
|
-
|
52
|
-
/* primary palette */
|
53
|
-
--md-ref-palette-primary0:#000000;
|
54
|
-
--md-ref-palette-primary5:#000E32;
|
55
|
-
--md-ref-palette-primary10:#001848;
|
56
|
-
--md-ref-palette-primary15:#00215E;
|
57
|
-
--md-ref-palette-primary20:#002B74;
|
58
|
-
--md-ref-palette-primary25:#002B74;
|
59
|
-
--md-ref-palette-primary30:#0040A2;
|
60
|
-
--md-ref-palette-primary35:#002B74;
|
61
|
-
--md-ref-palette-primary40:#1957CA;
|
62
|
-
--md-ref-palette-primary50:#3E71E5;
|
63
|
-
--md-ref-palette-primary60:#5C8BFF;
|
64
|
-
--md-ref-palette-primary70:#89A9FF;
|
65
|
-
--md-ref-palette-primary80:#B2C5FF;
|
66
|
-
--md-ref-palette-primary90:#DAE2FF;
|
67
|
-
--md-ref-palette-primary95:#EEF0FF;
|
68
|
-
--md-ref-palette-primary98:#FAF8FF;
|
69
|
-
--md-ref-palette-primary99:#FEFBFF;
|
70
|
-
--md-ref-palette-primary100:#FFFFFF;
|
71
|
-
|
72
|
-
/* secondary palette */
|
73
|
-
--md-ref-palette-secondary0:#000000;
|
74
|
-
--md-ref-palette-secondary5:#00131D;
|
75
|
-
--md-ref-palette-secondary10:#001E2C;
|
76
|
-
--md-ref-palette-secondary15:#00293A;
|
77
|
-
--md-ref-palette-secondary20:#003549;
|
78
|
-
--md-ref-palette-secondary25:#004058;
|
79
|
-
--md-ref-palette-secondary30:#004C68;
|
80
|
-
--md-ref-palette-secondary35:#005978;
|
81
|
-
--md-ref-palette-secondary40:#006689;
|
82
|
-
--md-ref-palette-secondary50:#0080AC;
|
83
|
-
--md-ref-palette-secondary60:#009BCF;
|
84
|
-
--md-ref-palette-secondary70:#00B8F4;
|
85
|
-
--md-ref-palette-secondary80:#79D1FF;
|
86
|
-
--md-ref-palette-secondary90:#C3E8FF;
|
87
|
-
--md-ref-palette-secondary95:#E3F3FF;
|
88
|
-
--md-ref-palette-secondary98:#F5FAFF;
|
89
|
-
--md-ref-palette-secondary99:#FBFCFF;
|
90
|
-
--md-ref-palette-secondary100:#FFFFFF;
|
91
|
-
|
92
|
-
/* tertiary palette */
|
93
|
-
--md-ref-palette-tertiary0:#000000;
|
94
|
-
--md-ref-palette-tertiary5:#00150A;
|
95
|
-
--md-ref-palette-tertiary10:#002113;
|
96
|
-
--md-ref-palette-tertiary15:#002C1B;
|
97
|
-
--md-ref-palette-tertiary20:#003823;
|
98
|
-
--md-ref-palette-tertiary25:#00452B;
|
99
|
-
--md-ref-palette-tertiary30:#005234;
|
100
|
-
--md-ref-palette-tertiary35:#005F3E;
|
101
|
-
--md-ref-palette-tertiary40:#006C47;
|
102
|
-
--md-ref-palette-tertiary50:#00885A;
|
103
|
-
--md-ref-palette-tertiary60:#31A372;
|
104
|
-
--md-ref-palette-tertiary70:#51BF8B;
|
105
|
-
--md-ref-palette-tertiary80:#6EDBA5;
|
106
|
-
--md-ref-palette-tertiary90:#A2F4C7;
|
107
|
-
--md-ref-palette-tertiary95:#BFFFD9;
|
108
|
-
--md-ref-palette-tertiary98:#E8FFEF;
|
109
|
-
--md-ref-palette-tertiary99:#F4FFF5;
|
110
|
-
--md-ref-palette-tertiary100:#FFFFFF;
|
111
|
-
|
112
|
-
/* error palette */
|
113
|
-
--md-ref-palette-error0:#000000;
|
114
|
-
--md-ref-palette-error5:#2d0102;
|
115
|
-
--md-ref-palette-error10:#410304;
|
116
|
-
--md-ref-palette-error15:#540507;
|
117
|
-
--md-ref-palette-error20:#68070a;
|
118
|
-
--md-ref-palette-error25:#7d0b0e;
|
119
|
-
--md-ref-palette-error30:#930f14;
|
120
|
-
--md-ref-palette-error35:#a91319;
|
121
|
-
--md-ref-palette-error40:#bc1620;
|
122
|
-
--md-ref-palette-error50:#e03236;
|
123
|
-
--md-ref-palette-error60:#ff5450;
|
124
|
-
--md-ref-palette-error70:#ff8982;
|
125
|
-
--md-ref-palette-error80:#ffb3ad;
|
126
|
-
--md-ref-palette-error90:#ffdad7;
|
127
|
-
--md-ref-palette-error95:#ffedeb;
|
128
|
-
--md-ref-palette-error98:#fff8f7;
|
129
|
-
--md-ref-palette-error99:#fffbff;
|
130
|
-
--md-ref-palette-error100:#FFFFFF;
|
131
|
-
|
132
|
-
/* neutral palette */
|
133
|
-
--md-ref-palette-neutral0:#000000;
|
134
|
-
--md-ref-palette-neutral5:#111111;
|
135
|
-
--md-ref-palette-neutral10:#1C1C1C;
|
136
|
-
--md-ref-palette-neutral15:#262626;
|
137
|
-
--md-ref-palette-neutral20:#313131;
|
138
|
-
--md-ref-palette-neutral25:#3C3C3C;
|
139
|
-
--md-ref-palette-neutral30:#474747;
|
140
|
-
--md-ref-palette-neutral35:#535353;
|
141
|
-
--md-ref-palette-neutral40:#5F5F5F;
|
142
|
-
--md-ref-palette-neutral50:#787878;
|
143
|
-
--md-ref-palette-neutral60:#929292;
|
144
|
-
--md-ref-palette-neutral70:#ACACAC;
|
145
|
-
--md-ref-palette-neutral80:#C8C8C8;
|
146
|
-
--md-ref-palette-neutral90:#E4E4E4;
|
147
|
-
--md-ref-palette-neutral95:#F0F0F0;
|
148
|
-
--md-ref-palette-neutral98:#F9F9F9;
|
149
|
-
--md-ref-palette-neutral99:#FEFEFE;
|
150
|
-
--md-ref-palette-neutral100:#FFFFFF;
|
151
51
|
}
|
@@ -20,7 +20,7 @@ body {
|
|
20
20
|
|
21
21
|
--grist-input-progress-border: 1px solid rgba(255, 255, 255, 0.5);
|
22
22
|
--grist-input-progress-background: rgba(121, 110, 110, 0.1);
|
23
|
-
--grist-input-progress-bar-background: var(--md-
|
23
|
+
--grist-input-progress-bar-background: var(--md-sys-color-primary-fixed-dim);
|
24
24
|
--grist-input-progress-bar-color: var(--md-sys-color-on-surface-variant);
|
25
25
|
|
26
26
|
--grid-header-background-color: var(--md-sys-color-surface-container-low);
|
@@ -49,12 +49,10 @@ body {
|
|
49
49
|
--grid-record-color-hover: var(--md-sys-color-primary);
|
50
50
|
--grid-record-wide-fontsize: var(--md-sys-typescale-label-large-size, 0.875rem);
|
51
51
|
--grid-record-selected-background-color: var(--md-sys-color-primary-container);
|
52
|
-
--grid-record-selected-color: var(--md-sys-color-primary);
|
53
|
-
--grid-record-focused-background-color: var(--md-sys-color-secondary-container);
|
52
|
+
--grid-record-selected-color: var(--md-sys-color-on-primary-container);
|
54
53
|
--grid-record-focused-border: 1px solid var(--md-sys-color-outline-variant);
|
55
54
|
--grid-record-focused-cell-background-color: var(--md-sys-color-secondary-container);
|
56
55
|
--grid-record-focused-cell-border: 1px dashed var(--md-sys-color-outline);
|
57
|
-
--grid-record-focused-color: var(--md-sys-color-secondary);
|
58
56
|
--grid-record-focused-box-shadow: 0px 2px 0px 0px rgb(0 0 0 / 10%);
|
59
57
|
--grid-record-emphasized-background-color: var(--md-sys-color-secondary-fixed-dim);
|
60
58
|
--grid-record-emphasized-color: var(--md-sys-color-on-secondary-fixed-variant);
|
@@ -72,8 +70,8 @@ body {
|
|
72
70
|
--grid-footer-background-color: var(--md-sys-color-surface-container-low);
|
73
71
|
--grid-footer-font-size: var(--md-sys-typescale-label-large-size, 0.875rem);
|
74
72
|
--grid-footer-color: var(--md-sys-color-primary);
|
75
|
-
--grid-footer-limit-color: var(--md-ref-palette-neutral40);
|
76
|
-
--grid-footer-inactive-color: var(--md-ref-palette-neutral40);
|
73
|
+
--grid-footer-limit-color: var(--md-ref-palette-neutral40, #5f5f5f);
|
74
|
+
--grid-footer-inactive-color: var(--md-ref-palette-neutral40, #5f5f5f);
|
77
75
|
--grid-footer-padding: var(--spacing-small) var(--spacing-medium);
|
78
76
|
|
79
77
|
--data-list-background-color: var(--md-sys-color-surface-container-lowest);
|
@@ -86,7 +84,7 @@ body {
|
|
86
84
|
--data-list-item-disc-color: var(--md-sys-color-tertiary);
|
87
85
|
--data-list-item-etc-label-font: bold 1em/1em var(--theme-font, 'Roboto');
|
88
86
|
--data-list-item-etc-font: normal 0.9em/1em var(--theme-font, 'Roboto');
|
89
|
-
--data-list-item-etc-color: var(--md-ref-palette-neutral50);
|
87
|
+
--data-list-item-etc-color: var(--md-ref-palette-neutral50, #787878);
|
90
88
|
--data-list-item-icon-font: normal 1em/1em;
|
91
89
|
--data-list-item-icon-color: var(--md-sys-color-on-secondary);
|
92
90
|
--data-list-selected-background-color: var(--grid-record-selected-background-color);
|
@@ -108,12 +106,12 @@ body {
|
|
108
106
|
--data-card-item-name-font: bold 1.1em var(--theme-font, 'Roboto');
|
109
107
|
--data-card-item-name-color: var(--md-sys-color-secondary);
|
110
108
|
--data-card-item-name-label-font: normal 0.65em/0.8em var(--theme-font, 'Roboto');
|
111
|
-
--data-card-item-name-label-color:
|
109
|
+
--data-card-item-name-label-color: var(--md-sys-color-secondary);
|
112
110
|
--data-card-item-disc-font: normal 0.9em var(--theme-font, 'Roboto');
|
113
111
|
--data-card-item-disc-color: var(--md-sys-color-tertiary);
|
114
112
|
--data-card-item-etc-label-font: normal 1em/1em var(--theme-font, 'Roboto');
|
115
113
|
--data-card-item-etc-font: normal 0.9em/1em var(--theme-font, 'Roboto');
|
116
|
-
--data-card-item-etc-color: var(--md-ref-palette-neutral50);
|
114
|
+
--data-card-item-etc-color: var(--md-ref-palette-neutral50, #787878);
|
117
115
|
--data-card-item-icon-font: normal 1em/1em;
|
118
116
|
--data-card-item-icon-color: var(--md-sys-color-on-secondary);
|
119
117
|
--data-card-item-btn-border: var(--grid-container-border-color);
|
@@ -142,7 +140,7 @@ body {
|
|
142
140
|
--record-view-edit-border-bottom: 2px solid var(--md-sys-color-primary);
|
143
141
|
--record-view-item-padding: var(--spacing-medium);
|
144
142
|
|
145
|
-
--record-view-footer-background: var(--md-ref-palette-neutral50);
|
143
|
+
--record-view-footer-background: var(--md-ref-palette-neutral50, #787878);
|
146
144
|
--record-view-footer-button-border: var(--grid-container-border-color);
|
147
145
|
--record-view-footer-button-border-width: 0 0 0 1px;
|
148
146
|
--record-view-footer-button-font: 17px;
|
@@ -39,6 +39,7 @@ body {
|
|
39
39
|
--button-container-button-border: var(--button-border);
|
40
40
|
|
41
41
|
--popup-content-background-color: var(--md-sys-color-background);
|
42
|
+
--popup-content-color: var(--md-sys-color-on-background);
|
42
43
|
--popup-content-padding: 10px 20px;
|
43
44
|
|
44
45
|
/* components - floating overlay style */
|
@@ -60,11 +61,6 @@ body {
|
|
60
61
|
--splitter-hover-background-color: rgba(0, 0, 0, 0.1);
|
61
62
|
}
|
62
63
|
|
63
|
-
.dark {
|
64
|
-
--header-bar-background-color: var(--md-sys-color-inverse-primary);
|
65
|
-
--header-bar-color: var(--md-sys-color-primary);
|
66
|
-
}
|
67
|
-
|
68
64
|
@media only screen and (max-width: 460px) {
|
69
65
|
body {
|
70
66
|
--button-container-margin: 0 -15px;
|
package/client/themes/light.css
CHANGED
@@ -48,104 +48,4 @@
|
|
48
48
|
--md-sys-color-surface-container: rgb(238 237 244);
|
49
49
|
--md-sys-color-surface-container-high: rgb(232 231 239);
|
50
50
|
--md-sys-color-surface-container-highest: rgb(227 226 233);
|
51
|
-
|
52
|
-
/* primary palette */
|
53
|
-
--md-ref-palette-primary0: #000000;
|
54
|
-
--md-ref-palette-primary5: #000e32;
|
55
|
-
--md-ref-palette-primary10: #001848;
|
56
|
-
--md-ref-palette-primary15: #00215e;
|
57
|
-
--md-ref-palette-primary20: #002b74;
|
58
|
-
--md-ref-palette-primary25: #002b74;
|
59
|
-
--md-ref-palette-primary30: #0040a2;
|
60
|
-
--md-ref-palette-primary35: #002b74;
|
61
|
-
--md-ref-palette-primary40: #1957ca;
|
62
|
-
--md-ref-palette-primary50: #3e71e5;
|
63
|
-
--md-ref-palette-primary60: #5c8bff;
|
64
|
-
--md-ref-palette-primary70: #89a9ff;
|
65
|
-
--md-ref-palette-primary80: #b2c5ff;
|
66
|
-
--md-ref-palette-primary90: #dae2ff;
|
67
|
-
--md-ref-palette-primary95: #eef0ff;
|
68
|
-
--md-ref-palette-primary98: #faf8ff;
|
69
|
-
--md-ref-palette-primary99: #fefbff;
|
70
|
-
--md-ref-palette-primary100: #ffffff;
|
71
|
-
|
72
|
-
/* secondary palette */
|
73
|
-
--md-ref-palette-secondary0: #000000;
|
74
|
-
--md-ref-palette-secondary5: #00131d;
|
75
|
-
--md-ref-palette-secondary10: #001e2c;
|
76
|
-
--md-ref-palette-secondary15: #00293a;
|
77
|
-
--md-ref-palette-secondary20: #003549;
|
78
|
-
--md-ref-palette-secondary25: #004058;
|
79
|
-
--md-ref-palette-secondary30: #004c68;
|
80
|
-
--md-ref-palette-secondary35: #005978;
|
81
|
-
--md-ref-palette-secondary40: #006689;
|
82
|
-
--md-ref-palette-secondary50: #0080ac;
|
83
|
-
--md-ref-palette-secondary60: #009bcf;
|
84
|
-
--md-ref-palette-secondary70: #00b8f4;
|
85
|
-
--md-ref-palette-secondary80: #79d1ff;
|
86
|
-
--md-ref-palette-secondary90: #c3e8ff;
|
87
|
-
--md-ref-palette-secondary95: #e3f3ff;
|
88
|
-
--md-ref-palette-secondary98: #f5faff;
|
89
|
-
--md-ref-palette-secondary99: #fbfcff;
|
90
|
-
--md-ref-palette-secondary100: #ffffff;
|
91
|
-
|
92
|
-
/* tertiary palette */
|
93
|
-
--md-ref-palette-tertiary0: #000000;
|
94
|
-
--md-ref-palette-tertiary5: #00150a;
|
95
|
-
--md-ref-palette-tertiary10: #002113;
|
96
|
-
--md-ref-palette-tertiary15: #002c1b;
|
97
|
-
--md-ref-palette-tertiary20: #003823;
|
98
|
-
--md-ref-palette-tertiary25: #00452b;
|
99
|
-
--md-ref-palette-tertiary30: #005234;
|
100
|
-
--md-ref-palette-tertiary35: #005f3e;
|
101
|
-
--md-ref-palette-tertiary40: #006c47;
|
102
|
-
--md-ref-palette-tertiary50: #00885a;
|
103
|
-
--md-ref-palette-tertiary60: #31a372;
|
104
|
-
--md-ref-palette-tertiary70: #51bf8b;
|
105
|
-
--md-ref-palette-tertiary80: #6edba5;
|
106
|
-
--md-ref-palette-tertiary90: #a2f4c7;
|
107
|
-
--md-ref-palette-tertiary95: #bfffd9;
|
108
|
-
--md-ref-palette-tertiary98: #e8ffef;
|
109
|
-
--md-ref-palette-tertiary99: #f4fff5;
|
110
|
-
--md-ref-palette-tertiary100: #ffffff;
|
111
|
-
|
112
|
-
/* error palette */
|
113
|
-
--md-ref-palette-error0: #000000;
|
114
|
-
--md-ref-palette-error5: #2d0102;
|
115
|
-
--md-ref-palette-error10: #410304;
|
116
|
-
--md-ref-palette-error15: #540507;
|
117
|
-
--md-ref-palette-error20: #68070a;
|
118
|
-
--md-ref-palette-error25: #7d0b0e;
|
119
|
-
--md-ref-palette-error30: #930f14;
|
120
|
-
--md-ref-palette-error35: #a91319;
|
121
|
-
--md-ref-palette-error40: #bc1620;
|
122
|
-
--md-ref-palette-error50: #e03236;
|
123
|
-
--md-ref-palette-error60: #ff5450;
|
124
|
-
--md-ref-palette-error70: #ff8982;
|
125
|
-
--md-ref-palette-error80: #ffb3ad;
|
126
|
-
--md-ref-palette-error90: #ffdad7;
|
127
|
-
--md-ref-palette-error95: #ffedeb;
|
128
|
-
--md-ref-palette-error98: #fff8f7;
|
129
|
-
--md-ref-palette-error99: #fffbff;
|
130
|
-
--md-ref-palette-error100: #ffffff;
|
131
|
-
|
132
|
-
/* neutral palette */
|
133
|
-
--md-ref-palette-neutral0: #000000;
|
134
|
-
--md-ref-palette-neutral5: #111111;
|
135
|
-
--md-ref-palette-neutral10: #1c1c1c;
|
136
|
-
--md-ref-palette-neutral15: #262626;
|
137
|
-
--md-ref-palette-neutral20: #313131;
|
138
|
-
--md-ref-palette-neutral25: #3c3c3c;
|
139
|
-
--md-ref-palette-neutral30: #474747;
|
140
|
-
--md-ref-palette-neutral35: #535353;
|
141
|
-
--md-ref-palette-neutral40: #5f5f5f;
|
142
|
-
--md-ref-palette-neutral50: #787878;
|
143
|
-
--md-ref-palette-neutral60: #929292;
|
144
|
-
--md-ref-palette-neutral70: #acacac;
|
145
|
-
--md-ref-palette-neutral80: #c8c8c8;
|
146
|
-
--md-ref-palette-neutral90: #e4e4e4;
|
147
|
-
--md-ref-palette-neutral95: #f0f0f0;
|
148
|
-
--md-ref-palette-neutral98: #f9f9f9;
|
149
|
-
--md-ref-palette-neutral99: #fefefe;
|
150
|
-
--md-ref-palette-neutral100: #ffffff;
|
151
51
|
}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
body {
|
2
2
|
/* oops note style */
|
3
3
|
--oops-note-icon-font: normal 24px var(--mdc-icon-font, 'Material Icons');
|
4
|
-
--oops-note-icon-color:
|
5
|
-
--oops-note-icon-border: 2px solid
|
4
|
+
--oops-note-icon-color: var(--md-sys-color-on-surface);
|
5
|
+
--oops-note-icon-border: 2px solid var(--md-sys-color-outline);
|
6
6
|
--oops-note-icon-border-radius: 50px;
|
7
7
|
--oops-note-icon-padding: var(--padding-default);
|
8
8
|
--oops-note-title-margin: 7px 0 2px 0;
|
@@ -0,0 +1,47 @@
|
|
1
|
+
body {
|
2
|
+
--report-background-color: var(--md-sys-color-background);
|
3
|
+
--report-padding: 15px;
|
4
|
+
--report-title-margin: 0 0 0 10px;
|
5
|
+
--report-title-border: none;
|
6
|
+
--report-title-color: var(--md-sys-color-secondary);
|
7
|
+
--report-title-icon-color: var(--md-sys-color-primary);
|
8
|
+
--report-title-icon-margin: 0 3px 2px 0;
|
9
|
+
--report-title-icon-size: 14px;
|
10
|
+
--report-title-with-grid-padding: 0;
|
11
|
+
--report-component-border-radius: var(--border-radius);
|
12
|
+
|
13
|
+
--report-header-background-color: var(--md-sys-color-surface);
|
14
|
+
--report-header-border: 1px solid var(--report-header-border-color);
|
15
|
+
--report-header-border-color: var(--md-sys-color-outline);
|
16
|
+
--report-header-padding: 5px 0 5px 5px;
|
17
|
+
--report-header-color: var(--secondary-text-color);
|
18
|
+
--report-header-font: normal 1em/1.5 var(--theme-font);
|
19
|
+
--report-header-fontsize: 13px;
|
20
|
+
|
21
|
+
--report-record-background-color: #fff;
|
22
|
+
--report-record-odd-background-color: #f6f6f6;
|
23
|
+
--report-record-field-padding: 7px 10px;
|
24
|
+
--report-record-field-border-bottom: 1px solid rgba(0, 0, 0, 0.1);
|
25
|
+
--report-record-wide-fontsize: 13px;
|
26
|
+
--report-record-focused-background-color: #ffde3b47;
|
27
|
+
--report-record-focused-border: 1px dashed rgba(0, 0, 0, 0.5);
|
28
|
+
|
29
|
+
--report-totalized-background-color: #efefef;
|
30
|
+
--report-totalized-border: 1px solid rgba(0, 0, 0, 0.1);
|
31
|
+
--report-totalized-color: var(--secondary-text-color);
|
32
|
+
|
33
|
+
--report-grouped-background-color: #607d8bbf;
|
34
|
+
--report-grouped-border: 1px solid rgba(0, 0, 0, 0.2);
|
35
|
+
--report-grouped-color: #fff;
|
36
|
+
}
|
37
|
+
|
38
|
+
@media print {
|
39
|
+
body {
|
40
|
+
--report-header-padding: 5px;
|
41
|
+
--report-record-field-padding: 5px;
|
42
|
+
--report-record-wide-fontsize: 10px;
|
43
|
+
--report-grouped-background-color: #d7d7d7;
|
44
|
+
--report-grouped-color: #000;
|
45
|
+
--report-totalized-color: #000;
|
46
|
+
}
|
47
|
+
}
|
@@ -1,6 +1,11 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.databaseInitializer =
|
3
|
+
exports.databaseInitializer = void 0;
|
4
|
+
exports.getDataSource = getDataSource;
|
5
|
+
exports.addDataSource = addDataSource;
|
6
|
+
exports.removeDataSource = removeDataSource;
|
7
|
+
exports.getDataSourceNames = getDataSourceNames;
|
8
|
+
exports.getRepository = getRepository;
|
4
9
|
const typeorm_1 = require("typeorm");
|
5
10
|
const env_1 = require("@things-factory/env");
|
6
11
|
const path = require('path');
|
@@ -20,7 +25,6 @@ const dataSources = {};
|
|
20
25
|
function getDataSource(name) {
|
21
26
|
return dataSources[name || 'default'];
|
22
27
|
}
|
23
|
-
exports.getDataSource = getDataSource;
|
24
28
|
/**
|
25
29
|
* Adds a new DataSource with the specified name.
|
26
30
|
* @param {string} name - The name of the DataSource to add.
|
@@ -29,7 +33,6 @@ exports.getDataSource = getDataSource;
|
|
29
33
|
function addDataSource(name, dataSource) {
|
30
34
|
dataSources[name] = dataSource;
|
31
35
|
}
|
32
|
-
exports.addDataSource = addDataSource;
|
33
36
|
/**
|
34
37
|
* Removes a DataSource with the specified name.
|
35
38
|
* @param {string} name - The name of the DataSource to remove.
|
@@ -37,7 +40,6 @@ exports.addDataSource = addDataSource;
|
|
37
40
|
function removeDataSource(name) {
|
38
41
|
delete dataSources[name];
|
39
42
|
}
|
40
|
-
exports.removeDataSource = removeDataSource;
|
41
43
|
/**
|
42
44
|
* Returns an array of all registered DataSource names.
|
43
45
|
* @returns {string[]} - An array of DataSource names.
|
@@ -45,7 +47,6 @@ exports.removeDataSource = removeDataSource;
|
|
45
47
|
function getDataSourceNames() {
|
46
48
|
return Object.keys(dataSources);
|
47
49
|
}
|
48
|
-
exports.getDataSourceNames = getDataSourceNames;
|
49
50
|
/**
|
50
51
|
* Returns a repository for the specified entity.
|
51
52
|
* @param {EntityTarget<X>} target - The target entity for which to get the repository.
|
@@ -54,7 +55,6 @@ exports.getDataSourceNames = getDataSourceNames;
|
|
54
55
|
function getRepository(target) {
|
55
56
|
return getDataSource('default').getRepository(target);
|
56
57
|
}
|
57
|
-
exports.getRepository = getRepository;
|
58
58
|
/**
|
59
59
|
* Initializes the database connections and data sources.
|
60
60
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../server/initializers/database.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../server/initializers/database.ts"],"names":[],"mappings":";;;AAoBA,sCAEC;AAOD,sCAEC;AAMD,4CAEC;AAMD,gDAEC;AAOD,sCAEC;AAxDD,qCAAgF;AAEhF,6CAAiE;AAEjE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAE5B,IAAI,SAAS,CAAA;AACb,IAAI,CAAC;IACH,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAW,EAAE,WAAW,CAAC,CAAC,CAAA;AAC7D,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACX,SAAS,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAA;AACxD,CAAC;AAED,MAAM,WAAW,GAAmC,EAAE,CAAA;AAEtD;;;;GAIG;AACH,SAAgB,aAAa,CAAC,IAAa;IACzC,OAAO,WAAW,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,IAAY,EAAE,UAAsB;IAChE,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,CAAA;AAChC,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,IAAY;IAC3C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB;IAChC,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;AACjC,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAI,MAAuB;IACtD,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC,aAAa,CAAI,MAAM,CAAC,CAAA;AAC1D,CAAC;AAED;;GAEG;AACI,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;IAC5C,IAAI,CAAC;QACH,MAAM,oBAAoB,GAAG,YAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAEpD,MAAM,UAAU,GAAG,MAAM,IAAA,0BAAgB,kCACpC,SAAS,GACT,oBAAoB,EACvB,CAAA;QAEF,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;QAEpC,YAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;QAE7C,IAAI,oBAAoB,CAAC,IAAI,IAAI,QAAQ,IAAI,oBAAoB,CAAC,WAAW,IAAI,KAAK,EAAE,CAAC;YACvF,MAAM,UAAU,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;YACjD,MAAM,UAAU,CAAC,WAAW,EAAE,CAAA;YAC9B,MAAM,UAAU,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;QAClD,CAAC;QAED,IAAI,YAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,oBAAU,iCAC/B,SAAS,GACT,YAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAC7B,CAAA;YACF,MAAM,aAAa,CAAC,UAAU,EAAE,CAAA;YAChC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;YAElC,YAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,YAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AAlCY,QAAA,mBAAmB,uBAkC/B","sourcesContent":["import { createConnection, DataSource, EntityTarget, Repository } from 'typeorm'\n\nimport { appRootPath, config, logger } from '@things-factory/env'\n\nconst path = require('path')\n\nvar ormconfig\ntry {\n ormconfig = require(path.resolve(appRootPath, 'ormconfig'))\n} catch (e) {\n ormconfig = require('@things-factory/shell/ormconfig')\n}\n\nconst dataSources: { [name: string]: DataSource } = {}\n\n/**\n * Returns the specified DataSource by name.\n * @param {string} name - The name of the DataSource.\n * @returns {DataSource} - The DataSource with the specified name.\n */\nexport function getDataSource(name?: string): DataSource {\n return dataSources[name || 'default']\n}\n\n/**\n * Adds a new DataSource with the specified name.\n * @param {string} name - The name of the DataSource to add.\n * @param {DataSource} dataSource - The DataSource to add.\n */\nexport function addDataSource(name: string, dataSource: DataSource) {\n dataSources[name] = dataSource\n}\n\n/**\n * Removes a DataSource with the specified name.\n * @param {string} name - The name of the DataSource to remove.\n */\nexport function removeDataSource(name: string) {\n delete dataSources[name]\n}\n\n/**\n * Returns an array of all registered DataSource names.\n * @returns {string[]} - An array of DataSource names.\n */\nexport function getDataSourceNames() {\n return Object.keys(dataSources)\n}\n\n/**\n * Returns a repository for the specified entity.\n * @param {EntityTarget<X>} target - The target entity for which to get the repository.\n * @returns {Repository<X>} - The repository for the specified entity.\n */\nexport function getRepository<X>(target: EntityTarget<X>): Repository<X> {\n return getDataSource('default').getRepository<X>(target)\n}\n\n/**\n * Initializes the database connections and data sources.\n */\nexport const databaseInitializer = async () => {\n try {\n const readConnectionConfig = config.get('ormconfig')\n\n const dataSource = await createConnection({\n ...ormconfig,\n ...readConnectionConfig\n })\n\n addDataSource('default', dataSource)\n\n logger.info('Default DataSource established')\n\n if (readConnectionConfig.type == 'sqlite' && readConnectionConfig.synchronize == false) {\n await dataSource.query('PRAGMA foreign_keys=OFF')\n await dataSource.synchronize()\n await dataSource.query('PRAGMA foreign_keys=ON')\n }\n\n if (config.get('ormconfig4Tx')) {\n const dataSource4Tx = new DataSource({\n ...ormconfig,\n ...config.get('ormconfig4Tx')\n })\n await dataSource4Tx.initialize()\n addDataSource('tx', dataSource4Tx)\n\n logger.info('Transaction DataSource established')\n } else {\n addDataSource('tx', dataSource)\n }\n } catch (e) {\n logger.error(e)\n }\n}\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.domainMiddleware =
|
3
|
+
exports.domainMiddleware = domainMiddleware;
|
4
4
|
const tslib_1 = require("tslib");
|
5
5
|
const request_ip_1 = tslib_1.__importDefault(require("request-ip"));
|
6
6
|
const utils_1 = require("../utils");
|
@@ -51,5 +51,4 @@ async function domainMiddleware(context, next) {
|
|
51
51
|
context.state.domain = domain;
|
52
52
|
return next();
|
53
53
|
}
|
54
|
-
exports.domainMiddleware = domainMiddleware;
|
55
54
|
//# sourceMappingURL=domain-middleware.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"domain-middleware.js","sourceRoot":"","sources":["../../server/middlewares/domain-middleware.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"domain-middleware.js","sourceRoot":"","sources":["../../server/middlewares/domain-middleware.ts"],"names":[],"mappings":";;AAGA,4CAwDC;;AA3DD,oEAAkC;AAClC,oCAA2C;AAEpC,KAAK,UAAU,gBAAgB,CAAC,OAAY,EAAE,IAAS;IAC5D,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;IAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ;;;;WAIG;QACH,MAAM,GAAG,MAAM,IAAA,wBAAgB,EAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,EAAE,GAAG,oBAAS,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC7C,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,aAAa,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAA;QAEnG,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrD,kBAAkB;YAClB,MAAM,WAAW,GACf,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBACxB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACpB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAClC,CAAC,CAAC,CAAA;YAEJ,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;gBACpB,OAAM;YACR,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,GACf,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBACxB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACpB,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAClC,CAAC,CAAC,CAAA;YAEJ,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;gBACpB,OAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACrC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAClC,CAAC,CAAC,CAAA;YAEF,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAA;YAE9B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,UAAU,CAAA;YACjD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;IAE7B,OAAO,IAAI,EAAE,CAAA;AACf,CAAC","sourcesContent":["import requestIp from 'request-ip'\nimport { getDomainFromURL } from '../utils'\n\nexport async function domainMiddleware(context: any, next: any) {\n var { domain } = context.state\n if (!domain) {\n /*\n * The domainType should be checked only when signin and checkin.\n * For purposes such as API calls, the target domainType may be different from the system domainType.\n * So, we don't check domainType here.\n */\n domain = await getDomainFromURL(context)\n }\n\n if (domain) {\n const ip = requestIp.getClientIp(context.req)\n const { whitelist = [], blacklist = [], protectedlist = [], privileges = [] } = domain.iplist || {}\n\n if (Array.isArray(whitelist) && whitelist.length > 0) {\n /* whitelist 우선 */\n const whitelisted =\n Array.isArray(whitelist) &&\n whitelist.some(item => {\n return new RegExp(item).test(ip)\n })\n\n if (!whitelisted) {\n context.status = 403\n return\n }\n } else {\n const blacklisted =\n Array.isArray(blacklist) &&\n blacklist.some(item => {\n return new RegExp(item).test(ip)\n })\n\n if (blacklisted) {\n context.status = 403\n return\n }\n }\n\n if (Array.isArray(protectedlist) && protectedlist.length > 0) {\n const safe = protectedlist.some(item => {\n return new RegExp(item).test(ip)\n })\n\n context.state.unsafeIP = !safe\n\n if (!safe) {\n context.state.prohibitedPrivileges = privileges\n }\n }\n }\n\n context.state.domain = domain\n\n return next()\n}\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.initMiddlewares =
|
3
|
+
exports.initMiddlewares = initMiddlewares;
|
4
4
|
const tslib_1 = require("tslib");
|
5
5
|
const env_1 = require("@things-factory/env");
|
6
6
|
const domain_middleware_1 = require("./domain-middleware");
|
@@ -36,6 +36,5 @@ function initMiddlewares(app) {
|
|
36
36
|
await next();
|
37
37
|
});
|
38
38
|
}
|
39
|
-
exports.initMiddlewares = initMiddlewares;
|
40
39
|
tslib_1.__exportStar(require("./domain-middleware"), exports);
|
41
40
|
//# sourceMappingURL=index.js.map
|