@operato/property-panel 9.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.
Files changed (156) hide show
  1. package/.editorconfig +29 -0
  2. package/.storybook/main.js +5 -0
  3. package/.storybook/preview.js +52 -0
  4. package/.storybook/server.mjs +8 -0
  5. package/CHANGELOG.md +11 -0
  6. package/LICENSE +21 -0
  7. package/README.md +76 -0
  8. package/demo/index.html +30 -0
  9. package/dist/src/graphql/board.d.ts +6 -0
  10. package/dist/src/graphql/board.js +130 -0
  11. package/dist/src/graphql/board.js.map +1 -0
  12. package/dist/src/graphql/data-subscription.d.ts +5 -0
  13. package/dist/src/graphql/data-subscription.js +24 -0
  14. package/dist/src/graphql/data-subscription.js.map +1 -0
  15. package/dist/src/graphql/favorite-board.d.ts +1 -0
  16. package/dist/src/graphql/favorite-board.js +23 -0
  17. package/dist/src/graphql/favorite-board.js.map +1 -0
  18. package/dist/src/graphql/group.d.ts +7 -0
  19. package/dist/src/graphql/group.js +125 -0
  20. package/dist/src/graphql/group.js.map +1 -0
  21. package/dist/src/graphql/index.d.ts +4 -0
  22. package/dist/src/graphql/index.js +5 -0
  23. package/dist/src/graphql/index.js.map +1 -0
  24. package/dist/src/graphql/play-group.d.ts +13 -0
  25. package/dist/src/graphql/play-group.js +205 -0
  26. package/dist/src/graphql/play-group.js.map +1 -0
  27. package/dist/src/graphql/scenario.d.ts +6 -0
  28. package/dist/src/graphql/scenario.js +69 -0
  29. package/dist/src/graphql/scenario.js.map +1 -0
  30. package/dist/src/index.d.ts +7 -0
  31. package/dist/src/index.js +8 -0
  32. package/dist/src/index.js.map +1 -0
  33. package/dist/src/ox-property-panel.d.ts +46 -0
  34. package/dist/src/ox-property-panel.js +346 -0
  35. package/dist/src/ox-property-panel.js.map +1 -0
  36. package/dist/src/property-panel/abstract-property.d.ts +10 -0
  37. package/dist/src/property-panel/abstract-property.js +53 -0
  38. package/dist/src/property-panel/abstract-property.js.map +1 -0
  39. package/dist/src/property-panel/data-binding/data-binding-mapper.d.ts +58 -0
  40. package/dist/src/property-panel/data-binding/data-binding-mapper.js +380 -0
  41. package/dist/src/property-panel/data-binding/data-binding-mapper.js.map +1 -0
  42. package/dist/src/property-panel/data-binding/data-binding-value-map.d.ts +6 -0
  43. package/dist/src/property-panel/data-binding/data-binding-value-map.js +20 -0
  44. package/dist/src/property-panel/data-binding/data-binding-value-map.js.map +1 -0
  45. package/dist/src/property-panel/data-binding/data-binding-value-range.d.ts +6 -0
  46. package/dist/src/property-panel/data-binding/data-binding-value-range.js +20 -0
  47. package/dist/src/property-panel/data-binding/data-binding-value-range.js.map +1 -0
  48. package/dist/src/property-panel/data-binding/data-binding.d.ts +44 -0
  49. package/dist/src/property-panel/data-binding/data-binding.js +442 -0
  50. package/dist/src/property-panel/data-binding/data-binding.js.map +1 -0
  51. package/dist/src/property-panel/effects/effects.d.ts +24 -0
  52. package/dist/src/property-panel/effects/effects.js +72 -0
  53. package/dist/src/property-panel/effects/effects.js.map +1 -0
  54. package/dist/src/property-panel/effects/property-animation.d.ts +23 -0
  55. package/dist/src/property-panel/effects/property-animation.js +147 -0
  56. package/dist/src/property-panel/effects/property-animation.js.map +1 -0
  57. package/dist/src/property-panel/effects/property-animations.d.ts +22 -0
  58. package/dist/src/property-panel/effects/property-animations.js +70 -0
  59. package/dist/src/property-panel/effects/property-animations.js.map +1 -0
  60. package/dist/src/property-panel/effects/property-event-hover.d.ts +21 -0
  61. package/dist/src/property-panel/effects/property-event-hover.js +193 -0
  62. package/dist/src/property-panel/effects/property-event-hover.js.map +1 -0
  63. package/dist/src/property-panel/effects/property-event-tap.d.ts +36 -0
  64. package/dist/src/property-panel/effects/property-event-tap.js +262 -0
  65. package/dist/src/property-panel/effects/property-event-tap.js.map +1 -0
  66. package/dist/src/property-panel/effects/property-event.d.ts +22 -0
  67. package/dist/src/property-panel/effects/property-event.js +64 -0
  68. package/dist/src/property-panel/effects/property-event.js.map +1 -0
  69. package/dist/src/property-panel/effects/property-shadow.d.ts +23 -0
  70. package/dist/src/property-panel/effects/property-shadow.js +66 -0
  71. package/dist/src/property-panel/effects/property-shadow.js.map +1 -0
  72. package/dist/src/property-panel/effects/value-converter.d.ts +1 -0
  73. package/dist/src/property-panel/effects/value-converter.js +17 -0
  74. package/dist/src/property-panel/effects/value-converter.js.map +1 -0
  75. package/dist/src/property-panel/inspector/inspector.d.ts +27 -0
  76. package/dist/src/property-panel/inspector/inspector.js +357 -0
  77. package/dist/src/property-panel/inspector/inspector.js.map +1 -0
  78. package/dist/src/property-panel/shapes/shapes.d.ts +26 -0
  79. package/dist/src/property-panel/shapes/shapes.js +312 -0
  80. package/dist/src/property-panel/shapes/shapes.js.map +1 -0
  81. package/dist/src/property-panel/specifics/specific-properties-builder.d.ts +16 -0
  82. package/dist/src/property-panel/specifics/specific-properties-builder.js +138 -0
  83. package/dist/src/property-panel/specifics/specific-properties-builder.js.map +1 -0
  84. package/dist/src/property-panel/specifics/specifics.d.ts +25 -0
  85. package/dist/src/property-panel/specifics/specifics.js +84 -0
  86. package/dist/src/property-panel/specifics/specifics.js.map +1 -0
  87. package/dist/src/property-panel/styles/styles.d.ts +23 -0
  88. package/dist/src/property-panel/styles/styles.js +269 -0
  89. package/dist/src/property-panel/styles/styles.js.map +1 -0
  90. package/dist/src/types.d.ts +43 -0
  91. package/dist/src/types.js +2 -0
  92. package/dist/src/types.js.map +1 -0
  93. package/dist/stories/index.stories.d.ts +22 -0
  94. package/dist/stories/index.stories.js +121 -0
  95. package/dist/stories/index.stories.js.map +1 -0
  96. package/dist/stories/input-table-property.stories.d.ts +21 -0
  97. package/dist/stories/input-table-property.stories.js +84 -0
  98. package/dist/stories/input-table-property.stories.js.map +1 -0
  99. package/dist/test/ox-property-panel.test.d.ts +1 -0
  100. package/dist/test/ox-property-panel.test.js +24 -0
  101. package/dist/test/ox-property-panel.test.js.map +1 -0
  102. package/dist/tsconfig.tsbuildinfo +1 -0
  103. package/package.json +108 -0
  104. package/src/graphql/board.ts +144 -0
  105. package/src/graphql/data-subscription.ts +30 -0
  106. package/src/graphql/favorite-board.ts +25 -0
  107. package/src/graphql/group.ts +138 -0
  108. package/src/graphql/index.ts +4 -0
  109. package/src/graphql/play-group.ts +225 -0
  110. package/src/graphql/scenario.ts +79 -0
  111. package/src/index.ts +8 -0
  112. package/src/ox-property-panel.ts +347 -0
  113. package/src/property-panel/abstract-property.ts +67 -0
  114. package/src/property-panel/data-binding/data-binding-mapper.ts +412 -0
  115. package/src/property-panel/data-binding/data-binding-value-map.ts +19 -0
  116. package/src/property-panel/data-binding/data-binding-value-range.ts +19 -0
  117. package/src/property-panel/data-binding/data-binding.ts +464 -0
  118. package/src/property-panel/effects/effects.ts +77 -0
  119. package/src/property-panel/effects/property-animation.ts +155 -0
  120. package/src/property-panel/effects/property-animations.ts +74 -0
  121. package/src/property-panel/effects/property-event-hover.ts +212 -0
  122. package/src/property-panel/effects/property-event-tap.ts +269 -0
  123. package/src/property-panel/effects/property-event.ts +73 -0
  124. package/src/property-panel/effects/property-shadow.ts +77 -0
  125. package/src/property-panel/effects/value-converter.ts +17 -0
  126. package/src/property-panel/inspector/inspector.ts +407 -0
  127. package/src/property-panel/shapes/shapes.ts +321 -0
  128. package/src/property-panel/specifics/specific-properties-builder.ts +152 -0
  129. package/src/property-panel/specifics/specifics.ts +81 -0
  130. package/src/property-panel/styles/styles.ts +287 -0
  131. package/src/types.ts +63 -0
  132. package/stories/index.stories.ts +134 -0
  133. package/stories/input-table-property.stories.ts +96 -0
  134. package/test/ox-property-panel.test.ts +32 -0
  135. package/themes/app-theme.css +138 -0
  136. package/themes/calendar-theme.css +61 -0
  137. package/themes/dark.css +51 -0
  138. package/themes/grist-theme.css +175 -0
  139. package/themes/help-theme.css +57 -0
  140. package/themes/layout-theme.css +94 -0
  141. package/themes/light.css +51 -0
  142. package/themes/material-theme.css +23 -0
  143. package/themes/md-typescale-styles.css +100 -0
  144. package/themes/oops-theme.css +22 -0
  145. package/themes/report-theme.css +47 -0
  146. package/themes/spacing.css +23 -0
  147. package/themes/state-color.css +6 -0
  148. package/themes/tooltip-theme.css +11 -0
  149. package/translations/en.json +723 -0
  150. package/translations/ja.json +727 -0
  151. package/translations/ko.json +727 -0
  152. package/translations/ms.json +609 -0
  153. package/translations/zh.json +726 -0
  154. package/tsconfig.json +25 -0
  155. package/web-dev-server.config.mjs +27 -0
  156. package/web-test-runner.config.mjs +41 -0
@@ -0,0 +1,138 @@
1
+ body {
2
+ /* theme color */
3
+ --primary-color: var(--md-sys-color-primary);
4
+ --secondary-color: var(--md-sys-color-secondary);
5
+ --focus-color: var(--md-sys-color-on-primary);
6
+ --primary-background-color: var(--md-sys-color-primary-container);
7
+ --secondary-background-color: var(--md-sys-color-secondary-container);
8
+
9
+ --focus-background-color: var(--md-sys-color-primary);
10
+ --primary-text-color: var(--md-sys-color-on-primary);
11
+ --secondary-text-color: var(--md-sys-color-on-secondary);
12
+
13
+ /* common style */
14
+ --border-radius: 4px;
15
+ --border-dim-color: 1px solid rgba(0, 0, 0, 0.15);
16
+ --border-light-color: 1px solid rgba(255, 255, 255, 0.3);
17
+
18
+ --box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.1);
19
+
20
+ --theme-font: 'Noto', Helvetica;
21
+
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);
28
+
29
+ --scrollbar-thumb-color: rgba(57, 78, 100, 0.5);
30
+ --scrollbar-thumb-hover-color: var(--md-sys-color-primary);
31
+
32
+ --fontsize-default: 14px;
33
+ --fontsize-small: 13px;
34
+ --fontsize-large: 16px;
35
+
36
+ /* app layout style */
37
+ --app-grid-template-area: 'header header header' 'nav main aside' 'nav footer aside';
38
+
39
+ /* title & description style */
40
+ --title-margin: var(--margin-narrow) 0;
41
+ --title-font: bold 24px var(--theme-font);
42
+ --title-text-color: var(--md-sys-color-secondary);
43
+ --title-font-mobile: bold 20px var(--theme-font);
44
+
45
+ --page-description-margin: var(--margin-narrow) 0 var(--margin-wide) 0;
46
+ --page-description-font: normal var(--fontsize-default) / 1.2rem var(--theme-font);
47
+ --page-description-color: var(--md-sys-color-primary);
48
+
49
+ --subtitle-padding: 12px 5px 3px 5px;
50
+ --subtitle-font: bold 18px var(--theme-font);
51
+ --subtitle-text-color: var(--md-sys-color-primary);
52
+ --subtitle-border-bottom: 1px solid var(--md-sys-color-primary);
53
+
54
+ /* icon style */
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);
58
+ --icon-default-color: var(--md-sys-color-on-primary);
59
+
60
+ /* material design component themes */
61
+ --mdc-theme-on-primary: var(--md-sys-color-on-primary);
62
+ --mdc-theme-primary: var(--secondary-text-color);
63
+ --mdc-theme-on-secondary: var(--md-sys-color-on-primary);
64
+ --mdc-theme-secondary: var(--md-sys-color-primary);
65
+ --mdc-button-outline-color: var(--md-sys-color-primary);
66
+ --mdc-danger-button-primary-color: var(--status-danger-color);
67
+ --mdc-danger-button-outline-color: var(--status-danger-color);
68
+ --mdc-button-outline-width: 1px;
69
+ --mdc-button-horizontal-padding: 16px;
70
+
71
+ /* button style */
72
+ --button-background-color: var(--md-sys-color-surface-variant);
73
+ --button-background-focus-color: var(--md-sys-color-primary);
74
+ --button-border: var(--border-dim-color);
75
+ --button-border-radius: var(--border-radius);
76
+ --button-margin: var(--margin-default) var(--margin-default) var(--margin-default) 0;
77
+ --button-padding: calc(var(--padding-narrow) * 1.5) var(--padding-wide);
78
+ --button-color: var(--md-sys-color-secondary);
79
+ --button-font: 600 var(--fontsize-default) var(--theme-font);
80
+ --button-text-transform: capitalize;
81
+ --button-active-box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.2);
82
+ --button-activ-border: 1px solid var(--md-sys-color-primary);
83
+ --button-activ-background-color: var(--md-sys-color-primary);
84
+ --button-activ-color: var(--md-sys-color-on-primary);
85
+ --iconbtn-padding: var(--padding-narrow);
86
+
87
+ --button-primary-background-color: var(--md-sys-color-primary);
88
+ --button-primary-active-background-color: var(--status-success-color);
89
+ --button-primary-padding: var(--margin-default) var(--margin-wide);
90
+ --button-primary-color: var(--md-sys-color-on-primary);
91
+ --button-primary-font: bold 16px var(--theme-font);
92
+
93
+ /* table style */
94
+ --th-padding: var(--padding-default);
95
+ --th-border-top: 2px solid var(--md-sys-color-secondary);
96
+ --th-text-transform: capitalize;
97
+ --th-font: bold var(--fontsize-small) var(--theme-font);
98
+ --th-color: var(--md-sys-color-secondary);
99
+
100
+ --tr-background-color: var(--md-sys-color-surface-variant);
101
+ --tr-background-odd-color: rgba(255, 255, 255, 0.4);
102
+ --tr-background-hover-color: #e1f5fe;
103
+ --td-border-line: 1px solid rgba(0, 0, 0, 0.05);
104
+ --td-border-bottom: 1px solid rgba(0, 0, 0, 0.09);
105
+ --td-padding: var(--padding-default);
106
+ --td-font: normal 13px var(--theme-font);
107
+ --td-color: var(--md-sys-color-secondary);
108
+
109
+ --label-cell-background-color: var(--md-sys-color-surface); /* th or td common background color */
110
+
111
+ /* form style */
112
+ --label-font: normal var(--fontsize-default) var(--theme-font);
113
+ --label-color: var(--md-sys-color-on-surface);
114
+ --label-text-transform: capitalize;
115
+ --input-margin: var(--margin-narrow) 0;
116
+ --input-padding: 6px 2px;
117
+ --input-min-width: 200px;
118
+ --input-font: normal var(--fontsize-default) var(--theme-font);
119
+ --input-hint-font: normal var(--fontsize-small) var(--theme-font);
120
+ --input-hint-color: #666;
121
+ --input-container-max-width: 900px;
122
+ --fieldset-margin: var(--padding-wide) 0;
123
+ --fieldset-padding: 0 var(--padding-wide) var(--padding-wide) var(--padding-wide);
124
+ --legend-padding: var(--padding-default) 0;
125
+ --legend-color: var(--md-sys-color-secondary);
126
+ --legend-font: bold 16px var(--theme-font);
127
+ }
128
+
129
+ body.dark {
130
+ caret-color: white;
131
+ }
132
+
133
+ @media only screen and (max-width: 460px) {
134
+ body {
135
+ /* subtitle style */
136
+ --subtitle-margin: 0;
137
+ }
138
+ }
@@ -0,0 +1,61 @@
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-month-background-color: var(--md-sys-color-surface-variant);
13
+ --calendar-current-month-color: var(--md-sys-color-on-surface);
14
+ --calendar-monthly-label-align: left;
15
+ --calendar-monthly-label-padding: var(--padding-narrow) 0;
16
+ --calendar-monthly-label-color: var(--md-sys-color-secondary);
17
+ --calendar-monthly-opacity: 0.5;
18
+ --calendar-monthly-date-label-background-color: var(--status-danger-color);
19
+ --calendar-monthly-date-label-margin: var(--margin-narrow);
20
+ --calendar-monthly-date-label-padding: 0px 6px;
21
+ --calendar-monthly-date-label-color: var(--md-sys-color-on-primary);
22
+
23
+ --calendar-monthly-background-color: #f4f4f4;
24
+ --calendar-monthly-event-border-radius: var(--border-radius);
25
+ --calendar-monthly-event-margin: var(--padding-narrow) 0 0 0;
26
+ --calendar-monthly-event-padding: 2px var(--padding-default);
27
+ --calendar-monthly-event-border: 3px solid #ccc;
28
+ --calendar-monthly-event-border-width: 0 0 0 3px;
29
+
30
+ /* weekly common color */
31
+ --calendar-weekly-text-color: var(--md-sys-color-secondary);
32
+ --calendar-weekly-border: 1px solid rgba(0, 0, 0, 0.1);
33
+ --calendar-weekly-border-width: 0 1px 1px 0px;
34
+
35
+ /* weekly layout */
36
+ --calendar-weekly-ol-margin: var(--margin-default) 0;
37
+ --calendar-weekly-ol-top-border: 2px solid var(--md-sys-color-secondary);
38
+ --calendar-current-week-background-color: var(--md-sys-color-surface-variant);
39
+ --calendar-current-week-color: var(--md-sys-color-on-surface);
40
+ --calendar-weekly-label-align: center;
41
+ --calendar-weekly-label-padding: var(--padding-narrow) 0;
42
+ --calendar-weekly-label-color: var(--md-sys-color-secondary);
43
+ --calendar-weekly-opacity: 0.5;
44
+ --calendar-weekly-date-label-background-color: var(--status-danger-color);
45
+ --calendar-weekly-date-label-margin: var(--margin-narrow);
46
+ --calendar-weekly-date-label-padding: 0px 6px;
47
+ --calendar-weekly-date-label-color: var(--md-sys-color-on-primary);
48
+
49
+ --calendar-weekly-background-color: #f4f4f4;
50
+ --calendar-weekly-event-border-radius: var(--border-radius);
51
+ --calendar-weekly-event-margin: var(--padding-narrow) 0 0 0;
52
+ --calendar-weekly-event-padding: 2px var(--padding-default);
53
+ --calendar-weekly-event-border: 3px solid #ccc;
54
+ --calendar-weekly-event-border-width: 0 0 0 3px;
55
+ }
56
+
57
+ @media only screen and (max-width: 460px) {
58
+ body {
59
+ --calendar-monthly-text-color: tomato;
60
+ }
61
+ }
@@ -0,0 +1,51 @@
1
+ .dark {
2
+ --md-sys-color-primary: rgb(178 197 255);
3
+ --md-sys-color-surface-tint: rgb(178 197 255);
4
+ --md-sys-color-on-primary: rgb(24 46 96);
5
+ --md-sys-color-primary-container: rgb(49 69 120);
6
+ --md-sys-color-on-primary-container: rgb(218 226 255);
7
+ --md-sys-color-secondary: rgb(143 207 243);
8
+ --md-sys-color-on-secondary: rgb(0 53 73);
9
+ --md-sys-color-secondary-container: rgb(0 76 104);
10
+ --md-sys-color-on-secondary-container: rgb(195 232 255);
11
+ --md-sys-color-tertiary: #cffce3;
12
+ --md-sys-color-on-tertiary: rgb(0 56 35);
13
+ --md-sys-color-tertiary-container: #005234;
14
+ --md-sys-color-on-tertiary-container: #cffce3;
15
+ --md-sys-color-error: #fbafa9;
16
+ --md-sys-color-on-error: #fe594e;
17
+ --md-sys-color-error-container: #fe594e;
18
+ --md-sys-color-on-error-container: #fbafa9;
19
+ --md-sys-color-background: rgb(18 19 24);
20
+ --md-sys-color-on-background: rgb(227 226 233);
21
+ --md-sys-color-surface: rgb(18 19 24);
22
+ --md-sys-color-on-surface: rgb(227 226 233);
23
+ --md-sys-color-surface-variant: rgb(69 70 79);
24
+ --md-sys-color-on-surface-variant: rgb(197 198 208);
25
+ --md-sys-color-outline: rgb(143 144 154);
26
+ --md-sys-color-outline-variant: rgb(69 70 79);
27
+ --md-sys-color-shadow: rgb(0 0 0);
28
+ --md-sys-color-scrim: rgb(0 0 0);
29
+ --md-sys-color-inverse-surface: rgb(227 226 233);
30
+ --md-sys-color-inverse-on-surface: rgb(47 48 54);
31
+ --md-sys-color-inverse-primary: rgb(73 93 146);
32
+ --md-sys-color-primary-fixed: rgb(218 226 255);
33
+ --md-sys-color-on-primary-fixed: rgb(0 24 72);
34
+ --md-sys-color-primary-fixed-dim: rgb(178 197 255);
35
+ --md-sys-color-on-primary-fixed-variant: rgb(49 69 120);
36
+ --md-sys-color-secondary-fixed: rgb(195 232 255);
37
+ --md-sys-color-on-secondary-fixed: rgb(0 30 44);
38
+ --md-sys-color-secondary-fixed-dim: rgb(143 207 243);
39
+ --md-sys-color-on-secondary-fixed-variant: rgb(0 76 104);
40
+ --md-sys-color-tertiary-fixed: #c7e6d5;
41
+ --md-sys-color-on-tertiary-fixed: rgb(0 33 19);
42
+ --md-sys-color-tertiary-fixed-dim: #c7e6d5;
43
+ --md-sys-color-on-tertiary-fixed-variant: rgb(0 82 52);
44
+ --md-sys-color-surface-dim: rgb(18 19 24);
45
+ --md-sys-color-surface-bright: rgb(56 57 63);
46
+ --md-sys-color-surface-container-lowest: rgb(13 14 19);
47
+ --md-sys-color-surface-container-low: rgb(26 27 33);
48
+ --md-sys-color-surface-container: rgb(30 31 37);
49
+ --md-sys-color-surface-container-high: rgb(41 42 47);
50
+ --md-sys-color-surface-container-highest: rgb(51 52 58);
51
+ }
@@ -0,0 +1,175 @@
1
+ body {
2
+ --grid-container-border-color: 1px solid rgba(0, 0, 0, 0.09);
3
+ --grid-container-border-width: 1px 0;
4
+ --grid-wrap-container-border: 0px solid transparent;
5
+ --grid-wrap-container-border-width: 0;
6
+
7
+ --grist-background-color: transparent;
8
+ --grist-title-margin: 0 0 0 10px;
9
+ --grist-title-border: none;
10
+ --grist-title-font: var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)) 1.1em
11
+ var(--theme-font, 'Roboto');
12
+ --grist-title-color: var(--md-sys-color-on-surface);
13
+ --grist-title-icon-color: var(--md-sys-color-on-surface-variant);
14
+ --grist-title-icon-margin: 0 3px 2px 0;
15
+ --grist-title-icon-size: var(--md-sys-typescale-label-large-size, 0.875rem);
16
+ --grist-title-with-grid-padding: 0;
17
+
18
+ --grist-object-editor-font: normal 1em var(--theme-font, 'Roboto');
19
+ --grist-object-editor-color: var(--md-sys-color-on-surface);
20
+
21
+ --grist-input-progress-border: 1px solid rgba(255, 255, 255, 0.5);
22
+ --grist-input-progress-background: rgba(121, 110, 110, 0.1);
23
+ --grist-input-progress-bar-background: var(--md-sys-color-primary-fixed-dim);
24
+ --grist-input-progress-bar-color: var(--md-sys-color-on-surface-variant);
25
+
26
+ --grid-header-background-color: var(--md-sys-color-surface-container-low);
27
+ --grid-header-top-border: 2px solid var(--md-sys-color-primary);
28
+ --grid-header-bottom-border: var(--grid-container-border-color);
29
+ --grid-header-border-color: var(--md-sys-color-outline);
30
+ --grid-header-padding: var(--spacing-small) var(--spacing-tiny);
31
+ --grid-header-sorter-size: 18px;
32
+ --grid-header-splitter-border: var(--grid-container-border-color);
33
+ --grid-header-splitter-border-hover: 1px solid var(--md-sys-color-inverse-primary);
34
+ --grid-header-color: var(--md-sys-color-primary);
35
+ --grid-header-font: var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500))
36
+ var(--fontsize-small) var(--theme-font, 'Roboto');
37
+ --grid-header-filter-title-color: var(--md-sys-color-on-surface);
38
+ --grid-header-filter-title-font: normal 12px var(--theme-font, 'Roboto');
39
+ --grid-header-filter-title-icon-color: var(--md-sys-color-on-surface-variant);
40
+
41
+ --grid-body-bottom-border: var(--grid-header-bottom-border);
42
+
43
+ --grid-gutter-padding: var(--spacing-tiny) 0;
44
+
45
+ --grid-record-background-color: var(--md-sys-color-surface-container-lowest);
46
+ --grid-record-odd-background-color: var(--md-sys-color-surface-container-low);
47
+ --grid-record-padding: var(--spacing-small) var(--spacing-medium);
48
+ --grid-record-color: var(--md-sys-color-on-surface-variant);
49
+ --grid-record-color-hover: var(--md-sys-color-primary);
50
+ --grid-record-wide-fontsize: var(--md-sys-typescale-label-large-size, 0.875rem);
51
+ --grid-record-selected-background-color: var(--md-sys-color-primary-container);
52
+ --grid-record-selected-color: var(--md-sys-color-on-primary-container);
53
+ --grid-record-focused-border: 1px solid var(--md-sys-color-outline-variant);
54
+ --grid-record-focused-cell-background-color: var(--md-sys-color-secondary-container);
55
+ --grid-record-focused-cell-border: 1px dashed var(--md-sys-color-outline);
56
+ --grid-record-focused-box-shadow: 0px 2px 0px 0px rgb(0 0 0 / 10%);
57
+ --grid-record-emphasized-background-color: var(--md-sys-color-secondary-fixed-dim);
58
+ --grid-record-emphasized-color: var(--md-sys-color-on-secondary-fixed-variant);
59
+ --grid-record-editing-background-color: var(--md-sys-color-inverse-primary);
60
+ --grid-record-editing-border: 1px dashed rgba(var(--md-sys-color-primary-rgb), 0.4);
61
+ --grid-record-fontsize: var(--md-sys-typescale-label-large-size, 0.875rem);
62
+ --grid-record-border-bottom: var(--grid-container-border-color);
63
+
64
+ --grid-record-dirty-border-top: 24px solid rgba(var(--md-sys-color-primary-rgb), 0.6);
65
+ --grid-record-dirty-border-left: 24px solid transparent;
66
+ --grid-record-dirty-icon-font: bold 10px/12px var(--md-icon-font, 'Material Symbols Outlined');
67
+ --grid-record-dirty-icon-size: var(--fontsize-large);
68
+ --grid-record-dirty-color: var(--md-sys-color-surface);
69
+
70
+ --grid-footer-background-color: var(--md-sys-color-surface-container-low);
71
+ --grid-footer-font-size: var(--md-sys-typescale-label-large-size, 0.875rem);
72
+ --grid-footer-color: var(--md-sys-color-primary);
73
+ --grid-footer-limit-color: var(--md-ref-palette-neutral40, #5f5f5f);
74
+ --grid-footer-inactive-color: var(--md-ref-palette-neutral40, #5f5f5f);
75
+ --grid-footer-padding: var(--spacing-small) var(--spacing-medium);
76
+
77
+ --data-list-background-color: var(--md-sys-color-surface-container-lowest);
78
+ --data-list-item-margin: var(--spacing-medium);
79
+ --data-list-item-padding: var(--spacing-medium) var(--spacing-large);
80
+ --data-list-item-border-bottom: var(--grid-container-border-color);
81
+ --data-list-item-name-font: bold 1.1em var(--theme-font, 'Roboto');
82
+ --data-list-item-name-color: var(--md-sys-color-secondary);
83
+ --data-list-item-disc-font: normal 0.9em var(--theme-font, 'Roboto');
84
+ --data-list-item-disc-color: var(--md-sys-color-on-tertiary-container);
85
+ --data-list-item-etc-label-font: bold 1em/1em var(--theme-font, 'Roboto');
86
+ --data-list-item-etc-font: normal 0.9em/1em var(--theme-font, 'Roboto');
87
+ --data-list-item-etc-color: var(--md-ref-palette-neutral50, #787878);
88
+ --data-list-item-icon-font: normal 1em/1em;
89
+ --data-list-item-icon-color: var(--md-sys-color-on-secondary);
90
+ --data-list-selected-background-color: var(--grid-record-selected-background-color);
91
+ --data-list-fab-position-horizontal: 15px;
92
+ --data-list-fab-position-vertical: 15px;
93
+ --data-list-fab-color: var(--md-sys-color-primary);
94
+ --data-list-fab-shadow: var(--box-shadow);
95
+
96
+ --data-card-background-color: var(--md-sys-color-surface-container);
97
+ --data-card-record-card-background-color: var(--md-sys-color-surface-container-lowest);
98
+ --data-card-record-card-border: var(--grid-container-border-color);
99
+ --data-card-record-card-border-hover: 1px solid var(--md-sys-color-primary);
100
+ --data-card-record-card-boxshadow-hover: 1px 1px 2px 1px rgba(0, 0, 0, 0.15);
101
+ --data-card-record-card-selected-border: 1px solid var(--md-sys-color-primary);
102
+ --data-card-record-card-border-radius: var(--md-sys-shape-corner-small);
103
+ --data-card-item-margin: var(--spacing-medium);
104
+ --data-card-item-padding: var(--spacing-medium) var(--spacing-large);
105
+ --data-card-item-border-bottom: var(--grid-container-border-color);
106
+ --data-card-item-name-font: bold 1.1em var(--theme-font, 'Roboto');
107
+ --data-card-item-name-color: var(--md-sys-color-secondary);
108
+ --data-card-item-name-label-font: normal 0.65em/0.8em var(--theme-font, 'Roboto');
109
+ --data-card-item-name-label-color: var(--md-sys-color-secondary);
110
+ --data-card-item-disc-font: normal 0.9em var(--theme-font, 'Roboto');
111
+ --data-card-item-disc-color: var(--md-sys-color-tertiary);
112
+ --data-card-item-etc-label-font: normal 1em/1em var(--theme-font, 'Roboto');
113
+ --data-card-item-etc-font: normal 0.9em/1em var(--theme-font, 'Roboto');
114
+ --data-card-item-etc-color: var(--md-ref-palette-neutral50, #787878);
115
+ --data-card-item-icon-font: normal 1em/1em;
116
+ --data-card-item-icon-color: var(--md-sys-color-on-secondary);
117
+ --data-card-item-btn-border: var(--grid-container-border-color);
118
+ --data-card-item-btn-border-radius: var(--md-sys-shape-corner-small);
119
+ --data-card-item-btn-padding: var(--spacing-small);
120
+ --data-card-selected-background-color: var(--grid-record-selected-background-color);
121
+ --data-card-fab-position-horizontal: 15px;
122
+ --data-card-fab-position-vertical: 15px;
123
+ --data-card-fab-color: var(--md-sys-color-primary);
124
+ --data-card-fab-shadow: var(--box-shadow);
125
+ --data-card-thumbnail-height: 140px;
126
+ --data-card-thumbnail-border-bottom: var(--grid-container-border-color);
127
+ --data-card-attachimg-height: 70px;
128
+
129
+ --record-view-background-color: var(--md-sys-color-surface-container);
130
+ --record-view-gap: var(--spacing-small) 0;
131
+ --record-view-padding: var(--spacing-medium);
132
+ --record-view-label-font: var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)) 15px
133
+ var(--theme-font, 'Roboto');
134
+ --record-view-label-color: var(--md-sys-color-secondary);
135
+ --record-view-label-icon-size: var(--fontsize-small);
136
+ --record-view-font: normal 15px var(--theme-font, 'Roboto');
137
+ --record-view-color: var(--md-sys-color-secondary);
138
+ --record-view-focus-color: var(--md-sys-color-primary);
139
+ --record-view-border-bottom: var(--grid-container-border-color);
140
+ --record-view-edit-border-bottom: 2px solid var(--md-sys-color-primary);
141
+ --record-view-item-padding: var(--spacing-medium);
142
+
143
+ --record-view-footer-background: var(--md-ref-palette-neutral50, #787878);
144
+ --record-view-footer-button-border: var(--grid-container-border-color);
145
+ --record-view-footer-button-border-width: 0 0 0 1px;
146
+ --record-view-footer-button-font: 17px;
147
+ --record-view-footer-button-color: var(--md-sys-color-surface);
148
+ --record-view-footer-iconbutton-size: 35px;
149
+ --record-view-footer-focus-background: var(--md-sys-color-primary);
150
+
151
+ --ox-grist-padding: var(--spacing-medium);
152
+ }
153
+
154
+ @media only screen and (max-width: 460px) {
155
+ body {
156
+ --record-view-label-font: var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)) 15px/32px
157
+ var(--theme-font, 'Roboto');
158
+ --record-view-font: normal 15px/32px var(--theme-font, 'Roboto');
159
+ --ox-grist-padding: 0;
160
+ }
161
+ }
162
+ @media (min-width: 461px) and (max-width: 700px) {
163
+ body {
164
+ --ox-grist-padding: 0;
165
+ }
166
+ }
167
+ @media (min-width: 461px) and (max-width: 1024px) {
168
+ body {
169
+ --data-card-create-form-padding: 7px;
170
+ }
171
+ }
172
+
173
+ body.dark {
174
+ --grid-container-border-color: 1px solid rgba(255, 255, 255, 0.09);
175
+ }
@@ -0,0 +1,57 @@
1
+ body {
2
+ --help-panel-background-color: var(--theme-white-color);
3
+ --help-panel-width: 450px;
4
+ --help-panel-margin: 0;
5
+ --help-panel-padding: var(--padding-default) 0 var(--padding-default) var(--padding-wide);
6
+ --help-panel-border-raidus: 9px;
7
+ --help-panel-box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.15);
8
+ --help-panel-border: 2px solid var(--primary-color);
9
+
10
+ --help-panel-color: var(--primary-text-color);
11
+
12
+ --help-panel-title-margin: var(--margin-default) 0 var(--margin-narrow) 0;
13
+ --help-panel-title-padding: 0;
14
+ --help-panel-title-background-color: rgba(var(--primary-color-rgb), 0.1);
15
+ --help-panel-h1-title-font-size: 1.6em;
16
+ --help-panel-h1-title-color: var(--primary-color);
17
+ --help-panel-h2-title-font-size: 1.3em;
18
+ --help-panel-h2-title-color: var(--secondary-color);
19
+ --help-panel-h3-title-font-size: 1.1em;
20
+ --help-panel-h3-title-color: var(--secondary-text-color);
21
+
22
+ --help-panel-content-padding: var(--padding-default) var(--padding-wide);
23
+ --help-panel-paragraph-margin: 0 0 var(--margin-default) 0;
24
+ --help-panel-font-size: 0.9em;
25
+ --help-panel-content-font-size: 0.8em;
26
+
27
+ --help-panel-focusBox-padding: var(--padding-narrow) var(--padding-default);
28
+ --help-panel-focusBox-border: 1px solid rgba(0, 0, 0, 0.2);
29
+ --help-panel-focusBox-border-radius: var(--border-radius);
30
+ --help-panel-focusBox-background-color: rgba(0, 0, 0, 0.2);
31
+ --help-panel-focusBox-color: #ffe393;
32
+
33
+ --help-panel-a-color: var(--secondary-color);
34
+ --help-panel-a-icon-size: 1.3em;
35
+
36
+ --help-icon-color: var(--secondary-color);
37
+ --help-icon-hover-color: var(--primary-color);
38
+ --help-icon-size: 18px;
39
+ --help-icon-opacity: 0.4;
40
+ --help-icon-hover-opacity: 1;
41
+
42
+ --help-navigation-padding: 0;
43
+ --help-navigation-bottom: 1px solid rgba(var(--primary-color-rgb), 0.5);
44
+ --help-navigation-icon-padding: 0;
45
+ --help-navigation-icon-border: 1px solid rgba(0, 0, 0, 0.1);
46
+ }
47
+
48
+ @media only screen and (max-width: 460px) {
49
+ body {
50
+ --help-panel-width: 100vw;
51
+ --help-panel-border-raidus: 0;
52
+ --help-panel-border: none;
53
+ --help-panel-box-shadow: none;
54
+
55
+ --help-panel-title-padding: 0 0 0 var(--padding-wide);
56
+ }
57
+ }
@@ -0,0 +1,94 @@
1
+ body {
2
+ --header-bar-background-color: var(--md-sys-color-primary);
3
+ --header-bar-icon-size: var(--icon-default-size);
4
+ --header-bar-title: bold 17.5px var(--theme-font);
5
+ --header-bar-color: var(--md-sys-color-on-primary);
6
+ --header-bar-height: 45px;
7
+
8
+ --nav-bar-background-color: var(--md-sys-color-primary-container);
9
+
10
+ --group-bar-background-color: var(--md-sys-color-secondary-container);
11
+ --group-bar-textbutton: 16px/32px var(--theme-font);
12
+ --group-bar-textbutton-active: bold var(--group-bar-textbutton);
13
+ --group-bar-active-line-color: var(--md-sys-color-on-secondary-container);
14
+ --group-bar-line: solid 3px rgba(0, 0, 0, 0.2);
15
+
16
+ --footer-bar-border-top: 1px solid rgba(0, 0, 0, 0.2);
17
+
18
+ --aside-background-color: var(--md-sys-color-secondary-container);
19
+ --aside-list-textbtton: 18px var(--theme-font);
20
+ --aside-list-icon: var(--icon-default-size);
21
+ --aside-list-bottom-line: var(--md-sys-color-outline);
22
+ --aside-list-detail-background-color: #fff;
23
+ --aside-list-detail-text: 14px var(--md-sys-color-on-secondary-container);
24
+
25
+ --footer-bar-border-top: 1px solid rgba(0, 0, 0, 0.2);
26
+
27
+ --button-container-margin: inintial;
28
+ --button-container-padding: 0 var(--padding-default) var(--padding-wide) var(--padding-default);
29
+ --button-container-background: transparent;
30
+ --button-container-height: initial;
31
+ --button-container-align: right;
32
+ --button-container-button-background-color: var(--md-sys-color-secondary);
33
+ --button-container-button-border-radius: var(--button-border-radius);
34
+ --button-container-button-margin: var(--button-margin);
35
+ --button-container-button-font: bold var(--fontsize-large) var(--theme-font);
36
+ --button-container-button-color: var(--md-sys-color-on-primary);
37
+ --button-container-button-height: initial;
38
+ --button-container-button-border: var(--button-border);
39
+
40
+ --popup-content-background-color: var(--md-sys-color-background);
41
+ --popup-content-color: var(--md-sys-color-on-background);
42
+ --popup-content-padding: 10px 20px;
43
+
44
+ /* components - floating overlay style */
45
+ --overlay-center-small-width: 30%;
46
+ --overlay-center-small-height: 30%;
47
+ --overlay-center-normal-width: 50%;
48
+ --overlay-center-normal-height: 50%;
49
+ --overlay-center-large-width: 75%;
50
+ --overlay-center-large-height: 75%;
51
+ --overlay-header-height: var(--header-bar-height);
52
+ --overlay-header-background-color: var(--header-bar-background-color);
53
+ --overlay-header-color: #fff;
54
+ --overlay-header-font: var(--header-bar-title);
55
+ --overlay-background-color: rgba(0, 0, 0, 0.5);
56
+ --overlay-margin-bottom: 0px;
57
+
58
+ /* components - resize splitter style */
59
+ --splitter-background-color: rgba(0, 0, 0, 0.1);
60
+ --splitter-hover-background-color: rgba(0, 0, 0, 0.1);
61
+ }
62
+
63
+ @media only screen and (max-width: 460px) {
64
+ body {
65
+ --button-container-margin: 0 -15px;
66
+ --button-container-padding: 0 0 0 0;
67
+ --button-container-background: #586272;
68
+ --button-container-height: 50px;
69
+ --button-container-align: right;
70
+ --button-container-button-background-color: transparent;
71
+ --button-container-button-border-radius: 0;
72
+ --button-container-button-margin: 0;
73
+ --button-container-button-height: 50px;
74
+ --button-container-button-border: 1px solid rgba(0, 0, 0, 0.1);
75
+
76
+ --overlay-center-small-width: 100%;
77
+ --overlay-center-small-height: 100%;
78
+ --overlay-center-normal-width: 100%;
79
+ --overlay-center-normal-height: 100%;
80
+ --overlay-center-large-width: 100%;
81
+ --overlay-center-large-height: 100%;
82
+ }
83
+ }
84
+
85
+ @media (min-width: 461px) and (max-width: 1024px) {
86
+ body {
87
+ --overlay-center-small-width: 40%;
88
+ --overlay-center-small-height: 40%;
89
+ --overlay-center-normal-width: 60%;
90
+ --overlay-center-normal-height: 60%;
91
+ --overlay-center-large-width: 80%;
92
+ --overlay-center-large-height: 80%;
93
+ }
94
+ }
@@ -0,0 +1,51 @@
1
+ .light {
2
+ --md-sys-color-primary: rgb(73 93 146);
3
+ --md-sys-color-surface-tint: rgb(73 93 146);
4
+ --md-sys-color-on-primary: rgb(255 255 255);
5
+ --md-sys-color-primary-container: #e4eaf9;
6
+ --md-sys-color-on-primary-container: rgb(0 24 72);
7
+ --md-sys-color-secondary: rgb(27 101 133);
8
+ --md-sys-color-on-secondary: rgb(255 255 255);
9
+ --md-sys-color-secondary-container: rgb(195 232 255);
10
+ --md-sys-color-on-secondary-container: rgb(0 30 44);
11
+ --md-sys-color-tertiary: rgb(37 106 75);
12
+ --md-sys-color-on-tertiary: rgb(255 255 255);
13
+ --md-sys-color-tertiary-container: rgb(171 242 201);
14
+ --md-sys-color-on-tertiary-container: rgb(0 33 19);
15
+ --md-sys-color-error: #fe594e;
16
+ --md-sys-color-on-error: rgb(255 255 255);
17
+ --md-sys-color-error-container: rgb(255 218 215);
18
+ --md-sys-color-on-error-container: #fe594e;
19
+ --md-sys-color-background: rgb(250 248 255);
20
+ --md-sys-color-on-background: rgb(26 27 33);
21
+ --md-sys-color-surface: rgb(250 248 255);
22
+ --md-sys-color-on-surface: rgb(26 27 33);
23
+ --md-sys-color-surface-variant: rgb(225 226 236);
24
+ --md-sys-color-on-surface-variant: rgb(69 70 79);
25
+ --md-sys-color-outline: rgba(0, 0, 0, 0.25);
26
+ --md-sys-color-outline-variant: rgb(197 198 208);
27
+ --md-sys-color-shadow: rgb(0 0 0);
28
+ --md-sys-color-scrim: rgb(0 0 0);
29
+ --md-sys-color-inverse-surface: rgb(47 48 54);
30
+ --md-sys-color-inverse-on-surface: rgb(241 240 247);
31
+ --md-sys-color-inverse-primary: #c9d4f4;
32
+ --md-sys-color-primary-fixed: rgb(218 226 255);
33
+ --md-sys-color-on-primary-fixed: rgb(0 24 72);
34
+ --md-sys-color-primary-fixed-dim: #c9d4f4;
35
+ --md-sys-color-on-primary-fixed-variant: rgb(49 69 120);
36
+ --md-sys-color-secondary-fixed: rgb(195 232 255);
37
+ --md-sys-color-on-secondary-fixed: rgb(0 30 44);
38
+ --md-sys-color-secondary-fixed-dim: rgb(143 207 243);
39
+ --md-sys-color-on-secondary-fixed-variant: rgb(0 76 104);
40
+ --md-sys-color-tertiary-fixed: #e5f6da;
41
+ --md-sys-color-on-tertiary-fixed: #005234;
42
+ --md-sys-color-tertiary-fixed-dim: #c8eabc;
43
+ --md-sys-color-on-tertiary-fixed-variant: #005234;
44
+ --md-sys-color-surface-dim: rgb(218 217 224);
45
+ --md-sys-color-surface-bright: rgb(250 248 255);
46
+ --md-sys-color-surface-container-lowest: rgb(255 255 255);
47
+ --md-sys-color-surface-container-low: rgb(244 243 250);
48
+ --md-sys-color-surface-container: rgb(238 237 244);
49
+ --md-sys-color-surface-container-high: rgb(232 231 239);
50
+ --md-sys-color-surface-container-highest: rgb(227 226 233);
51
+ }
@@ -0,0 +1,23 @@
1
+ body {
2
+ font-variation-settings: 'FILL' 1;
3
+
4
+ /* shape corner */
5
+ --md-sys-shape-corner-none: 0px;
6
+ --md-sys-shape-corner-small: 5px;
7
+ --md-sys-shape-corner-medium: 10px;
8
+ --md-sys-shape-corner-large: 30px;
9
+ --md-sys-shape-corner-full: 999px;
10
+
11
+ /* md-switch */
12
+ --md-switch-selected-handle-color: var(--md-sys-color-on-primary);
13
+ --md-switch-selected-track-color: var(--md-sys-color-primary);
14
+
15
+ /* md component shapes */
16
+ --md-switch-handle-shape: var(--md-sys-shape-corner-full);
17
+ --md-switch-track-shape: var(--md-sys-shape-corner-full);
18
+ --md-filter-chip-container-shape: var(--md-sys-shape-corner-full);
19
+ --md-text-button-container-shape: var(--md-sys-shape-corner-small);
20
+ --md-filled-button-container-shape: var(--md-sys-shape-corner-small);
21
+ --md-outlined-button-container-shape: var(--md-sys-shape-corner-small);
22
+ --md-elevated-button-container-shape: var(--md-sys-shape-corner-small);
23
+ }