@operato/data-grist 1.0.0-alpha.4 → 1.0.0-alpha.42

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 (208) hide show
  1. package/CHANGELOG.md +323 -0
  2. package/demo/index.html +39 -6
  3. package/dist/src/data-card/data-card-field.d.ts +1 -1
  4. package/dist/src/data-card/data-card-field.js +14 -4
  5. package/dist/src/data-card/data-card-field.js.map +1 -1
  6. package/dist/src/data-card/data-card.js.map +1 -1
  7. package/dist/src/data-card/event-handlers/record-card-click-handler.js +2 -2
  8. package/dist/src/data-card/event-handlers/record-card-click-handler.js.map +1 -1
  9. package/dist/src/data-card/event-handlers/record-card-dblclick-handler.js +3 -3
  10. package/dist/src/data-card/event-handlers/record-card-dblclick-handler.js.map +1 -1
  11. package/dist/src/data-card/record-card.d.ts +1 -1
  12. package/dist/src/data-card/record-card.js +18 -13
  13. package/dist/src/data-card/record-card.js.map +1 -1
  14. package/dist/src/data-grid/data-grid-field.d.ts +1 -1
  15. package/dist/src/data-grid/data-grid-field.js +6 -4
  16. package/dist/src/data-grid/data-grid-field.js.map +1 -1
  17. package/dist/src/data-grid/data-grid-header.d.ts +1 -0
  18. package/dist/src/data-grid/data-grid-header.js +61 -9
  19. package/dist/src/data-grid/data-grid-header.js.map +1 -1
  20. package/dist/src/data-grid/event-handlers/data-grid-body-click-handler.js +2 -2
  21. package/dist/src/data-grid/event-handlers/data-grid-body-click-handler.js.map +1 -1
  22. package/dist/src/data-grid/event-handlers/data-grid-body-dblclick-handler.js +2 -2
  23. package/dist/src/data-grid/event-handlers/data-grid-body-dblclick-handler.js.map +1 -1
  24. package/dist/src/data-grist.d.ts +7 -2
  25. package/dist/src/data-grist.js +112 -16
  26. package/dist/src/data-grist.js.map +1 -1
  27. package/dist/src/data-list/data-list-field.d.ts +1 -1
  28. package/dist/src/data-list/data-list-field.js +4 -3
  29. package/dist/src/data-list/data-list-field.js.map +1 -1
  30. package/dist/src/data-list/event-handlers/record-partial-click-handler.js +3 -3
  31. package/dist/src/data-list/event-handlers/record-partial-click-handler.js.map +1 -1
  32. package/dist/src/data-list/event-handlers/record-partial-dblclick-handler.js +3 -3
  33. package/dist/src/data-list/event-handlers/record-partial-dblclick-handler.js.map +1 -1
  34. package/dist/src/data-list/event-handlers/record-partial-long-press-handler.js +3 -3
  35. package/dist/src/data-list/event-handlers/record-partial-long-press-handler.js.map +1 -1
  36. package/dist/src/data-provider.d.ts +6 -4
  37. package/dist/src/data-provider.js +34 -3
  38. package/dist/src/data-provider.js.map +1 -1
  39. package/dist/src/editors/index.d.ts +2 -2
  40. package/dist/src/editors/index.js +2 -2
  41. package/dist/src/editors/index.js.map +1 -1
  42. package/dist/src/editors/ox-grist-editor-checkbox.d.ts +5 -0
  43. package/dist/src/editors/ox-grist-editor-checkbox.js +17 -0
  44. package/dist/src/editors/ox-grist-editor-checkbox.js.map +1 -0
  45. package/dist/src/editors/ox-grist-editor-color.d.ts +4 -0
  46. package/dist/src/editors/ox-grist-editor-color.js +14 -0
  47. package/dist/src/editors/ox-grist-editor-color.js.map +1 -0
  48. package/dist/src/editors/ox-grist-editor-date.d.ts +4 -0
  49. package/dist/src/editors/ox-grist-editor-date.js +14 -0
  50. package/dist/src/editors/ox-grist-editor-date.js.map +1 -0
  51. package/dist/src/editors/ox-grist-editor-dateTime.d.ts +6 -0
  52. package/dist/src/editors/ox-grist-editor-dateTime.js +27 -0
  53. package/dist/src/editors/ox-grist-editor-dateTime.js.map +1 -0
  54. package/dist/src/editors/ox-grist-editor-email.d.ts +4 -0
  55. package/dist/src/editors/ox-grist-editor-email.js +14 -0
  56. package/dist/src/editors/ox-grist-editor-email.js.map +1 -0
  57. package/dist/src/editors/ox-grist-editor-image.d.ts +7 -0
  58. package/dist/src/editors/ox-grist-editor-image.js +31 -0
  59. package/dist/src/editors/ox-grist-editor-image.js.map +1 -0
  60. package/dist/src/editors/ox-grist-editor-month.d.ts +4 -0
  61. package/dist/src/editors/ox-grist-editor-month.js +14 -0
  62. package/dist/src/editors/ox-grist-editor-month.js.map +1 -0
  63. package/dist/src/editors/ox-grist-editor-number.d.ts +5 -0
  64. package/dist/src/editors/ox-grist-editor-number.js +26 -0
  65. package/dist/src/editors/ox-grist-editor-number.js.map +1 -0
  66. package/dist/src/editors/ox-grist-editor-password.d.ts +4 -0
  67. package/dist/src/editors/ox-grist-editor-password.js +14 -0
  68. package/dist/src/editors/ox-grist-editor-password.js.map +1 -0
  69. package/dist/src/editors/ox-grist-editor-select.d.ts +4 -0
  70. package/dist/src/editors/ox-grist-editor-select.js +41 -0
  71. package/dist/src/editors/ox-grist-editor-select.js.map +1 -0
  72. package/dist/src/editors/ox-grist-editor-tel.d.ts +4 -0
  73. package/dist/src/editors/ox-grist-editor-tel.js +14 -0
  74. package/dist/src/editors/ox-grist-editor-tel.js.map +1 -0
  75. package/dist/src/editors/ox-grist-editor-text.d.ts +4 -0
  76. package/dist/src/editors/ox-grist-editor-text.js +14 -0
  77. package/dist/src/editors/ox-grist-editor-text.js.map +1 -0
  78. package/dist/src/editors/ox-grist-editor-time.d.ts +4 -0
  79. package/dist/src/editors/ox-grist-editor-time.js +14 -0
  80. package/dist/src/editors/ox-grist-editor-time.js.map +1 -0
  81. package/dist/src/editors/ox-grist-editor-week.d.ts +4 -0
  82. package/dist/src/editors/ox-grist-editor-week.js +14 -0
  83. package/dist/src/editors/ox-grist-editor-week.js.map +1 -0
  84. package/dist/src/editors/ox-grist-editor.d.ts +25 -0
  85. package/dist/src/editors/ox-grist-editor.js +159 -0
  86. package/dist/src/editors/ox-grist-editor.js.map +1 -0
  87. package/dist/src/editors/registry.d.ts +3 -3
  88. package/dist/src/editors/registry.js +35 -23
  89. package/dist/src/editors/registry.js.map +1 -1
  90. package/dist/src/filters/filter-checkbox.js +21 -2
  91. package/dist/src/filters/filter-checkbox.js.map +1 -1
  92. package/dist/src/filters/filter-input.js +20 -2
  93. package/dist/src/filters/filter-input.js.map +1 -1
  94. package/dist/src/filters/filter-range-date.js +47 -2
  95. package/dist/src/filters/filter-range-date.js.map +1 -1
  96. package/dist/src/filters/filter-range-number.js +47 -3
  97. package/dist/src/filters/filter-range-number.js.map +1 -1
  98. package/dist/src/filters/filter-select.js +29 -4
  99. package/dist/src/filters/filter-select.js.map +1 -1
  100. package/dist/src/filters/filters-form.d.ts +2 -1
  101. package/dist/src/filters/filters-form.js +45 -7
  102. package/dist/src/filters/filters-form.js.map +1 -1
  103. package/dist/src/renderers/image-renderer.js +1 -1
  104. package/dist/src/renderers/image-renderer.js.map +1 -1
  105. package/dist/src/renderers/index.d.ts +11 -11
  106. package/dist/src/renderers/index.js +11 -11
  107. package/dist/src/renderers/index.js.map +1 -1
  108. package/dist/src/renderers/ox-grist-renderer-boolean.d.ts +2 -0
  109. package/dist/src/renderers/ox-grist-renderer-boolean.js +30 -0
  110. package/dist/src/renderers/ox-grist-renderer-boolean.js.map +1 -0
  111. package/dist/src/renderers/ox-grist-renderer-color.d.ts +2 -0
  112. package/dist/src/renderers/ox-grist-renderer-color.js +6 -0
  113. package/dist/src/renderers/ox-grist-renderer-color.js.map +1 -0
  114. package/dist/src/renderers/ox-grist-renderer-date.d.ts +2 -0
  115. package/dist/src/renderers/ox-grist-renderer-date.js +53 -0
  116. package/dist/src/renderers/ox-grist-renderer-date.js.map +1 -0
  117. package/dist/src/renderers/ox-grist-renderer-image.d.ts +2 -0
  118. package/dist/src/renderers/ox-grist-renderer-image.js +24 -0
  119. package/dist/src/renderers/ox-grist-renderer-image.js.map +1 -0
  120. package/dist/src/renderers/ox-grist-renderer-json5.d.ts +2 -0
  121. package/dist/src/renderers/ox-grist-renderer-json5.js +27 -0
  122. package/dist/src/renderers/ox-grist-renderer-json5.js.map +1 -0
  123. package/dist/src/renderers/ox-grist-renderer-link.d.ts +2 -0
  124. package/dist/src/renderers/ox-grist-renderer-link.js +12 -0
  125. package/dist/src/renderers/ox-grist-renderer-link.js.map +1 -0
  126. package/dist/src/renderers/ox-grist-renderer-password.d.ts +2 -0
  127. package/dist/src/renderers/ox-grist-renderer-password.js +5 -0
  128. package/dist/src/renderers/ox-grist-renderer-password.js.map +1 -0
  129. package/dist/src/renderers/ox-grist-renderer-progress.d.ts +5 -0
  130. package/dist/src/renderers/ox-grist-renderer-progress.js +46 -0
  131. package/dist/src/renderers/ox-grist-renderer-progress.js.map +1 -0
  132. package/dist/src/renderers/ox-grist-renderer-select.d.ts +2 -0
  133. package/dist/src/renderers/ox-grist-renderer-select.js +17 -0
  134. package/dist/src/renderers/ox-grist-renderer-select.js.map +1 -0
  135. package/dist/src/renderers/ox-grist-renderer-text.d.ts +2 -0
  136. package/dist/src/renderers/ox-grist-renderer-text.js +17 -0
  137. package/dist/src/renderers/ox-grist-renderer-text.js.map +1 -0
  138. package/dist/src/renderers/ox-grist-renderer.d.ts +15 -0
  139. package/dist/src/renderers/ox-grist-renderer.js +48 -0
  140. package/dist/src/renderers/ox-grist-renderer.js.map +1 -0
  141. package/dist/src/renderers/registry.d.ts +7 -2
  142. package/dist/src/renderers/registry.js +48 -33
  143. package/dist/src/renderers/registry.js.map +1 -1
  144. package/dist/src/sorters/sorters-control.js +2 -1
  145. package/dist/src/sorters/sorters-control.js.map +1 -1
  146. package/dist/src/types.d.ts +10 -3
  147. package/dist/src/types.js.map +1 -1
  148. package/dist/tsconfig.tsbuildinfo +1 -1
  149. package/package.json +8 -7
  150. package/src/data-card/data-card-field.ts +15 -5
  151. package/src/data-card/data-card.ts +1 -1
  152. package/src/data-card/event-handlers/record-card-click-handler.ts +4 -6
  153. package/src/data-card/event-handlers/record-card-dblclick-handler.ts +6 -10
  154. package/src/data-card/record-card.ts +19 -14
  155. package/src/data-grid/data-grid-field.ts +7 -5
  156. package/src/data-grid/data-grid-header.ts +59 -10
  157. package/src/data-grid/event-handlers/data-grid-body-click-handler.ts +2 -2
  158. package/src/data-grid/event-handlers/data-grid-body-dblclick-handler.ts +2 -2
  159. package/src/data-grist.ts +120 -17
  160. package/src/data-list/data-list-field.ts +5 -4
  161. package/src/data-list/event-handlers/record-partial-click-handler.ts +5 -7
  162. package/src/data-list/event-handlers/record-partial-dblclick-handler.ts +5 -10
  163. package/src/data-list/event-handlers/record-partial-long-press-handler.ts +5 -10
  164. package/src/data-provider.ts +47 -4
  165. package/src/editors/index.ts +2 -2
  166. package/src/editors/ox-grist-editor-checkbox.ts +14 -0
  167. package/src/editors/ox-grist-editor-color.ts +10 -0
  168. package/src/editors/ox-grist-editor-date.ts +10 -0
  169. package/src/editors/ox-grist-editor-datetime.ts +28 -0
  170. package/src/editors/ox-grist-editor-email.ts +10 -0
  171. package/src/editors/{image-input.ts → ox-grist-editor-image.ts} +4 -5
  172. package/src/editors/ox-grist-editor-month.ts +10 -0
  173. package/src/editors/ox-grist-editor-number.ts +25 -0
  174. package/src/editors/ox-grist-editor-password.ts +10 -0
  175. package/src/editors/ox-grist-editor-select.ts +42 -0
  176. package/src/editors/ox-grist-editor-tel.ts +10 -0
  177. package/src/editors/ox-grist-editor-text.ts +10 -0
  178. package/src/editors/ox-grist-editor-time.ts +10 -0
  179. package/src/editors/ox-grist-editor-week.ts +10 -0
  180. package/src/editors/ox-grist-editor.ts +161 -0
  181. package/src/editors/registry.ts +39 -41
  182. package/src/filters/filter-checkbox.ts +24 -4
  183. package/src/filters/filter-input.ts +23 -4
  184. package/src/filters/filter-range-date.ts +57 -4
  185. package/src/filters/filter-range-number.ts +56 -5
  186. package/src/filters/filter-select.ts +43 -7
  187. package/src/filters/filters-form.ts +45 -9
  188. package/src/renderers/index.ts +11 -11
  189. package/src/renderers/{boolean-renderer.ts → ox-grist-renderer-boolean.ts} +1 -1
  190. package/src/renderers/{color-renderer.ts → ox-grist-renderer-color.ts} +1 -1
  191. package/src/renderers/{date-renderer.ts → ox-grist-renderer-date.ts} +6 -4
  192. package/src/renderers/{image-renderer.ts → ox-grist-renderer-image.ts} +3 -4
  193. package/src/renderers/ox-grist-renderer-json5.ts +31 -0
  194. package/src/renderers/{link-renderer.ts → ox-grist-renderer-link.ts} +1 -1
  195. package/src/renderers/ox-grist-renderer-password.ts +7 -0
  196. package/src/renderers/ox-grist-renderer-progress.ts +45 -0
  197. package/src/renderers/{select-renderer.ts → ox-grist-renderer-select.ts} +7 -3
  198. package/src/renderers/ox-grist-renderer-text.ts +22 -0
  199. package/src/renderers/ox-grist-renderer.ts +35 -0
  200. package/src/renderers/registry.ts +85 -36
  201. package/src/sorters/sorters-control.ts +2 -1
  202. package/src/types.ts +17 -3
  203. package/src/editors/input-editors.ts +0 -319
  204. package/src/renderers/json5-renderer.ts +0 -8
  205. package/src/renderers/password-renderer.ts +0 -5
  206. package/src/renderers/progress-renderer.ts +0 -61
  207. package/src/renderers/text-renderer.ts +0 -7
  208. package/yarn-error.log +0 -17496
package/CHANGELOG.md CHANGED
@@ -3,6 +3,329 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.0.0-alpha.42](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.41...v1.0.0-alpha.42) (2022-03-29)
7
+
8
+
9
+ ### :bug: Bug Fix
10
+
11
+ * data-grist sorters, filters ([960830a](https://github.com/hatiolab/operato/commit/960830ab877ada67cf8701fce7aa1740ec83bcc2))
12
+ * filter-select in data-grid-header ([61e2aa0](https://github.com/hatiolab/operato/commit/61e2aa060e41f61bef9ebc7d5890f84632ee73bf))
13
+
14
+
15
+ ### :rocket: New Features
16
+
17
+ * add filters and sorters property in grist ([099757f](https://github.com/hatiolab/operato/commit/099757fd211411795120ed4c2fa9e23e8e2d398a))
18
+ * url-params-sensitive property for data-grist ([8bae25f](https://github.com/hatiolab/operato/commit/8bae25f210c0185f0b307dbda4797b568231618a))
19
+ * url-params-sensitive property for data-grist ([32523c0](https://github.com/hatiolab/operato/commit/32523c0ec4e69c603317c6a05eba0c0338663886))
20
+
21
+
22
+
23
+ ## [1.0.0-alpha.41](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.40...v1.0.0-alpha.41) (2022-03-27)
24
+
25
+
26
+ ### :rocket: New Features
27
+
28
+ * grid-header filter integrated with filters-form ([ebecb71](https://github.com/hatiolab/operato/commit/ebecb71133d38bb8358909660319de6cb5b45d7d))
29
+
30
+
31
+
32
+ ## [1.0.0-alpha.40](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.39...v1.0.0-alpha.40) (2022-03-26)
33
+
34
+
35
+ ### :bug: Bug Fix
36
+
37
+ * filter-select support object type select options ([ab5a877](https://github.com/hatiolab/operato/commit/ab5a877157979bc96b252b6b527b4666c22e0b09))
38
+
39
+
40
+
41
+ ## [1.0.0-alpha.39](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.38...v1.0.0-alpha.39) (2022-03-25)
42
+
43
+ **Note:** Version bump only for package @operato/data-grist
44
+
45
+
46
+
47
+
48
+
49
+ ## [1.0.0-alpha.38](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.37...v1.0.0-alpha.38) (2022-03-25)
50
+
51
+ **Note:** Version bump only for package @operato/data-grist
52
+
53
+
54
+
55
+
56
+
57
+ ## [1.0.0-alpha.37](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.36...v1.0.0-alpha.37) (2022-03-25)
58
+
59
+ **Note:** Version bump only for package @operato/data-grist
60
+
61
+
62
+
63
+
64
+
65
+ ## [1.0.0-alpha.36](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.35...v1.0.0-alpha.36) (2022-03-21)
66
+
67
+
68
+ ### :bug: Bug Fix
69
+
70
+ * datetime grist-renderer ([d551750](https://github.com/hatiolab/operato/commit/d55175091f9b928c56b02a087922c2fe8dcad9a9))
71
+
72
+
73
+
74
+ ## [1.0.0-alpha.35](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.34...v1.0.0-alpha.35) (2022-03-21)
75
+
76
+
77
+ ### :bug: Bug Fix
78
+
79
+ * prevent text overflow of grist-renderers ([73e7538](https://github.com/hatiolab/operato/commit/73e7538f9a0c8941689fefd3d4212529a75c413d))
80
+
81
+
82
+
83
+ ## [1.0.0-alpha.34](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.33...v1.0.0-alpha.34) (2022-03-20)
84
+
85
+
86
+ ### :bug: Bug Fix
87
+
88
+ * data-grist field styles for tooltip ([5f90650](https://github.com/hatiolab/operato/commit/5f90650ef36023834af3d3bf027cd300cc6bffc1))
89
+
90
+
91
+
92
+ ## [1.0.0-alpha.33](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.32...v1.0.0-alpha.33) (2022-03-19)
93
+
94
+
95
+ ### :bug: Bug Fix
96
+
97
+ * ox-grist json5 renderer ([1ff95e2](https://github.com/hatiolab/operato/commit/1ff95e21ac1b467620327a2a3f7aacd105b83414))
98
+
99
+
100
+
101
+ ## [1.0.0-alpha.32](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.31...v1.0.0-alpha.32) (2022-03-19)
102
+
103
+
104
+ ### :bug: Bug Fix
105
+
106
+ * typo ([2f2e3fc](https://github.com/hatiolab/operato/commit/2f2e3fcce771dcbfe2f1d09cbd25638094a6dc99))
107
+
108
+
109
+
110
+ ## [1.0.0-alpha.31](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.30...v1.0.0-alpha.31) (2022-03-19)
111
+
112
+
113
+ ### :bug: Bug Fix
114
+
115
+ * ox-grist-renderer support class type renderer (refer ox-grist-renderer-progress) ([ad7c8e1](https://github.com/hatiolab/operato/commit/ad7c8e1b453d19af9daa13ae4eb7c2059d85dfbb))
116
+
117
+
118
+
119
+ ## [1.0.0-alpha.30](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.29...v1.0.0-alpha.30) (2022-03-18)
120
+
121
+ **Note:** Version bump only for package @operato/data-grist
122
+
123
+
124
+
125
+
126
+
127
+ ## [1.0.0-alpha.29](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.28...v1.0.0-alpha.29) (2022-03-17)
128
+
129
+ **Note:** Version bump only for package @operato/data-grist
130
+
131
+
132
+
133
+
134
+
135
+ ## [1.0.0-alpha.28](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.26...v1.0.0-alpha.28) (2022-03-17)
136
+
137
+ **Note:** Version bump only for package @operato/data-grist
138
+
139
+
140
+
141
+
142
+
143
+ ## [1.0.0-alpha.27](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.26...v1.0.0-alpha.27) (2022-03-17)
144
+
145
+ **Note:** Version bump only for package @operato/data-grist
146
+
147
+
148
+
149
+
150
+
151
+ ## [1.0.0-alpha.26](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.25...v1.0.0-alpha.26) (2022-03-17)
152
+
153
+ **Note:** Version bump only for package @operato/data-grist
154
+
155
+
156
+
157
+
158
+
159
+ ## [1.0.0-alpha.25](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.24...v1.0.0-alpha.25) (2022-03-17)
160
+
161
+ **Note:** Version bump only for package @operato/data-grist
162
+
163
+
164
+
165
+
166
+
167
+ ## [1.0.0-alpha.24](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.23...v1.0.0-alpha.24) (2022-03-17)
168
+
169
+
170
+ ### :bug: Bug Fix
171
+
172
+ * refactoring grist-editor, property-editor and input ([ea7431a](https://github.com/hatiolab/operato/commit/ea7431a5e2dfd96ef392c1905e9622df7c2ef88c))
173
+
174
+
175
+
176
+ ## [1.0.0-alpha.23](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.22...v1.0.0-alpha.23) (2022-03-17)
177
+
178
+ **Note:** Version bump only for package @operato/data-grist
179
+
180
+
181
+
182
+
183
+
184
+ ## [1.0.0-alpha.22](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.21...v1.0.0-alpha.22) (2022-03-17)
185
+
186
+ **Note:** Version bump only for package @operato/data-grist
187
+
188
+
189
+
190
+
191
+
192
+ ## [1.0.0-alpha.21](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.20...v1.0.0-alpha.21) (2022-03-16)
193
+
194
+ **Note:** Version bump only for package @operato/data-grist
195
+
196
+
197
+
198
+
199
+
200
+ ## [1.0.0-alpha.20](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.19...v1.0.0-alpha.20) (2022-03-15)
201
+
202
+ **Note:** Version bump only for package @operato/data-grist
203
+
204
+
205
+
206
+
207
+
208
+ ## [1.0.0-alpha.19](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.18...v1.0.0-alpha.19) (2022-03-14)
209
+
210
+ **Note:** Version bump only for package @operato/data-grist
211
+
212
+
213
+
214
+
215
+
216
+ ## [1.0.0-alpha.18](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.17...v1.0.0-alpha.18) (2022-03-14)
217
+
218
+
219
+ ### :bug: Bug Fix
220
+
221
+ * data-grist click eventhandler and thumbnail layout ([c232bbf](https://github.com/hatiolab/operato/commit/c232bbf3d6ca90b48cc4ddb0a5ddb839acb14cdb))
222
+
223
+
224
+
225
+ ## [1.0.0-alpha.17](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.16...v1.0.0-alpha.17) (2022-03-13)
226
+
227
+ **Note:** Version bump only for package @operato/data-grist
228
+
229
+
230
+
231
+
232
+
233
+ ## [1.0.0-alpha.16](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.15...v1.0.0-alpha.16) (2022-03-13)
234
+
235
+ **Note:** Version bump only for package @operato/data-grist
236
+
237
+
238
+
239
+
240
+
241
+ ## [1.0.0-alpha.15](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.14...v1.0.0-alpha.15) (2022-03-13)
242
+
243
+ **Note:** Version bump only for package @operato/data-grist
244
+
245
+
246
+
247
+
248
+
249
+ ## [1.0.0-alpha.14](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.13...v1.0.0-alpha.14) (2022-03-13)
250
+
251
+ **Note:** Version bump only for package @operato/data-grist
252
+
253
+
254
+
255
+
256
+
257
+ ## [1.0.0-alpha.13](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.12...v1.0.0-alpha.13) (2022-03-13)
258
+
259
+ **Note:** Version bump only for package @operato/data-grist
260
+
261
+
262
+
263
+
264
+
265
+ ## [1.0.0-alpha.12](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.11...v1.0.0-alpha.12) (2022-03-13)
266
+
267
+ **Note:** Version bump only for package @operato/data-grist
268
+
269
+
270
+
271
+
272
+
273
+ ## [1.0.0-alpha.11](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2022-03-12)
274
+
275
+ **Note:** Version bump only for package @operato/data-grist
276
+
277
+
278
+
279
+
280
+
281
+ ## [1.0.0-alpha.10](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2022-03-12)
282
+
283
+ **Note:** Version bump only for package @operato/data-grist
284
+
285
+
286
+
287
+
288
+
289
+ ## [1.0.0-alpha.9](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2022-03-12)
290
+
291
+ **Note:** Version bump only for package @operato/data-grist
292
+
293
+
294
+
295
+
296
+
297
+ ## [1.0.0-alpha.8](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2022-03-11)
298
+
299
+ **Note:** Version bump only for package @operato/data-grist
300
+
301
+
302
+
303
+
304
+
305
+ ## [1.0.0-alpha.7](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2022-03-11)
306
+
307
+ **Note:** Version bump only for package @operato/data-grist
308
+
309
+
310
+
311
+
312
+
313
+ ## [1.0.0-alpha.6](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2022-03-11)
314
+
315
+ **Note:** Version bump only for package @operato/data-grist
316
+
317
+
318
+
319
+
320
+
321
+ ## [1.0.0-alpha.5](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2022-03-11)
322
+
323
+ **Note:** Version bump only for package @operato/data-grist
324
+
325
+
326
+
327
+
328
+
6
329
  ## [1.0.0-alpha.4](https://github.com/hatiolab/operato/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2022-03-11)
7
330
 
8
331
  **Note:** Version bump only for package @operato/data-grist
package/demo/index.html CHANGED
@@ -106,7 +106,9 @@
106
106
  : `http://deadpool.hatiolab.com/${start + idx + 1}`,
107
107
  json5: {
108
108
  abc: 'abc',
109
- value: 123
109
+ value: 123,
110
+ xyz: [1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
111
+ quantity: 6782341
110
112
  },
111
113
  createdAt: Date.now(),
112
114
  updatedAt: Date.now()
@@ -119,7 +121,7 @@
119
121
  list: {
120
122
  thumbnail: 'thumbnail',
121
123
  fields: ['name', 'description'],
122
- details: ['role', 'email']
124
+ details: ['role', 'email', 'json5']
123
125
  },
124
126
  columns: [
125
127
  {
@@ -283,6 +285,16 @@
283
285
  type: 'json5',
284
286
  name: 'json5',
285
287
  header: 'JSON5',
288
+ label: true,
289
+ width: 200
290
+ },
291
+ {
292
+ type: 'progress',
293
+ name: 'rate',
294
+ header: 'progress',
295
+ record: {
296
+ editable: true
297
+ },
286
298
  width: 200
287
299
  },
288
300
  {
@@ -291,7 +303,13 @@
291
303
  header: 'thumbnail',
292
304
  record: {
293
305
  editable: true
294
- }
306
+ },
307
+ handlers: {
308
+ click: () => {
309
+ console.log('thumbnail clicked...')
310
+ }
311
+ },
312
+ width: 200
295
313
  },
296
314
  {
297
315
  type: 'datetime',
@@ -372,6 +390,8 @@
372
390
 
373
391
  static get properties() {
374
392
  return {
393
+ sorters: Object,
394
+ filters: Object,
375
395
  mode: String
376
396
  }
377
397
  }
@@ -384,9 +404,16 @@
384
404
  const mode = this.mode || 'CARD'
385
405
 
386
406
  return html`
387
- <ox-grist .config=${config} .mode=${mode} auto-fetch .fetchHandler=${fetchHandler}>
407
+ <ox-grist
408
+ .config=${config}
409
+ .mode=${mode}
410
+ auto-fetch
411
+ url-params-sensitive
412
+ .fetchHandler=${fetchHandler}
413
+ @filters-change=${e => console.log('changed', e.detail)}
414
+ >
388
415
  <div id="filters" slot="headroom">
389
- <ox-filters-form @filters-change=${e => console.log('changed', e.detail)}></ox-filters-form>
416
+ <ox-filters-form></ox-filters-form>
390
417
  </div>
391
418
 
392
419
  <div slot="headroom" id="headroom">
@@ -444,8 +471,14 @@
444
471
 
445
472
  customElements.define('grist-demo', GristDemo)
446
473
 
474
+ // const queryString = window.location.search
475
+ // const urlParams = new URLSearchParams(queryString)
476
+ // var filters = urlParams.get('filters') && JSON.parse(urlParams.get('filters') || 'undefined')
477
+ // var sorters = urlParams.get('sorters') && JSON.parse(urlParams.get('sorters') || 'undefined')
478
+ // console.log(filters, sorters)
479
+
447
480
  setTimeout(() => {
448
- render(html` <grist-demo mode="LIST"></grist-demo> `, document.querySelector('#demo'))
481
+ render(html` <grist-demo mode="GRID"></grist-demo> `, document.querySelector('#demo'))
449
482
  })
450
483
  </script>
451
484
 
@@ -1,5 +1,5 @@
1
- import { LitElement, TemplateResult } from 'lit';
2
1
  import { ColumnConfig, GristRecord } from '../types';
2
+ import { LitElement, TemplateResult } from 'lit';
3
3
  export declare class DataCardField extends LitElement {
4
4
  static styles: import("lit").CSSResult[];
5
5
  align?: string;
@@ -1,7 +1,8 @@
1
1
  import { __decorate } from "tslib";
2
- import { css, html, LitElement } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
2
+ import { LitElement, css, html } from 'lit';
4
3
  import { ZERO_COLUMN, ZERO_RECORD } from '../configure/zero-config';
4
+ import { customElement, property } from 'lit/decorators.js';
5
+ import { TooltipStyles } from '@operato/styles';
5
6
  let DataCardField = class DataCardField extends LitElement {
6
7
  constructor() {
7
8
  super(...arguments);
@@ -22,6 +23,7 @@ let DataCardField = class DataCardField extends LitElement {
22
23
  }
23
24
  };
24
25
  DataCardField.styles = [
26
+ TooltipStyles,
25
27
  css `
26
28
  :host {
27
29
  display: flex;
@@ -31,11 +33,15 @@ DataCardField.styles = [
31
33
 
32
34
  white-space: nowrap;
33
35
 
34
- padding: 1px 7px 1px 0;
35
-
36
36
  font: inherit;
37
37
  }
38
38
 
39
+ :host([thumbnail]) > * {
40
+ object-fit: contain;
41
+ max-width: 100%;
42
+ max-height: 100%;
43
+ }
44
+
39
45
  * {
40
46
  flex: 1;
41
47
  margin: 0;
@@ -51,14 +57,17 @@ DataCardField.styles = [
51
57
  flex: none;
52
58
  margin: 0 auto;
53
59
  }
60
+
54
61
  :host([name]) {
55
62
  display: block;
56
63
  }
64
+
57
65
  :host([name]) label {
58
66
  display: block;
59
67
  font: var(--data-card-item-name-label-font);
60
68
  color: var(--data-card-item-name-label-color);
61
69
  }
70
+
62
71
  label {
63
72
  flex: none;
64
73
  width: 33%;
@@ -66,6 +75,7 @@ DataCardField.styles = [
66
75
  font: var(--data-card-item-etc-label-font);
67
76
  text-transform: capitalize;
68
77
  }
78
+
69
79
  label + a {
70
80
  display: block;
71
81
  min-width: 100%;
@@ -1 +1 @@
1
- {"version":3,"file":"data-card-field.js","sourceRoot":"","sources":["../../../src/data-card/data-card-field.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAInE,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,UAAU;IAA7C;;QAiE8B,WAAM,GAAgB,WAAW,CAAA;QACjC,WAAM,GAAiB,WAAW,CAAA;QAClC,aAAQ,GAAW,CAAC,CAAC,CAAA;IAkBnD,CAAC;IAfC,MAAM;QACJ,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAE9C,IAAI,EACF,KAAK,EACL,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EACrC,GAAG,MAAM,CAAA;QAEV,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;YAC5B,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;YACvC,OAAO,IAAI,CAAA,UAAU,aAAa,EAAE,WAAW,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAA;SACvG;aAAM;YACL,OAAO,IAAI,CAAA,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAA;SACtE;IACH,CAAC;CACF,CAAA;AApFQ,oBAAM,GAAG;IACd,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2DF;CACF,CAAA;AAE8B;IAA9B,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;4CAAe;AACjB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CAAkC;AACjC;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CAAmC;AAClC;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;+CAAsB;AACrB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4CAAe;AApE/B,aAAa;IADzB,aAAa,CAAC,eAAe,CAAC;GAClB,aAAa,CAqFzB;SArFY,aAAa","sourcesContent":["import { css, html, LitElement, TemplateResult } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nimport { ZERO_COLUMN, ZERO_RECORD } from '../configure/zero-config'\nimport { ColumnConfig, GristRecord } from '../types'\n\n@customElement('ox-card-field')\nexport class DataCardField extends LitElement {\n static styles = [\n css`\n :host {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n position: relative;\n\n white-space: nowrap;\n\n padding: 1px 7px 1px 0;\n\n font: inherit;\n }\n\n * {\n flex: 1;\n margin: 0;\n\n width: 100px;\n overflow: hidden;\n\n text-overflow: ellipsis;\n text-align: left;\n }\n\n *[center] {\n flex: none;\n margin: 0 auto;\n }\n :host([name]) {\n display: block;\n }\n :host([name]) label {\n display: block;\n font: var(--data-card-item-name-label-font);\n color: var(--data-card-item-name-label-color);\n }\n label {\n flex: none;\n width: 33%;\n padding-bottom: 2px;\n font: var(--data-card-item-etc-label-font);\n text-transform: capitalize;\n }\n label + a {\n display: block;\n min-width: 100%;\n }\n\n input[type='checkbox'],\n input[type='radio'] {\n zoom: var(--grist-input-zoom);\n }\n\n @media only screen and (max-width: 460px) {\n *[center] {\n margin: initial;\n }\n }\n `\n ]\n\n @property({ attribute: true }) align?: string\n @property({ type: Object }) record: GristRecord = ZERO_RECORD\n @property({ type: Object }) column: ColumnConfig = ZERO_COLUMN\n @property({ type: Number }) rowIndex: number = -1\n @property({ type: Object }) value?: object\n\n render(): TemplateResult {\n var { value, column, record, rowIndex } = this\n\n var {\n label,\n record: { renderer: recordRenderer }\n } = column\n\n if (typeof label == 'object') {\n let { renderer: labelRenderer } = label\n return html`<label>${labelRenderer()}</label>${recordRenderer(value, column, record, rowIndex, this)}`\n } else {\n return html`${recordRenderer(value, column, record, rowIndex, this)}`\n }\n }\n}\n"]}
1
+ {"version":3,"file":"data-card-field.js","sourceRoot":"","sources":["../../../src/data-card/data-card-field.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAkB,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,UAAU;IAA7C;;QA0E8B,WAAM,GAAgB,WAAW,CAAA;QACjC,WAAM,GAAiB,WAAW,CAAA;QAClC,aAAQ,GAAW,CAAC,CAAC,CAAA;IAkBnD,CAAC;IAfC,MAAM;QACJ,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAE9C,IAAI,EACF,KAAK,EACL,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EACrC,GAAG,MAAM,CAAA;QAEV,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;YAC5B,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;YACvC,OAAO,IAAI,CAAA,UAAU,aAAa,EAAE,WAAW,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAA;SACvG;aAAM;YACL,OAAO,IAAI,CAAA,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAA;SACtE;IACH,CAAC;CACF,CAAA;AA7FQ,oBAAM,GAAG;IACd,aAAa;IACb,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmEF;CACF,CAAA;AAE8B;IAA9B,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;4CAAe;AACjB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CAAkC;AACjC;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CAAmC;AAClC;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;+CAAsB;AACrB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4CAAe;AA7E/B,aAAa;IADzB,aAAa,CAAC,eAAe,CAAC;GAClB,aAAa,CA8FzB;SA9FY,aAAa","sourcesContent":["import { ColumnConfig, GristRecord } from '../types'\nimport { LitElement, TemplateResult, css, html } from 'lit'\nimport { ZERO_COLUMN, ZERO_RECORD } from '../configure/zero-config'\nimport { customElement, property } from 'lit/decorators.js'\n\nimport { TooltipStyles } from '@operato/styles'\n\n@customElement('ox-card-field')\nexport class DataCardField extends LitElement {\n static styles = [\n TooltipStyles,\n css`\n :host {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n position: relative;\n\n white-space: nowrap;\n\n font: inherit;\n }\n\n :host([thumbnail]) > * {\n object-fit: contain;\n max-width: 100%;\n max-height: 100%;\n }\n\n * {\n flex: 1;\n margin: 0;\n\n width: 100px;\n overflow: hidden;\n\n text-overflow: ellipsis;\n text-align: left;\n }\n\n *[center] {\n flex: none;\n margin: 0 auto;\n }\n\n :host([name]) {\n display: block;\n }\n\n :host([name]) label {\n display: block;\n font: var(--data-card-item-name-label-font);\n color: var(--data-card-item-name-label-color);\n }\n\n label {\n flex: none;\n width: 33%;\n padding-bottom: 2px;\n font: var(--data-card-item-etc-label-font);\n text-transform: capitalize;\n }\n\n label + a {\n display: block;\n min-width: 100%;\n }\n\n input[type='checkbox'],\n input[type='radio'] {\n zoom: var(--grist-input-zoom);\n }\n\n @media only screen and (max-width: 460px) {\n *[center] {\n margin: initial;\n }\n }\n `\n ]\n\n @property({ attribute: true }) align?: string\n @property({ type: Object }) record: GristRecord = ZERO_RECORD\n @property({ type: Object }) column: ColumnConfig = ZERO_COLUMN\n @property({ type: Number }) rowIndex: number = -1\n @property({ type: Object }) value?: object\n\n render(): TemplateResult {\n var { value, column, record, rowIndex } = this\n\n var {\n label,\n record: { renderer: recordRenderer }\n } = column\n\n if (typeof label == 'object') {\n let { renderer: labelRenderer } = label\n return html`<label>${labelRenderer()}</label>${recordRenderer(value, column, record, rowIndex, this)}`\n } else {\n return html`${recordRenderer(value, column, record, rowIndex, this)}`\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"data-card.js","sourceRoot":"","sources":["../../../src/data-card/data-card.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/mwc-icon'\nimport './record-card'\n\nimport { css, html, PropertyValues } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nimport { DataManipulator } from '../data-manipulator'\nimport { GristRecord } from '../types'\n\n@customElement('ox-card')\nexport class DataCard extends DataManipulator {\n static styles = [\n css`\n :host {\n background-color: var(--data-card-background-color);\n overflow-y: auto;\n padding: var(--padding-wide);\n\n display: grid;\n grid-template-columns: var(--data-card-template);\n grid-template-rows: min-content;\n grid-gap: var(--margin-wide);\n }\n\n ox-record-card {\n align-items: stretch;\n background-color: var(--data-card-record-card-background-color);\n border: var(--data-card-record-card-border);\n border-radius: var(--data-card-record-card-border-radius);\n }\n ox-record-card:hover {\n border: var(--data-card-record-card-border-hover);\n box-shadow: var(--data-card-record-card-boxshadow-hover);\n }\n\n [selected-row] {\n background-color: var(--data-card-record-card-selected-border);\n }\n\n #upward {\n --mdc-icon-size: 26px;\n position: absolute;\n top: var(--data-card-fab-position-vertical);\n right: var(--data-card-fab-position-horizontal);\n background-color: rgba(255, 255, 255, 0.7);\n border-radius: 20px;\n color: var(--data-card-fab-color);\n box-shadow: var(--data-card-fab-shadow);\n padding: 7px;\n }\n\n slot {\n width: 100%;\n }\n\n @media screen and (max-width: 460px) {\n #setting {\n grid-template-columns: 1fr;\n grid-template-rows: 1fr 1fr;\n }\n }\n `\n ]\n\n @property({ type: Boolean }) isTop: boolean = false\n @property({ type: Array }) private _records: GristRecord[] = []\n\n private _total: number = 0\n private _limit: number = 20\n private _page: number = 1\n\n firstUpdated(changes: PropertyValues<this>) {\n this.isTop = true\n\n /* infinite scrolling */\n this.addEventListener('scroll', e => {\n const totalScrollHeight = this.scrollHeight\n const screenHeight = this.offsetHeight\n const currentScrollTop = this.scrollTop\n\n if (totalScrollHeight <= screenHeight + currentScrollTop + 1) {\n /* 마지막 페이지까지 계속 페이지를 증가시킨다. */\n var lastPage = Math.ceil(this._total / this._limit)\n\n if (this._page < lastPage) {\n this.dispatchEvent(new CustomEvent('attach-page', { bubbles: true, composed: true }))\n }\n }\n\n this.isTop = this.scrollTop == 0\n })\n }\n\n updated(changes: PropertyValues<this>) {\n if (changes.has('config')) {\n this._records = []\n this._page = 1\n }\n\n if (changes.has('data')) {\n this._records = this.data.records\n this._total = this.data.total || 0\n this._limit = this.data.limit || 20\n this._page = this.data.page || 0\n }\n }\n\n render() {\n var records = this._records || []\n\n return html`\n ${records.map(\n (record, rowIndex) => html`\n <ox-record-card\n .config=${this.config}\n .data=${this.data}\n .record=${record}\n .rowIndex=${rowIndex}\n ?selected-row=${record['__selected__']}\n ?dirty=${record['__dirty__']}\n ></ox-record-card>\n `\n )}\n ${this.isTop\n ? html``\n : html` <mwc-icon id=\"upward\" @click=${(e: Event) => this.gotoTop(e)}>arrow_upward</mwc-icon> `}\n `\n }\n\n gotoTop(e: Event) {\n this.scrollTop = 0\n\n e.stopPropagation()\n }\n\n get pullToRefreshTarget() {\n return this\n }\n}\n"]}
1
+ {"version":3,"file":"data-card.js","sourceRoot":"","sources":["../../../src/data-card/data-card.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/mwc-icon'\nimport './record-card'\n\nimport { PropertyValues, css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nimport { DataManipulator } from '../data-manipulator'\nimport { GristRecord } from '../types'\n\n@customElement('ox-card')\nexport class DataCard extends DataManipulator {\n static styles = [\n css`\n :host {\n background-color: var(--data-card-background-color);\n overflow-y: auto;\n padding: var(--padding-wide);\n\n display: grid;\n grid-template-columns: var(--data-card-template);\n grid-template-rows: min-content;\n grid-gap: var(--margin-wide);\n }\n\n ox-record-card {\n align-items: stretch;\n background-color: var(--data-card-record-card-background-color);\n border: var(--data-card-record-card-border);\n border-radius: var(--data-card-record-card-border-radius);\n }\n ox-record-card:hover {\n border: var(--data-card-record-card-border-hover);\n box-shadow: var(--data-card-record-card-boxshadow-hover);\n }\n\n [selected-row] {\n background-color: var(--data-card-record-card-selected-border);\n }\n\n #upward {\n --mdc-icon-size: 26px;\n position: absolute;\n top: var(--data-card-fab-position-vertical);\n right: var(--data-card-fab-position-horizontal);\n background-color: rgba(255, 255, 255, 0.7);\n border-radius: 20px;\n color: var(--data-card-fab-color);\n box-shadow: var(--data-card-fab-shadow);\n padding: 7px;\n }\n\n slot {\n width: 100%;\n }\n\n @media screen and (max-width: 460px) {\n #setting {\n grid-template-columns: 1fr;\n grid-template-rows: 1fr 1fr;\n }\n }\n `\n ]\n\n @property({ type: Boolean }) isTop: boolean = false\n @property({ type: Array }) private _records: GristRecord[] = []\n\n private _total: number = 0\n private _limit: number = 20\n private _page: number = 1\n\n firstUpdated(changes: PropertyValues<this>) {\n this.isTop = true\n\n /* infinite scrolling */\n this.addEventListener('scroll', e => {\n const totalScrollHeight = this.scrollHeight\n const screenHeight = this.offsetHeight\n const currentScrollTop = this.scrollTop\n\n if (totalScrollHeight <= screenHeight + currentScrollTop + 1) {\n /* 마지막 페이지까지 계속 페이지를 증가시킨다. */\n var lastPage = Math.ceil(this._total / this._limit)\n\n if (this._page < lastPage) {\n this.dispatchEvent(new CustomEvent('attach-page', { bubbles: true, composed: true }))\n }\n }\n\n this.isTop = this.scrollTop == 0\n })\n }\n\n updated(changes: PropertyValues<this>) {\n if (changes.has('config')) {\n this._records = []\n this._page = 1\n }\n\n if (changes.has('data')) {\n this._records = this.data.records\n this._total = this.data.total || 0\n this._limit = this.data.limit || 20\n this._page = this.data.page || 0\n }\n }\n\n render() {\n var records = this._records || []\n\n return html`\n ${records.map(\n (record, rowIndex) => html`\n <ox-record-card\n .config=${this.config}\n .data=${this.data}\n .record=${record}\n .rowIndex=${rowIndex}\n ?selected-row=${record['__selected__']}\n ?dirty=${record['__dirty__']}\n ></ox-record-card>\n `\n )}\n ${this.isTop\n ? html``\n : html` <mwc-icon id=\"upward\" @click=${(e: Event) => this.gotoTop(e)}>arrow_upward</mwc-icon> `}\n `\n }\n\n gotoTop(e: Event) {\n this.scrollTop = 0\n\n e.stopPropagation()\n }\n\n get pullToRefreshTarget() {\n return this\n }\n}\n"]}
@@ -6,8 +6,8 @@
6
6
  export function recordCardClickHandler(e) {
7
7
  e.stopPropagation();
8
8
  /* target should be [content] or 'ox-card-field' or 'ox-card-gutter' */
9
- var target = e.target;
10
- var { column, rowIndex } = target;
9
+ var target = e.target.closest('ox-card-field, ox-card-gutter');
10
+ var { column, rowIndex } = target || {};
11
11
  /* do column click handler */
12
12
  if (column) {
13
13
  var { click } = column.handlers;
@@ -1 +1 @@
1
- {"version":3,"file":"record-card-click-handler.js","sourceRoot":"","sources":["../../../../src/data-card/event-handlers/record-card-click-handler.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAmB,CAAa;IACpE,CAAC,CAAC,eAAe,EAAE,CAAA;IAEnB,uEAAuE;IACvE,IAAI,MAAM,GAAG,CAAC,CAAC,MAAa,CAAA;IAC5B,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAG1B,CAAA;IAED,6BAA6B;IAC7B,IAAI,MAAM,EAAE;QACV,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC/B,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC5E,OAAM;SACP;KACF;IAED,2BAA2B;IAC3B,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;IACpD,IAAI,SAAS,EAAE;QACb,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;KACjF;SAAM;QACL,uCAAuC;QACvC,IAAI,CAAC,eAAe,EAAE,CAAA;KACvB;AACH,CAAC","sourcesContent":["import { ColumnConfig } from '../../types'\nimport { RecordCard } from '../record-card'\n\n/**\n * ox-record-card 의 click handler\n *\n * - handler의 this 는 ox-record-card임.\n */\nexport function recordCardClickHandler(this: RecordCard, e: MouseEvent): void {\n e.stopPropagation()\n\n /* target should be [content] or 'ox-card-field' or 'ox-card-gutter' */\n var target = e.target as any\n var { column, rowIndex } = target as {\n column: ColumnConfig\n rowIndex: number\n }\n\n /* do column click handler */\n if (column) {\n var { click } = column.handlers\n if (click) {\n click(this.config.columns, this.data, column, this.record, rowIndex, target)\n return\n }\n }\n\n /* do rows click handler */\n var { click: rowsClick } = this.config.rows.handlers\n if (rowsClick) {\n rowsClick(this.config.columns, this.data, column, this.record, rowIndex, target)\n } else {\n /* content 가 클릭된 경우 - 레코드뷰 팝업을 실행한다. */\n this.popupRecordView()\n }\n}\n"]}
1
+ {"version":3,"file":"record-card-click-handler.js","sourceRoot":"","sources":["../../../../src/data-card/event-handlers/record-card-click-handler.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAmB,CAAa;IACpE,CAAC,CAAC,eAAe,EAAE,CAAA;IAEnB,uEAAuE;IACvE,IAAI,MAAM,GAAI,CAAC,CAAC,MAAkB,CAAC,OAAO,CAAC,+BAA+B,CAAmC,CAAA;IAC7G,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAEvC,6BAA6B;IAC7B,IAAI,MAAM,EAAE;QACV,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC/B,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;YAC5E,OAAM;SACP;KACF;IAED,2BAA2B;IAC3B,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;IACpD,IAAI,SAAS,EAAE;QACb,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;KACjF;SAAM;QACL,uCAAuC;QACvC,IAAI,CAAC,eAAe,EAAE,CAAA;KACvB;AACH,CAAC","sourcesContent":["import { DataCardField } from '../data-card-field'\nimport { DataCardGutter } from '../data-card-gutter'\nimport { RecordCard } from '../record-card'\n\n/**\n * ox-record-card 의 click handler\n *\n * - handler의 this 는 ox-record-card임.\n */\nexport function recordCardClickHandler(this: RecordCard, e: MouseEvent): void {\n e.stopPropagation()\n\n /* target should be [content] or 'ox-card-field' or 'ox-card-gutter' */\n var target = (e.target as Element).closest('ox-card-field, ox-card-gutter') as DataCardField | DataCardGutter\n var { column, rowIndex } = target || {}\n\n /* do column click handler */\n if (column) {\n var { click } = column.handlers\n if (click) {\n click(this.config.columns, this.data, column, this.record, rowIndex, target)\n return\n }\n }\n\n /* do rows click handler */\n var { click: rowsClick } = this.config.rows.handlers\n if (rowsClick) {\n rowsClick(this.config.columns, this.data, column, this.record, rowIndex, target)\n } else {\n /* content 가 클릭된 경우 - 레코드뷰 팝업을 실행한다. */\n this.popupRecordView()\n }\n}\n"]}
@@ -5,9 +5,9 @@
5
5
  */
6
6
  export function recordCardDblClickHandler(e) {
7
7
  e.stopPropagation();
8
- /* current-target should be [content] or 'ox-card-gutter' */
9
- var target = e.target;
10
- var { column, record, rowIndex, columnIndex } = target;
8
+ /* target should be [content] or 'ox-card-field' or 'ox-card-gutter' */
9
+ var target = e.target.closest('ox-card-field, ox-card-gutter');
10
+ var { column, record, rowIndex } = target || {};
11
11
  if (column && column.type == 'gutter') {
12
12
  /*
13
13
  * Gutter가 클릭된 경우
@@ -1 +1 @@
1
- {"version":3,"file":"record-card-dblclick-handler.js","sourceRoot":"","sources":["../../../../src/data-card/event-handlers/record-card-dblclick-handler.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAmB,CAAa;IACvE,CAAC,CAAC,eAAe,EAAE,CAAA;IAEnB,4DAA4D;IAC5D,IAAI,MAAM,GAAG,CAAC,CAAC,MAAa,CAAA;IAC5B,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAK/C,CAAA;IAED,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE;QACrC;;;;WAIG;QACH,6BAA6B;QAC7B,qCAAqC;QACrC,kFAAkF;QAClF,SAAS;KACV;SAAM;QACL,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;QAC1D,IAAI,YAAY,EAAE;YAChB,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;SAC/E;KACF;AACH,CAAC","sourcesContent":["import { ColumnConfig, GristRecord } from '../../types'\n\nimport { RecordCard } from '../record-card'\n\n/**\n * ox-record-card 의 dblclick handler\n *\n * - handler의 this 는 ox-record-card임.\n */\nexport function recordCardDblClickHandler(this: RecordCard, e: MouseEvent): void {\n e.stopPropagation()\n\n /* current-target should be [content] or 'ox-card-gutter' */\n var target = e.target as any\n var { column, record, rowIndex, columnIndex } = target as {\n column: ColumnConfig\n record: GristRecord\n rowIndex: number\n columnIndex: number\n }\n\n if (column && column.type == 'gutter') {\n /*\n * Gutter가 클릭된 경우\n * TODO ox-record-card의 dblclick handling의 성능을 확인하고,\n * gutter에 dblclick를 적용할 수 있는 지 확인한 후에 활성화하자.\n */\n /* do column click handler */\n // var { dblclick } = column.handlers\n // dblclick && dblclick(this.columns, this.data, column, record, rowIndex, target)\n // return\n } else {\n var { dblclick: rowsDblClick } = this.config.rows.handlers\n if (rowsDblClick) {\n rowsDblClick(this.config.columns, this.data, column, record, rowIndex, target)\n }\n }\n}\n"]}
1
+ {"version":3,"file":"record-card-dblclick-handler.js","sourceRoot":"","sources":["../../../../src/data-card/event-handlers/record-card-dblclick-handler.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAmB,CAAa;IACvE,CAAC,CAAC,eAAe,EAAE,CAAA;IAEnB,uEAAuE;IACvE,IAAI,MAAM,GAAI,CAAC,CAAC,MAAkB,CAAC,OAAO,CAAC,+BAA+B,CAAmC,CAAA;IAE7G,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,EAAE,CAAA;IAE/C,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ,EAAE;QACrC;;;;WAIG;QACH,6BAA6B;QAC7B,qCAAqC;QACrC,kFAAkF;QAClF,SAAS;KACV;SAAM;QACL,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;QAC1D,IAAI,YAAY,EAAE;YAChB,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;SAC/E;KACF;AACH,CAAC","sourcesContent":["import { DataCardField } from '../data-card-field'\nimport { DataCardGutter } from '../data-card-gutter'\nimport { RecordCard } from '../record-card'\n\n/**\n * ox-record-card 의 dblclick handler\n *\n * - handler의 this 는 ox-record-card임.\n */\nexport function recordCardDblClickHandler(this: RecordCard, e: MouseEvent): void {\n e.stopPropagation()\n\n /* target should be [content] or 'ox-card-field' or 'ox-card-gutter' */\n var target = (e.target as Element).closest('ox-card-field, ox-card-gutter') as DataCardField | DataCardGutter\n\n var { column, record, rowIndex } = target || {}\n\n if (column && column.type == 'gutter') {\n /*\n * Gutter가 클릭된 경우\n * TODO ox-record-card의 dblclick handling의 성능을 확인하고,\n * gutter에 dblclick를 적용할 수 있는 지 확인한 후에 활성화하자.\n */\n /* do column click handler */\n // var { dblclick } = column.handlers\n // dblclick && dblclick(this.columns, this.data, column, record, rowIndex, target)\n // return\n } else {\n var { dblclick: rowsDblClick } = this.config.rows.handlers\n if (rowsDblClick) {\n rowsDblClick(this.config.columns, this.data, column, record, rowIndex, target)\n }\n }\n}\n"]}
@@ -3,8 +3,8 @@ import './data-card-field';
3
3
  import '../record-view';
4
4
  import './data-card-gutter';
5
5
  import './data-card-gutter-menu';
6
- import { LitElement, PropertyValues } from 'lit';
7
6
  import { GristConfig, GristData, GristRecord } from '../types';
7
+ import { LitElement, PropertyValues } from 'lit';
8
8
  export declare class RecordCard extends LitElement {
9
9
  static styles: import("lit").CSSResult[];
10
10
  config: GristConfig;