@cratis/components 0.1.9 → 0.1.10

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 (101) hide show
  1. package/dist/cjs/PivotViewer/PivotViewer.css +1258 -0
  2. package/dist/cjs/PivotViewer/components/Spinner.css +77 -0
  3. package/dist/cjs/TimeMachine/EventsView.css +213 -0
  4. package/dist/cjs/TimeMachine/TimeMachine.css +567 -0
  5. package/dist/esm/PivotViewer/PivotViewer.css +1258 -0
  6. package/dist/esm/PivotViewer/components/Spinner.css +77 -0
  7. package/dist/esm/TimeMachine/EventsView.css +213 -0
  8. package/dist/esm/TimeMachine/TimeMachine.css +567 -0
  9. package/package.json +3 -4
  10. package/.storybook/main.ts +0 -24
  11. package/CommandDialog/CommandDialog.stories.tsx +0 -25
  12. package/CommandDialog/CommandDialog.tsx +0 -161
  13. package/CommandDialog/index.ts +0 -4
  14. package/CommandForm/CommandForm.stories.tsx +0 -24
  15. package/CommandForm/CommandForm.tsx +0 -266
  16. package/CommandForm/CommandFormField.tsx +0 -27
  17. package/CommandForm/CommandFormFields.tsx +0 -142
  18. package/CommandForm/DatePickerField.tsx +0 -57
  19. package/CommandForm/DropdownField.tsx +0 -65
  20. package/CommandForm/InputTextField.tsx +0 -62
  21. package/CommandForm/SliderField.tsx +0 -68
  22. package/CommandForm/index.ts +0 -10
  23. package/Common/ErrorBoundary.stories.tsx +0 -10
  24. package/Common/ErrorBoundary.tsx +0 -41
  25. package/Common/FormElement.stories.tsx +0 -10
  26. package/Common/FormElement.tsx +0 -20
  27. package/Common/Page.stories.tsx +0 -10
  28. package/Common/Page.tsx +0 -21
  29. package/Common/index.ts +0 -6
  30. package/DataPage/DataPage.stories.tsx +0 -10
  31. package/DataPage/DataPage.tsx +0 -191
  32. package/DataPage/index.ts +0 -4
  33. package/DataTables/DataTableForObservableQuery.stories.tsx +0 -10
  34. package/DataTables/DataTableForObservableQuery.tsx +0 -97
  35. package/DataTables/DataTableForQuery.stories.tsx +0 -10
  36. package/DataTables/DataTableForQuery.tsx +0 -97
  37. package/DataTables/index.ts +0 -5
  38. package/Dialogs/BusyIndicatorDialog.stories.tsx +0 -26
  39. package/Dialogs/BusyIndicatorDialog.tsx +0 -26
  40. package/Dialogs/ConfirmationDialog.stories.tsx +0 -36
  41. package/Dialogs/ConfirmationDialog.tsx +0 -75
  42. package/Dialogs/index.ts +0 -5
  43. package/Dropdown/Dropdown.tsx +0 -23
  44. package/Dropdown/index.ts +0 -4
  45. package/PivotViewer/PivotViewer.stories.tsx +0 -24
  46. package/PivotViewer/PivotViewer.tsx +0 -791
  47. package/PivotViewer/components/AxisLabels.tsx +0 -69
  48. package/PivotViewer/components/DetailPanel.tsx +0 -108
  49. package/PivotViewer/components/FilterPanel.tsx +0 -189
  50. package/PivotViewer/components/FilterPanelContainer.tsx +0 -10
  51. package/PivotViewer/components/PivotCanvas.tsx +0 -660
  52. package/PivotViewer/components/PivotViewerMain.tsx +0 -229
  53. package/PivotViewer/components/RangeHistogramFilter.tsx +0 -220
  54. package/PivotViewer/components/Spinner.tsx +0 -21
  55. package/PivotViewer/components/Toolbar.tsx +0 -130
  56. package/PivotViewer/components/ToolbarContainer.tsx +0 -10
  57. package/PivotViewer/components/index.ts +0 -12
  58. package/PivotViewer/components/pivot/animation.ts +0 -108
  59. package/PivotViewer/components/pivot/buckets.ts +0 -152
  60. package/PivotViewer/components/pivot/colorResolver.ts +0 -67
  61. package/PivotViewer/components/pivot/constants.ts +0 -46
  62. package/PivotViewer/components/pivot/sprites.ts +0 -265
  63. package/PivotViewer/components/pivot/visibility.ts +0 -319
  64. package/PivotViewer/constants.ts +0 -9
  65. package/PivotViewer/engine/layout.ts +0 -149
  66. package/PivotViewer/engine/pivot.worker.ts +0 -86
  67. package/PivotViewer/engine/store.ts +0 -437
  68. package/PivotViewer/engine/types.ts +0 -255
  69. package/PivotViewer/hooks/index.ts +0 -13
  70. package/PivotViewer/hooks/useContainerDimensions.ts +0 -45
  71. package/PivotViewer/hooks/useDimensionState.ts +0 -53
  72. package/PivotViewer/hooks/useFilterOptions.ts +0 -36
  73. package/PivotViewer/hooks/useFilterPanelDrag.ts +0 -49
  74. package/PivotViewer/hooks/useFilterState.ts +0 -106
  75. package/PivotViewer/hooks/useFilteredData.ts +0 -119
  76. package/PivotViewer/hooks/usePanning.ts +0 -163
  77. package/PivotViewer/hooks/usePivotEngine.ts +0 -252
  78. package/PivotViewer/hooks/useSelectedItem.ts +0 -402
  79. package/PivotViewer/hooks/useWheelZoom.ts +0 -114
  80. package/PivotViewer/hooks/useZoomState.ts +0 -34
  81. package/PivotViewer/index.ts +0 -7
  82. package/PivotViewer/types.ts +0 -59
  83. package/PivotViewer/utils/animations.ts +0 -249
  84. package/PivotViewer/utils/constants.ts +0 -20
  85. package/PivotViewer/utils/index.ts +0 -6
  86. package/PivotViewer/utils/selection.ts +0 -292
  87. package/PivotViewer/utils/utils.ts +0 -259
  88. package/TimeMachine/EventsView.stories.tsx +0 -10
  89. package/TimeMachine/EventsView.tsx +0 -119
  90. package/TimeMachine/Properties.stories.tsx +0 -10
  91. package/TimeMachine/Properties.tsx +0 -98
  92. package/TimeMachine/ReadModelView.stories.tsx +0 -10
  93. package/TimeMachine/ReadModelView.tsx +0 -143
  94. package/TimeMachine/TimeMachine.stories.tsx +0 -10
  95. package/TimeMachine/TimeMachine.tsx +0 -244
  96. package/TimeMachine/index.ts +0 -8
  97. package/TimeMachine/types.ts +0 -23
  98. package/global.d.ts +0 -11
  99. package/index.ts +0 -22
  100. package/useOverlayZIndex.ts +0 -32
  101. package/vite.config.ts +0 -80
@@ -0,0 +1,77 @@
1
+ /* Loading Spinner */
2
+ .pv-loading {
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ flex: 1;
7
+ min-height: 400px;
8
+ }
9
+
10
+ .pv-spinner {
11
+ width: 80px;
12
+ height: 80px;
13
+ position: relative;
14
+ }
15
+
16
+ .pv-spinner-ring {
17
+ position: absolute;
18
+ inset: 0;
19
+ border-radius: 50%;
20
+ border: 4px solid transparent;
21
+ }
22
+
23
+ .pv-spinner-ring:nth-child(1) {
24
+ border-top-color: var(--primary-300);
25
+ animation: spinner-rotate 1.5s linear infinite;
26
+ }
27
+
28
+ .pv-spinner-ring:nth-child(2) {
29
+ border-right-color: var(--primary-400);
30
+ animation: spinner-rotate 1.5s linear infinite;
31
+ animation-delay: -0.1875s;
32
+ }
33
+
34
+ .pv-spinner-ring:nth-child(3) {
35
+ border-bottom-color: var(--primary-500);
36
+ animation: spinner-rotate 1.5s linear infinite;
37
+ animation-delay: -0.375s;
38
+ }
39
+
40
+ .pv-spinner-ring:nth-child(4) {
41
+ border-left-color: var(--primary-600);
42
+ animation: spinner-rotate 1.5s linear infinite;
43
+ animation-delay: -0.5625s;
44
+ }
45
+
46
+ .pv-spinner-ring:nth-child(5) {
47
+ border-top-color: var(--primary-400);
48
+ animation: spinner-rotate 1.5s linear infinite reverse;
49
+ animation-delay: -0.75s;
50
+ }
51
+
52
+ .pv-spinner-ring:nth-child(6) {
53
+ border-right-color: var(--primary-500);
54
+ animation: spinner-rotate 1.5s linear infinite reverse;
55
+ animation-delay: -0.9375s;
56
+ }
57
+
58
+ .pv-spinner-ring:nth-child(7) {
59
+ border-bottom-color: var(--primary-300);
60
+ animation: spinner-rotate 1.5s linear infinite reverse;
61
+ animation-delay: -1.125s;
62
+ }
63
+
64
+ .pv-spinner-ring:nth-child(8) {
65
+ border-left-color: var(--primary-600);
66
+ animation: spinner-rotate 1.5s linear infinite reverse;
67
+ animation-delay: -1.3125s;
68
+ }
69
+
70
+ @keyframes spinner-rotate {
71
+ 0% {
72
+ transform: rotate(0deg);
73
+ }
74
+ 100% {
75
+ transform: rotate(360deg);
76
+ }
77
+ }
@@ -0,0 +1,213 @@
1
+ /* Events View Container */
2
+ .events-view-container {
3
+ position: absolute;
4
+ inset: 0;
5
+ padding: 5rem 2rem 2rem;
6
+ overflow-y: auto;
7
+ background: transparent;
8
+ z-index: 1;
9
+ }
10
+
11
+ /* Timeline customization */
12
+ .events-view-timeline {
13
+ max-width: 1200px;
14
+ margin: 0 auto;
15
+ padding: 2.5rem 0 3rem;
16
+ }
17
+
18
+ .events-view-timeline .p-timeline {
19
+ display: flex;
20
+ flex-direction: column;
21
+ }
22
+
23
+ .events-view-scroll-button {
24
+ position: relative;
25
+ margin-right: 0.5rem;
26
+ width: 44px;
27
+ height: 44px;
28
+ border-radius: 50%;
29
+ border: 1px solid rgba(255, 255, 255, 0.15);
30
+ background: rgba(15, 23, 42, 0.75);
31
+ color: #fff;
32
+ display: flex;
33
+ align-items: center;
34
+ justify-content: center;
35
+ backdrop-filter: blur(8px);
36
+ box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
37
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
38
+ z-index: 5;
39
+ pointer-events: auto;
40
+ }
41
+
42
+ .events-view-scroll-button:hover {
43
+ transform: translateY(-2px);
44
+ box-shadow: 0 10px 24px rgba(0, 0, 0, 0.4);
45
+ }
46
+
47
+ .events-view-scroll-button:active {
48
+ transform: translateY(0);
49
+ }
50
+
51
+ .events-view-scroll-button--top {
52
+ top: auto;
53
+ }
54
+
55
+ .events-view-scroll-button--bottom {
56
+ bottom: auto;
57
+ }
58
+
59
+ .events-view-scroll-button-wrapper {
60
+ position: sticky;
61
+ display: flex;
62
+ justify-content: flex-end;
63
+ padding-right: 0.5rem;
64
+ pointer-events: none;
65
+ z-index: 5;
66
+ height: 0;
67
+ overflow: visible;
68
+ }
69
+
70
+ .events-view-scroll-button-wrapper--top {
71
+ top: 4.5rem;
72
+ }
73
+
74
+ .events-view-scroll-button-wrapper--bottom {
75
+ bottom: 2.5rem;
76
+ }
77
+
78
+ /* Event Card */
79
+ .events-view-event-card {
80
+ background: rgba(255, 255, 255, 0.05);
81
+ border: 1px solid rgba(255, 255, 255, 0.1);
82
+ border-radius: 12px;
83
+ padding: 1.5rem;
84
+ backdrop-filter: blur(10px);
85
+ transition: all 0.3s ease;
86
+ max-width: 380px;
87
+ }
88
+
89
+ .events-view-event-card:hover {
90
+ background: rgba(255, 255, 255, 0.08);
91
+ border-color: rgba(100, 150, 255, 0.3);
92
+ transform: translateY(-2px);
93
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
94
+ }
95
+
96
+ /* Event Header */
97
+ .events-view-event-header {
98
+ margin-bottom: 1rem;
99
+ padding-bottom: 1rem;
100
+ border-bottom: 1px solid rgba(255, 255, 255, 0.1);
101
+ }
102
+
103
+ .events-view-event-name {
104
+ font-size: 1.25rem;
105
+ font-weight: 600;
106
+ color: #fff;
107
+ margin: 0 0 0.5rem 0;
108
+ font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif;
109
+ }
110
+
111
+ .events-view-event-timestamp {
112
+ font-size: 0.875rem;
113
+ color: rgba(255, 255, 255, 0.6);
114
+ font-family: -apple-system, BlinkMacSystemFont, 'SF Mono', monospace;
115
+ }
116
+
117
+ .events-view-event-header--right {
118
+ text-align: right;
119
+ }
120
+
121
+ .events-view-event-name--right,
122
+ .events-view-event-timestamp--right {
123
+ text-align: right;
124
+ }
125
+
126
+ /* Event Properties */
127
+ .events-view-event-properties {
128
+ margin-top: 1rem;
129
+ }
130
+
131
+ /* Custom Marker */
132
+ .events-view-marker {
133
+ display: flex;
134
+ align-items: center;
135
+ justify-content: center;
136
+ width: 2.5rem;
137
+ height: 2.5rem;
138
+ background: linear-gradient(135deg, rgba(100, 150, 255, 0.2), rgba(100, 150, 255, 0.1));
139
+ border: 2px solid rgba(100, 150, 255, 0.5);
140
+ border-radius: 50%;
141
+ position: relative;
142
+ backdrop-filter: blur(5px);
143
+ transition: all 0.3s ease;
144
+ }
145
+
146
+ .events-view-marker:hover {
147
+ background: linear-gradient(135deg, rgba(100, 150, 255, 0.4), rgba(100, 150, 255, 0.2));
148
+ border-color: rgba(100, 150, 255, 0.8);
149
+ transform: scale(1.1);
150
+ }
151
+
152
+ .events-view-marker-dot {
153
+ width: 0.75rem;
154
+ height: 0.75rem;
155
+ background: rgba(100, 150, 255, 0.9);
156
+ border-radius: 50%;
157
+ box-shadow: 0 0 10px rgba(100, 150, 255, 0.5);
158
+ }
159
+
160
+ /* PrimeReact Timeline connector styling */
161
+ .events-view-timeline .p-timeline-event-connector {
162
+ background: linear-gradient(to bottom, rgba(100, 150, 255, 0.6), rgba(100, 150, 255, 0.4));
163
+ }
164
+
165
+ .events-view-timeline .p-timeline-event:last-child .p-timeline-event-connector {
166
+ visibility: hidden;
167
+ }
168
+
169
+ /* Remove default padding from PrimeReact timeline content areas */
170
+ .events-view-timeline .p-timeline-event-opposite,
171
+ .events-view-timeline .p-timeline-event-content {
172
+ padding: 0 1.5rem;
173
+ display: flex;
174
+ align-items: center;
175
+ }
176
+
177
+ /* Ensure cards hug the timeline on both sides */
178
+ .events-view-timeline .p-timeline-event:nth-child(odd) .p-timeline-event-content {
179
+ justify-content: flex-start;
180
+ }
181
+
182
+ .events-view-timeline .p-timeline-event:nth-child(even) .p-timeline-event-content {
183
+ justify-content: flex-end;
184
+ }
185
+
186
+ .events-view-timeline .p-timeline-event:nth-child(odd) .p-timeline-event-opposite {
187
+ justify-content: flex-end;
188
+ }
189
+
190
+ .events-view-timeline .p-timeline-event:nth-child(even) .p-timeline-event-opposite {
191
+ justify-content: flex-start;
192
+ }
193
+
194
+ .events-view-event-card--left,
195
+ .events-view-event-card--right {
196
+ max-width: 380px;
197
+ }
198
+
199
+ /* Right-align content in left-side cards */
200
+ .events-view-timeline .p-timeline-event-opposite .events-view-event-card {
201
+ text-align: right;
202
+ }
203
+
204
+ .events-view-timeline .p-timeline-event-opposite .events-view-event-card table {
205
+ margin-left: auto;
206
+ direction: rtl;
207
+ }
208
+
209
+ .events-view-timeline .p-timeline-event-opposite .events-view-event-card table td {
210
+ direction: ltr;
211
+ text-align: right;
212
+ }
213
+