@ketvietlab/ketsuite 0.1.13 → 0.1.15

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 (44) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/modules/backend/design/HANDOFF.md +17 -18
  3. package/dist/modules/backend/design/client/backend-shell.d.mts +2 -2
  4. package/dist/modules/backend/design/client/backend-shell.d.mts.map +1 -1
  5. package/dist/modules/backend/design/client/backend-shell.mjs +1 -1
  6. package/dist/modules/backend/design/client/backend-shell.mjs.map +4 -4
  7. package/dist/modules/backend/design/content.css +0 -88
  8. package/dist/modules/backend/design/design-system.css +1 -1
  9. package/dist/modules/backend/design/foundation.css +8 -195
  10. package/dist/modules/backend/design/responsive.css +7 -16
  11. package/dist/modules/backend/messages.d.ts.map +1 -1
  12. package/dist/modules/backend/messages.js +4 -0
  13. package/dist/modules/backend/messages.js.map +1 -1
  14. package/dist/modules/loyalty/membership-functions.d.ts.map +1 -1
  15. package/dist/modules/loyalty/membership-functions.js +17 -7
  16. package/dist/modules/loyalty/membership-functions.js.map +1 -1
  17. package/dist/modules/loyalty/stats.d.ts.map +1 -1
  18. package/dist/modules/loyalty/stats.js +2 -2
  19. package/dist/modules/loyalty/stats.js.map +1 -1
  20. package/dist/modules/loyalty_backend/index.js +59 -13
  21. package/dist/modules/loyalty_backend/index.js.map +1 -1
  22. package/dist/modules/loyalty_backend/messages.d.ts +13 -1
  23. package/dist/modules/loyalty_backend/messages.d.ts.map +1 -1
  24. package/dist/modules/loyalty_backend/messages.js +14 -2
  25. package/dist/modules/loyalty_backend/messages.js.map +1 -1
  26. package/dist/modules/loyalty_backend/screens/index.d.ts +10 -4
  27. package/dist/modules/loyalty_backend/screens/index.d.ts.map +1 -1
  28. package/dist/modules/loyalty_backend/screens/index.js +116 -29
  29. package/dist/modules/loyalty_backend/screens/index.js.map +1 -1
  30. package/dist/permission-catalogue.d.ts.map +1 -1
  31. package/dist/permission-catalogue.js +21 -0
  32. package/dist/permission-catalogue.js.map +1 -1
  33. package/dist/scaffold/index.js +1 -1
  34. package/dist/ui/client/table-selection-view.d.ts.map +1 -1
  35. package/dist/ui/client/table-selection-view.js +3 -0
  36. package/dist/ui/client/table-selection-view.js.map +1 -1
  37. package/dist/ui/layout.d.ts.map +1 -1
  38. package/dist/ui/layout.js +2 -2
  39. package/dist/ui/layout.js.map +1 -1
  40. package/dist/ui/nav.d.ts +4 -2
  41. package/dist/ui/nav.d.ts.map +1 -1
  42. package/dist/ui/nav.js +53 -39
  43. package/dist/ui/nav.js.map +1 -1
  44. package/package.json +4 -4
@@ -89,7 +89,7 @@
89
89
  counts and the settings link sat eight hundred pixels below the fold, and you
90
90
  scrolled the whole page to reach them. Sticky at 100dvh keeps the document the
91
91
  scroller, so the browser's own scrollbar and the navigation runtime's scroll
92
- restoration go on working; `sidebar-nav` takes the overflow inside. */
92
+ restoration go on working; `navigation-groups` takes the overflow inside. */
93
93
  [data-ui="sidebar"] {
94
94
  z-index: 20;
95
95
  display: flex;
@@ -115,43 +115,17 @@
115
115
  overflow: hidden;
116
116
  }
117
117
 
118
- [data-ui="sidebar-header"] {
119
- flex-shrink: 0;
120
- padding: 0.75rem 0.75rem 0.5rem;
121
- }
122
-
123
- [data-ui="sidebar-brand"] {
124
- display: flex;
125
- inline-size: 100%;
126
- align-items: center;
127
- gap: 0.375rem;
128
- padding: 0.375rem 0.5rem;
129
- border-radius: var(--admin-radius-sm);
130
- color: var(--admin-ink);
131
- font-size: 0.875rem;
132
- font-weight: 600;
133
- text-decoration: none;
134
- transition: background-color var(--admin-motion-fast);
118
+ [data-ui="sidebar-main"] > [data-ui="app-navigation"] {
119
+ flex: 1 1 auto;
120
+ min-block-size: 0;
135
121
  }
136
122
 
137
- [data-ui="sidebar-brand"]:hover {
138
- background: var(--admin-surface);
123
+ [data-ui="navigation-context"] [data-ui="sidebar-search"] {
124
+ margin: 0.5rem 0 0;
139
125
  }
140
126
 
141
- [data-ui="sidebar-brand-name"] {
142
- overflow: hidden;
143
- min-inline-size: 0;
144
- flex: 1 1 auto;
145
- text-overflow: ellipsis;
146
- }
147
-
148
- [data-ui="sidebar-brand-chevron"] {
149
- display: grid;
150
- inline-size: 0.75rem;
151
- block-size: 0.75rem;
152
- flex-shrink: 0;
153
- place-items: center;
154
- color: var(--admin-ink-muted);
127
+ [data-ui="navigation-footer"] {
128
+ padding: 0;
155
129
  }
156
130
 
157
131
  /* The menu search, not the record search. This one narrows the sidebar; the
@@ -200,40 +174,6 @@
200
174
  box-shadow: 0 0 0 3px var(--admin-focus-ring);
201
175
  }
202
176
 
203
- /* The scroll lives here, not on the sidebar: the brand, the search and the
204
- foot stay put while forty menu entries move under them. */
205
- [data-ui="sidebar-nav"] {
206
- flex: 1 1 auto;
207
- padding: 0 0.5rem 0.75rem;
208
- overflow-x: hidden;
209
- overflow-y: auto;
210
- scrollbar-width: none;
211
- }
212
-
213
- [data-ui="sidebar-nav"]::-webkit-scrollbar {
214
- display: none;
215
- }
216
-
217
- [data-ui="sidebar-section-label"] {
218
- margin: 0.875rem 0.5rem 0.375rem;
219
- color: var(--admin-ink-secondary);
220
- font-size: 0.6875rem;
221
- font-weight: 600;
222
- letter-spacing: 0.06em;
223
- line-height: 1.2;
224
- text-transform: uppercase;
225
- }
226
-
227
- [data-ui="sidebar-section-label"]:first-child {
228
- margin-block-start: 0;
229
- }
230
-
231
- [data-ui="sidebar-section-label"][data-scope="app"] {
232
- margin-block-start: 1.125rem;
233
- padding-block-start: 0.75rem;
234
- border-block-start: 1px solid var(--admin-line);
235
- }
236
-
237
177
  [data-ui="sidebar-empty"] {
238
178
  margin: 0.5rem;
239
179
  color: var(--admin-ink-muted);
@@ -241,66 +181,6 @@
241
181
  white-space: normal;
242
182
  }
243
183
 
244
- [data-ui="app-list"],
245
- [data-ui="menu"],
246
- [data-ui="menu-section-children"] {
247
- margin: 0;
248
- padding: 0;
249
- list-style: none;
250
- }
251
-
252
- [data-ui="app-entry"],
253
- [data-ui="menu-item"] {
254
- display: flex;
255
- min-inline-size: 0;
256
- align-items: center;
257
- gap: 0.5rem;
258
- padding: 0.3125rem 0.5rem;
259
- border-radius: var(--admin-radius-sm);
260
- color: var(--admin-ink);
261
- font-size: 0.8125rem;
262
- font-weight: 500;
263
- line-height: 1.35;
264
- text-decoration: none;
265
- transition:
266
- background-color var(--admin-motion-fast),
267
- color var(--admin-motion-fast);
268
- }
269
-
270
- [data-ui="app-entry"]:hover,
271
- [data-ui="menu-item"]:hover {
272
- background: var(--admin-surface);
273
- }
274
-
275
- [data-ui="app-entry"][data-active="true"],
276
- [data-ui="menu-item"][data-active="true"] {
277
- background: var(--admin-nav-selected);
278
- color: light-dark(var(--admin-accent-text), #dce2ff);
279
- font-weight: 600;
280
- }
281
-
282
- [data-ui="app-icon"] {
283
- display: grid;
284
- inline-size: 1.125rem;
285
- block-size: 1.125rem;
286
- flex-shrink: 0;
287
- place-items: center;
288
- color: var(--admin-ink-secondary);
289
- }
290
-
291
- [data-ui="menu-icon"] {
292
- display: grid;
293
- inline-size: 1rem;
294
- block-size: 1rem;
295
- flex-shrink: 0;
296
- place-items: center;
297
- color: var(--admin-ink-secondary);
298
- }
299
-
300
- [data-ui="app-entry"][data-active="true"] [data-ui="app-icon"] {
301
- color: var(--admin-focus-border);
302
- }
303
-
304
184
  [data-ui="app-monogram"] {
305
185
  display: grid;
306
186
  inline-size: 1.125rem;
@@ -312,23 +192,12 @@
312
192
  font-weight: 700;
313
193
  }
314
194
 
315
- [data-ui="app-name"],
316
- [data-ui="menu-label"] {
317
- overflow: hidden;
318
- min-inline-size: 0;
319
- flex: 1 1 auto;
320
- text-overflow: ellipsis;
321
- }
322
-
323
195
  [data-ui="icon"] {
324
196
  display: block;
325
197
  inline-size: 1em;
326
198
  block-size: 1em;
327
199
  }
328
200
 
329
- [data-ui="app-icon"] > [data-ui="icon"],
330
- [data-ui="menu-icon"] > [data-ui="icon"],
331
- [data-ui="sidebar-brand-chevron"] > [data-ui="icon"],
332
201
  [data-ui="sidebar-search-icon"] > [data-ui="icon"],
333
202
  [data-ui="chrome-search-icon"] > [data-ui="icon"],
334
203
  [data-ui="chrome-search-toggle"] > [data-ui="icon"],
@@ -364,60 +233,4 @@
364
233
  block-size: 1rem;
365
234
  place-items: center;
366
235
  }
367
-
368
- /* ── The open app's menu ───────────────────────────────────────────────── */
369
-
370
- [data-ui="menu-item-wrap"] {
371
- display: block;
372
- }
373
-
374
- /* A group is a label rather than a control: nothing folds, so nothing invites
375
- * a click or answers one. */
376
- [data-ui="menu-section-title"] {
377
- display: flex;
378
- inline-size: 100%;
379
- align-items: center;
380
- gap: 0.375rem;
381
- padding: 0.375rem 0.5rem 0.25rem;
382
- margin-block-start: 0.5rem;
383
- list-style: none;
384
- }
385
-
386
- [data-ui="menu-section-text"] {
387
- overflow: hidden;
388
- color: var(--admin-ink-secondary);
389
- font-size: 0.6875rem;
390
- font-weight: 600;
391
- letter-spacing: 0.05em;
392
- text-overflow: ellipsis;
393
- text-transform: uppercase;
394
- }
395
-
396
- /* A rule down the side, so depth is legible without counting indents. */
397
- [data-ui="menu-section-children"] {
398
- margin-inline-start: 1rem;
399
- padding-inline-start: 0.75rem;
400
- border-inline-start: 1px solid var(--admin-line);
401
- }
402
-
403
- [data-ui="menu-item-wrap"][data-depth="1"] > * > [data-ui="menu-section-children"],
404
- [data-ui="menu-item-wrap"][data-depth="2"] > * > [data-ui="menu-section-children"] {
405
- margin-inline-start: 0.75rem;
406
- }
407
-
408
- [data-ui="menu-dot"] {
409
- inline-size: 0.25rem;
410
- block-size: 0.25rem;
411
- flex-shrink: 0;
412
- border-radius: 50%;
413
- background: var(--admin-ink-muted);
414
- }
415
-
416
- [data-ui="menu-item"][data-active="true"] [data-ui="menu-dot"] {
417
- background: var(--admin-focus-border);
418
- }
419
-
420
- [data-ui="menu-item"][data-active="true"] [data-ui="menu-icon"] {
421
- color: var(--admin-focus-border);
422
- }
423
236
  }
@@ -142,29 +142,20 @@
142
142
  position: sticky;
143
143
  inset-block-start: 0;
144
144
  z-index: 30;
145
- display: flex;
145
+ display: block;
146
146
  inline-size: 100%;
147
147
  block-size: auto;
148
- flex-direction: row;
149
- align-items: center;
150
- gap: var(--admin-gap-sm);
151
- min-block-size: var(--admin-topbar-height);
152
- padding: var(--admin-gap-xs) var(--admin-gap-sm);
153
- overflow: hidden;
148
+ min-block-size: 0;
149
+ padding: 0;
150
+ overflow: visible;
154
151
  background: var(--admin-sidebar-bg);
155
152
  border: 0;
156
153
  border-block-end: 1px solid var(--admin-divider-subtle);
157
154
  }
158
155
 
159
- [data-ui="sidebar-header"] {
160
- min-inline-size: 0;
161
- flex: 1 1 auto;
162
- padding: 0;
163
- }
164
-
165
- [data-ui="sidebar-brand"] {
166
- min-block-size: 2.75rem;
167
- padding-inline: var(--admin-gap-sm);
156
+ [data-ui="sidebar-main"] {
157
+ inline-size: 100%;
158
+ overflow: visible;
168
159
  }
169
160
 
170
161
  [data-ui="sidebar-foot"] {
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/backend/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAEhD;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqO5D,CAAA"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/backend/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAEhD;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyO5D,CAAA"}
@@ -26,6 +26,8 @@ export const messages = {
26
26
  'menu.setup': 'Thiết lập',
27
27
  'nav.search': 'Tìm phân hệ, menu…',
28
28
  'nav.noMatch': 'Không có phân hệ hoặc menu nào khớp.',
29
+ 'nav.open': 'Mở menu ứng dụng',
30
+ 'nav.close': 'Đóng menu ứng dụng',
29
31
  // What a person reads when the answer is no. The code stays on the page —
30
32
  // it is what they will be asked for — but it is not the headline, because
31
33
  // "E_FN_NOT_PERMITTED" tells them nothing they can act on.
@@ -135,6 +137,8 @@ export const messages = {
135
137
  'error.back': 'Back to the start',
136
138
  'nav.search': 'Search modules and menus…',
137
139
  'nav.noMatch': 'No module or menu matches.',
140
+ 'nav.open': 'Open application menu',
141
+ 'nav.close': 'Close application menu',
138
142
  'nav.pages': 'Pages',
139
143
  brand: 'KetSuite',
140
144
  switchCompany: 'Switch company',
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/backend/messages.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAA4C;IAC/D,EAAE,EAAE;QACF,OAAO,EAAE,WAAW;QACpB,WAAW,EAAE,UAAU;QACvB,aAAa,EAAE,yCAAyC;QACxD,cAAc,EAAE,UAAU;QAE1B,cAAc,EAAE,SAAS;QAEzB,6EAA6E;QAC7E,6EAA6E;QAC7E,4EAA4E;QAC5E,6EAA6E;QAC7E,0EAA0E;QAC1E,gBAAgB,EAAE,YAAY;QAC9B,WAAW,EAAE,UAAU;QACvB,cAAc,EAAE,UAAU;QAC1B,YAAY,EAAE,iBAAiB;QAC/B,YAAY,EAAE,SAAS;QACvB,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,oBAAoB;QAClC,aAAa,EAAE,sCAAsC;QACrD,0EAA0E;QAC1E,0EAA0E;QAC1E,2DAA2D;QAC3D,uBAAuB,EAAE,oCAAoC;QAC7D,yBAAyB,EACvB,gIAAgI;QAClI,qBAAqB,EAAE,6BAA6B;QACpD,uBAAuB,EACrB,uFAAuF;QACzF,oBAAoB,EAAE,4BAA4B;QAClD,sBAAsB,EACpB,sGAAsG;QACxG,YAAY,EAAE,oBAAoB;QAClC,WAAW,EAAE,OAAO;QACpB,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,gBAAgB;QAC/B,cAAc,EAAE,wBAAwB;QACxC,oBAAoB,EAAE,eAAe;QAErC,eAAe,EAAE,UAAU;QAC3B,UAAU,EAAE,IAAI;QAEhB,aAAa,EAAE,IAAI;QAEnB,iBAAiB,EAAE,kBAAkB;QACrC,iBAAiB,EAAE,WAAW;QAC9B,eAAe,EAAE,WAAW;QAC5B,oBAAoB,EAAE,sBAAsB;QAC5C,kBAAkB,EAAE,mBAAmB;QACvC,oBAAoB,EAAE,uBAAuB;QAC7C,gBAAgB,EAAE,MAAM;QACxB,iBAAiB,EAAE,MAAM;QACzB,iBAAiB,EAAE,KAAK;QACxB,eAAe,EAAE,KAAK;QACtB,eAAe,EAAE,KAAK;QACtB,iBAAiB,EAAE,KAAK;QACxB,iBAAiB,EAAE,SAAS;QAC5B,wBAAwB,EAAE,kBAAkB;QAC5C,gBAAgB,EAAE,SAAS;QAC3B,gBAAgB,EAAE,SAAS;QAC3B,iBAAiB,EAAE,SAAS;QAE5B,mBAAmB,EAAE,WAAW;QAChC,qBAAqB,EAAE,WAAW;QAClC,iBAAiB,EAAE,aAAa;QAChC,eAAe,EAAE,uDAAuD;QAExE,4EAA4E;QAC5E,4EAA4E;QAC5E,0EAA0E;QAC1E,qBAAqB,EAAE,yBAAyB;QAChD,iBAAiB,EAAE,+BAA+B;QAClD,gBAAgB,EAAE,gCAAgC;QAClD,gBAAgB,EAAE,kCAAkC;QACpD,sBAAsB,EAAE,0BAA0B;QAClD,sBAAsB,EAAE,8BAA8B;QACtD,kBAAkB,EAAE,6CAA6C;QACjE,oBAAoB,EAAE,gCAAgC;QACtD,oBAAoB,EAAE,kCAAkC;QACxD,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,UAAU;QAC1B,kBAAkB,EAAE,WAAW;QAC/B,oBAAoB,EAAE,KAAK;QAC3B,oBAAoB,EAAE,KAAK;QAC3B,oBAAoB,EAAE,YAAY;QAClC,qBAAqB,EAAE,oBAAoB;QAC3C,gBAAgB,EAAE,QAAQ;QAC1B,gBAAgB,EAAE,WAAW;QAC7B,kBAAkB,EAAE,WAAW;QAC/B,wBAAwB,EAAE,oBAAoB;QAC9C,0BAA0B,EAAE,MAAM;QAClC,uBAAuB,EAAE,YAAY;QACrC,0BAA0B,EAAE,kBAAkB;QAC9C,oBAAoB,EAAE,QAAQ;QAC9B,uBAAuB,EAAE,WAAW;QACpC,oBAAoB,EAAE,SAAS;QAC/B,cAAc,EAAE,SAAS;QACzB,aAAa,EAAE,eAAe;QAC9B,gBAAgB,EAAE,SAAS;QAC3B,eAAe,EAAE,KAAK;QAEtB,iBAAiB,EAAE,kBAAkB;QACrC,iBAAiB,EAAE,WAAW;QAE9B,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,UAAU;QAC1B,YAAY,EAAE,OAAO;QACrB,aAAa,EAAE,UAAU;QAEzB,aAAa,EAAE,OAAO;QACtB,gBAAgB,EAAE,WAAW;QAC7B,iBAAiB,EAAE,SAAS;QAC5B,iBAAiB,EAAE,YAAY;QAC/B,iBAAiB,EAAE,SAAS;QAC5B,aAAa,EAAE,MAAM;QACrB,qBAAqB,EAAE,oBAAoB;QAC3C,kBAAkB,EAAE,gCAAgC;QACpD,aAAa,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE;KAChE;IACD,EAAE,EAAE;QACF,OAAO,EAAE,UAAU;QACnB,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,iDAAiD;QAChE,cAAc,EAAE,QAAQ;QAExB,cAAc,EAAE,SAAS;QAEzB,gBAAgB,EAAE,WAAW;QAC7B,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,SAAS;QACzB,YAAY,EAAE,oBAAoB;QAClC,YAAY,EAAE,YAAY;QAC1B,YAAY,EAAE,OAAO;QACrB,uBAAuB,EAAE,uCAAuC;QAChE,yBAAyB,EACvB,kHAAkH;QACpH,qBAAqB,EAAE,4BAA4B;QACnD,uBAAuB,EAAE,6EAA6E;QACtG,oBAAoB,EAAE,iCAAiC;QACvD,sBAAsB,EACpB,+HAA+H;QACjI,YAAY,EAAE,mBAAmB;QACjC,YAAY,EAAE,2BAA2B;QACzC,aAAa,EAAE,4BAA4B;QAC3C,WAAW,EAAE,OAAO;QACpB,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,gBAAgB;QAC/B,cAAc,EAAE,yBAAyB;QACzC,oBAAoB,EAAE,aAAa;QAEnC,eAAe,EAAE,SAAS;QAC1B,UAAU,EAAE,IAAI;QAEhB,aAAa,EAAE,OAAO;QAEtB,iBAAiB,EAAE,iBAAiB;QACpC,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,cAAc;QAC/B,oBAAoB,EAAE,iBAAiB;QACvC,kBAAkB,EAAE,kBAAkB;QACtC,oBAAoB,EAAE,wBAAwB;QAC9C,gBAAgB,EAAE,OAAO;QACzB,iBAAiB,EAAE,QAAQ;QAC3B,iBAAiB,EAAE,KAAK;QACxB,eAAe,EAAE,MAAM;QACvB,eAAe,EAAE,MAAM;QACvB,iBAAiB,EAAE,QAAQ;QAC3B,iBAAiB,EAAE,SAAS;QAC5B,wBAAwB,EAAE,iBAAiB;QAC3C,gBAAgB,EAAE,OAAO;QACzB,gBAAgB,EAAE,QAAQ;QAC1B,iBAAiB,EAAE,UAAU;QAE7B,mBAAmB,EAAE,YAAY;QACjC,qBAAqB,EAAE,eAAe;QACtC,iBAAiB,EAAE,eAAe;QAClC,eAAe,EAAE,8CAA8C;QAE/D,qBAAqB,EAAE,yBAAyB;QAChD,iBAAiB,EAAE,sCAAsC;QACzD,gBAAgB,EAAE,sBAAsB;QACxC,gBAAgB,EAAE,sBAAsB;QACxC,sBAAsB,EAAE,kCAAkC;QAC1D,sBAAsB,EAAE,iCAAiC;QACzD,kBAAkB,EAAE,yCAAyC;QAC7D,oBAAoB,EAAE,kCAAkC;QACxD,oBAAoB,EAAE,yCAAyC;QAC/D,aAAa,EAAE,WAAW;QAC1B,cAAc,EAAE,OAAO;QACvB,kBAAkB,EAAE,MAAM;QAC1B,oBAAoB,EAAE,OAAO;QAC7B,oBAAoB,EAAE,QAAQ;QAC9B,oBAAoB,EAAE,eAAe;QACrC,qBAAqB,EAAE,oBAAoB;QAC3C,gBAAgB,EAAE,SAAS;QAC3B,gBAAgB,EAAE,UAAU;QAC5B,kBAAkB,EAAE,WAAW;QAC/B,wBAAwB,EAAE,kBAAkB;QAC5C,0BAA0B,EAAE,UAAU;QACtC,uBAAuB,EAAE,QAAQ;QACjC,0BAA0B,EAAE,YAAY;QACxC,oBAAoB,EAAE,OAAO;QAC7B,uBAAuB,EAAE,UAAU;QACnC,oBAAoB,EAAE,OAAO;QAC7B,cAAc,EAAE,OAAO;QACvB,aAAa,EAAE,cAAc;QAC7B,gBAAgB,EAAE,SAAS;QAC3B,eAAe,EAAE,QAAQ;QAEzB,iBAAiB,EAAE,iBAAiB;QACpC,iBAAiB,EAAE,YAAY;QAE/B,YAAY,EAAE,gBAAgB;QAC9B,cAAc,EAAE,SAAS;QACzB,YAAY,EAAE,OAAO;QACrB,aAAa,EAAE,eAAe;QAE9B,aAAa,EAAE,OAAO;QACtB,gBAAgB,EAAE,MAAM;QACxB,iBAAiB,EAAE,OAAO;QAC1B,iBAAiB,EAAE,QAAQ;QAC3B,iBAAiB,EAAE,WAAW;QAC9B,aAAa,EAAE,OAAO;QACtB,qBAAqB,EAAE,eAAe;QACtC,kBAAkB,EAAE,wCAAwC;QAC5D,aAAa,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE;KAC/D;CACF,CAAA"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/backend/messages.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"membership-functions.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/loyalty/membership-functions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAQ,MAAM,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAa/D,eAAO,MAAM,kBAAkB,QACxB,GAAG,aACG,MAAM,kBAEhB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CA4BvE,CAAA;AAED,eAAO,MAAM,oBAAoB,QAAe,GAAG,aAAa,MAAM,kBAAe,OAAO,CAAC,GAAG,GAAG,IAAI,CA2BtG,CAAA;AA0BD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA+GtD,CAAA"}
1
+ {"version":3,"file":"membership-functions.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/loyalty/membership-functions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAQ,MAAM,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAa/D,eAAO,MAAM,kBAAkB,QACxB,GAAG,aACG,MAAM,kBAEhB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CA4BvE,CAAA;AAED,eAAO,MAAM,oBAAoB,QAAe,GAAG,aAAa,MAAM,kBAAe,OAAO,CAAC,GAAG,GAAG,IAAI,CA2BtG,CAAA;AA0BD,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2HtD,CAAA"}
@@ -1,4 +1,4 @@
1
- import { and, asc, defineFn, deleteFrom, desc, eq, from, gt, lte } from '@ketvietlab/ketjs';
1
+ import { and, asc, defineFn, deleteFrom, desc, eq, from, gt, inArray, lte } from '@ketvietlab/ketjs';
2
2
  import { decimal, invalid, issue, n, now } from './engine.js';
3
3
  const cutoffFor = (date, months) => {
4
4
  const cutoff = new Date(date);
@@ -95,7 +95,7 @@ export const membershipFunctions = {
95
95
  */
96
96
  'membership.list': defineFn({
97
97
  input: { tierId: 'id?', state: 'text?', limit: 'int?', offset: 'int?' },
98
- effects: ['read:loyalty.Membership', 'read:loyalty.Tier'],
98
+ effects: ['read:loyalty.Membership', 'read:loyalty.Tier', 'read:partner.Partner'],
99
99
  agent: true,
100
100
  handler: async (ctx, args) => {
101
101
  const M = ctx.table('loyalty.Membership');
@@ -111,12 +111,22 @@ export const membershipFunctions = {
111
111
  query = query.where(and(...parts));
112
112
  const size = Math.min(1000, Math.max(1, n(args.limit ?? 100)));
113
113
  const skip = Math.max(0, n(args.offset ?? 0));
114
+ const memberships = await ctx.db.all(skip ? query.limit(size).offset(skip) : query.limit(size));
115
+ const partnerIds = [...new Set(memberships.map((membership) => String(membership.partnerId)))];
116
+ const P = ctx.table('partner.Partner');
117
+ const partners = new Map((partnerIds.length ? await ctx.db.all(from(P).where(inArray(P.id, partnerIds))) : []).map((partner) => [String(partner.id), partner]));
114
118
  const tiers = new Map((await ctx.db.select('loyalty.Tier')).map((tier) => [String(tier.id), tier]));
115
- return (await ctx.db.all(skip ? query.limit(size).offset(skip) : query.limit(size))).map((membership) => ({
116
- ...membership,
117
- tierCode: membership.tierId ? tiers.get(String(membership.tierId))?.code : null,
118
- tierName: membership.tierId ? tiers.get(String(membership.tierId))?.name : null,
119
- }));
119
+ return memberships.map((membership) => {
120
+ const partner = partners.get(String(membership.partnerId));
121
+ return {
122
+ ...membership,
123
+ tierCode: membership.tierId ? tiers.get(String(membership.tierId))?.code : null,
124
+ tierName: membership.tierId ? tiers.get(String(membership.tierId))?.name : null,
125
+ partnerName: partner?.name ?? membership.partnerId,
126
+ partnerPhone: partner?.phone ?? null,
127
+ partnerActive: partner?.active ?? false,
128
+ };
129
+ });
120
130
  },
121
131
  }),
122
132
  'membership.refresh': defineFn({
@@ -1 +1 @@
1
- {"version":3,"file":"membership-functions.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/loyalty/membership-functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"membership-functions.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/loyalty/membership-functions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/loyalty/stats.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAkB,MAAM,EAAS,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAsC3E,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAwLjD,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA"}
1
+ {"version":3,"file":"stats.d.ts","sourceRoot":"","sources":["../../../../../../packages/ketsuite/src/modules/loyalty/stats.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAkB,MAAM,EAAS,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAsC3E,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA4LjD,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA"}
@@ -121,13 +121,13 @@ export const statsFunctions = {
121
121
  * showing next to the total rather than buried in it.
122
122
  */
123
123
  'membership.stats': defineFn({
124
- input: { tierId: 'id?' },
124
+ input: { tierId: 'id?', state: 'text?' },
125
125
  output: { total: 'int', active: 'int', dormant: 'int', points: 'decimal', spend: 'decimal' },
126
126
  effects: ['read:loyalty.Membership'],
127
127
  agent: true,
128
128
  handler: async (ctx, args) => {
129
129
  const M = ctx.table('loyalty.Membership');
130
- const scope = args.tierId ? eq(M.tierId, args.tierId) : null;
130
+ const scope = all(args.tierId ? eq(M.tierId, args.tierId) : null, args.state === 'active' ? gt(M.rollingSpend, 0) : null, args.state === 'dormant' ? lte(M.rollingSpend, 0) : null);
131
131
  return {
132
132
  total: await ctx.db.count(where(from(M), scope)),
133
133
  active: await ctx.db.count(where(from(M), all(scope)).where(gt(M.rollingSpend, 0))),
@@ -1 +1 @@
1
- {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/loyalty/stats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stats.js","sourceRoot":"","sources":["../../../../../../../packages/ketsuite/src/modules/loyalty/stats.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { PAGE_SIZE, pageOf, pager, searchOf, withParam } from '../backend/paging
6
6
  import { LEDGER_OPERATIONS, PROGRAM_TYPES } from '../loyalty/types.js';
7
7
  import { tierFormSchema } from '../loyalty/admin-functions.js';
8
8
  import { messages } from './messages.js';
9
- import { dashboardScreen, ledgerScreen, tiersScreen, orderLoyaltyScreen, portalScreen, programsScreen, walletDetailScreen, walletsScreen, } from './screens/index.js';
9
+ import { dashboardScreen, ledgerScreen, membershipsScreen, tiersScreen, orderLoyaltyScreen, portalScreen, programsScreen, walletDetailScreen, walletsScreen, } from './screens/index.js';
10
10
  import { adminPage, choices, inLocale, optional } from '../backend/screen.js';
11
11
  /**
12
12
  * One filter dimension, as the chrome's dropdown wants it.
@@ -104,18 +104,25 @@ const routes = {
104
104
  if (req.method !== 'GET')
105
105
  return text('GET', { status: 405 });
106
106
  const [programs, wallets, memberships, ledger] = await Promise.all([
107
- ctx.call('loyalty.program.list', {}, url, req),
108
- ctx.call('loyalty.wallet.list', {}, url, req),
109
- ctx.call('loyalty.membership.list', { limit: 1000 }, url, req),
110
- ctx.call('loyalty.ledger.list', { limit: 1000 }, url, req),
111
- ]);
107
+ ['loyalty.program.list', 'loyalty.program.stats', 'total'],
108
+ ['loyalty.wallet.list', 'loyalty.wallet.stats', 'total'],
109
+ ['loyalty.membership.list', 'loyalty.membership.stats', 'total'],
110
+ ['loyalty.ledger.list', 'loyalty.ledger.stats', 'entries'],
111
+ ].map(async ([listFunction, statsFunction, field]) => {
112
+ if (!(await ctx.allows(listFunction, url, req)))
113
+ return undefined;
114
+ if (!(await ctx.allows(statsFunction, url, req)))
115
+ return null;
116
+ const result = (await ctx.call(statsFunction, {}, url, req));
117
+ return Number(result[field] ?? 0);
118
+ }));
112
119
  return adminPage(ctx, url, req, {
113
120
  title: 'loyalty_backend.dashboard.title',
114
121
  body: (_, frame) => dashboardScreen(_, frame, {
115
- programs: programs.length,
116
- wallets: wallets.length,
117
- members: memberships.length,
118
- ledger: ledger.length,
122
+ ...(programs === undefined ? {} : { programs }),
123
+ ...(wallets === undefined ? {} : { wallets }),
124
+ ...(memberships === undefined ? {} : { members: memberships }),
125
+ ...(ledger === undefined ? {} : { ledger }),
119
126
  }),
120
127
  });
121
128
  },
@@ -453,10 +460,42 @@ const routes = {
453
460
  })), totals),
454
461
  });
455
462
  },
456
- '/admin/loyalty/memberships': (_ctx) => async (url, req) => {
463
+ '/admin/loyalty/memberships': (ctx) => async (url, req) => {
457
464
  if (req.method !== 'GET')
458
465
  return text('GET', { status: 405 });
459
- return seeOther(inLocale(url, '/admin/loyalty/tiers'));
466
+ const page = pageOf(url);
467
+ const tierId = url.searchParams.get('tier') ?? undefined;
468
+ const state = url.searchParams.get('state') ?? undefined;
469
+ const filters = {
470
+ ...(tierId ? { tierId } : {}),
471
+ ...(state ? { state } : {}),
472
+ };
473
+ const [rows, totals, tiers] = await Promise.all([
474
+ ctx.call('loyalty.membership.list', { ...filters, limit: PAGE_SIZE, offset: (page - 1) * PAGE_SIZE }, url, req),
475
+ ctx.call('loyalty.membership.stats', filters, url, req),
476
+ ctx.call('loyalty.tier.list', { includeArchived: true }, url, req),
477
+ ]);
478
+ const tierNames = new Map(tiers.map((tier) => [String(tier.id), String(tier.name)]));
479
+ return adminPage(ctx, url, req, {
480
+ title: 'loyalty_backend.members.title',
481
+ body: (_, frame) => membershipsScreen(_, {
482
+ ...frame,
483
+ chrome: {
484
+ section: _('loyalty_backend.menu.app'),
485
+ tailMenus: [
486
+ filterMenu(url, 'state', _('loyalty_backend.field.activity'), 'state', state, [
487
+ { value: 'active', label: _('loyalty_backend.state.active') },
488
+ { value: 'dormant', label: _('loyalty_backend.state.dormant') },
489
+ ]),
490
+ filterMenu(url, 'tier', _('loyalty_backend.field.tier'), 'tier', tierId, tiers.map((tier) => ({ value: String(tier.id), label: String(tier.name) }))),
491
+ ],
492
+ pager: pager(url, page, rows.length, Number(totals.total ?? 0)),
493
+ },
494
+ }, rows.map((row) => ({
495
+ ...row,
496
+ tierName: row.tierName ?? tierNames.get(String(row.tierId)),
497
+ })), totals),
498
+ });
460
499
  },
461
500
  '/admin/loyalty/tiers': (ctx) => async (url, req) => {
462
501
  if (!['GET', 'POST'].includes(req.method ?? ''))
@@ -697,8 +736,15 @@ export default defineModule({
697
736
  'loyalty.memberships': {
698
737
  parent: 'loyalty',
699
738
  label: 'menu.memberships',
700
- path: '/admin/loyalty/tiers',
739
+ path: '/admin/loyalty/memberships',
701
740
  sequence: 30,
741
+ needs: 'loyalty.membership.list',
742
+ },
743
+ 'loyalty.tiers': {
744
+ parent: 'loyalty',
745
+ label: 'menu.tiers',
746
+ path: '/admin/loyalty/tiers',
747
+ sequence: 31,
702
748
  needs: 'loyalty.tier.list',
703
749
  },
704
750
  'loyalty.ledger': {