meadow-endpoints 4.0.21 → 4.0.23

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 (53) hide show
  1. package/README.md +8 -15
  2. package/diagrams/how-it-works.excalidraw +1462 -0
  3. package/diagrams/how-it-works.mmd +9 -0
  4. package/diagrams/how-it-works.svg +2 -0
  5. package/dist/meadow-endpoints.js +591 -227
  6. package/dist/meadow-endpoints.js.map +1 -1
  7. package/dist/meadow-endpoints.min.js +22 -17
  8. package/dist/meadow-endpoints.min.js.map +1 -1
  9. package/docs/README.md +9 -25
  10. package/docs/_brand.json +18 -0
  11. package/docs/_cover.md +9 -0
  12. package/docs/_sidebar.md +1 -0
  13. package/docs/_version.json +3 -3
  14. package/docs/architecture.md +119 -0
  15. package/docs/crud/README.md +6 -6
  16. package/docs/diagrams/behavior-injection-hook-points.excalidraw +677 -0
  17. package/docs/diagrams/behavior-injection-hook-points.mmd +9 -0
  18. package/docs/diagrams/behavior-injection-hook-points.svg +2 -0
  19. package/docs/diagrams/how-it-works.excalidraw +2777 -0
  20. package/docs/diagrams/how-it-works.mmd +16 -0
  21. package/docs/diagrams/how-it-works.svg +2 -0
  22. package/docs/diagrams/how-routes-are-generated.excalidraw +1237 -0
  23. package/docs/diagrams/how-routes-are-generated.mmd +13 -0
  24. package/docs/diagrams/how-routes-are-generated.svg +2 -0
  25. package/docs/diagrams/request-lifecycle.excalidraw +1897 -0
  26. package/docs/diagrams/request-lifecycle.mmd +22 -0
  27. package/docs/diagrams/request-lifecycle.svg +2 -0
  28. package/docs/diagrams/where-it-sits-in-the-stack.excalidraw +2068 -0
  29. package/docs/diagrams/where-it-sits-in-the-stack.mmd +19 -0
  30. package/docs/diagrams/where-it-sits-in-the-stack.svg +2 -0
  31. package/docs/index.html +6 -7
  32. package/docs/quickstart.md +151 -0
  33. package/docs/retold-catalog.json +155 -186
  34. package/docs/retold-keyword-index.json +6593 -2920
  35. package/package.json +8 -8
  36. package/source/controller/Meadow-Endpoints-Controller-Base.js +40 -0
  37. package/source/endpoints/count/Meadow-Endpoint-Count.js +1 -0
  38. package/source/endpoints/count/Meadow-Endpoint-CountBy.js +1 -0
  39. package/source/endpoints/create/Meadow-Operation-Create.js +1 -0
  40. package/source/endpoints/delete/Meadow-Endpoint-Delete.js +1 -0
  41. package/source/endpoints/delete/Meadow-Endpoint-Undelete.js +1 -0
  42. package/source/endpoints/read/Meadow-Endpoint-Read.js +1 -0
  43. package/source/endpoints/read/Meadow-Endpoint-ReadDistinctList.js +1 -0
  44. package/source/endpoints/read/Meadow-Endpoint-ReadLiteList.js +1 -0
  45. package/source/endpoints/read/Meadow-Endpoint-ReadMax.js +1 -0
  46. package/source/endpoints/read/Meadow-Endpoint-ReadSelectList.js +1 -0
  47. package/source/endpoints/read/Meadow-Endpoint-Reads.js +1 -0
  48. package/source/endpoints/read/Meadow-Endpoint-ReadsBy.js +1 -0
  49. package/source/endpoints/update/Meadow-Operation-Update.js +2 -0
  50. package/source/endpoints/upsert/Meadow-Operation-Upsert.js +1 -0
  51. package/test/MeadowEndpoints_SessionOverride_tests.js +75 -0
  52. package/dist/indoctrinate_content_staging/Indoctrinate-Catalog-AppData.json +0 -4769
  53. package/docs/css/docuserve.css +0 -327
@@ -0,0 +1,677 @@
1
+ {
2
+ "type": "excalidraw",
3
+ "version": 2,
4
+ "source": "pict-section-excalidraw/notebook-generator",
5
+ "elements": [
6
+ {
7
+ "id": "cluster-Phases",
8
+ "type": "rectangle",
9
+ "x": 2,
10
+ "y": -19,
11
+ "width": 1263,
12
+ "height": 217,
13
+ "angle": 0,
14
+ "strokeColor": "#8A7F72",
15
+ "backgroundColor": "transparent",
16
+ "fillStyle": "solid",
17
+ "strokeWidth": 1,
18
+ "strokeStyle": "dashed",
19
+ "roughness": 1,
20
+ "opacity": 100,
21
+ "groupIds": [],
22
+ "frameId": null,
23
+ "roundness": {
24
+ "type": 3
25
+ },
26
+ "seed": 409,
27
+ "version": 1,
28
+ "versionNonce": 409,
29
+ "isDeleted": false,
30
+ "boundElements": [],
31
+ "updated": 1,
32
+ "link": null,
33
+ "locked": false,
34
+ "index": null
35
+ },
36
+ {
37
+ "id": "cluster-label-Phases",
38
+ "type": "text",
39
+ "x": 2,
40
+ "y": -14,
41
+ "width": 1263,
42
+ "height": 21,
43
+ "angle": 0,
44
+ "strokeColor": "#8A7F72",
45
+ "backgroundColor": "transparent",
46
+ "fillStyle": "solid",
47
+ "strokeWidth": 1,
48
+ "strokeStyle": "solid",
49
+ "roughness": 1,
50
+ "opacity": 100,
51
+ "groupIds": [],
52
+ "frameId": null,
53
+ "roundness": null,
54
+ "seed": 409,
55
+ "version": 1,
56
+ "versionNonce": 409,
57
+ "isDeleted": false,
58
+ "boundElements": null,
59
+ "updated": 1,
60
+ "link": null,
61
+ "locked": false,
62
+ "text": "Hook phases per operation",
63
+ "fontSize": 15,
64
+ "fontFamily": 5,
65
+ "textAlign": "center",
66
+ "verticalAlign": "top",
67
+ "containerId": null,
68
+ "originalText": "Hook phases per operation",
69
+ "autoResize": true,
70
+ "lineHeight": 1.25,
71
+ "index": null
72
+ },
73
+ {
74
+ "id": "shape-Pre-000000m0",
75
+ "type": "rectangle",
76
+ "x": 61,
77
+ "y": 61,
78
+ "width": 307,
79
+ "height": 78,
80
+ "angle": 0,
81
+ "strokeColor": "#1B1F23",
82
+ "backgroundColor": "transparent",
83
+ "fillStyle": "solid",
84
+ "strokeWidth": 2,
85
+ "strokeStyle": "solid",
86
+ "roughness": 1,
87
+ "opacity": 100,
88
+ "groupIds": [],
89
+ "frameId": null,
90
+ "roundness": {
91
+ "type": 3
92
+ },
93
+ "seed": 792,
94
+ "version": 1,
95
+ "versionNonce": 792,
96
+ "isDeleted": false,
97
+ "boundElements": [
98
+ {
99
+ "id": "arrow-Pre-Query-00000074",
100
+ "type": "arrow"
101
+ }
102
+ ],
103
+ "updated": 1,
104
+ "link": null,
105
+ "locked": false,
106
+ "index": null
107
+ },
108
+ {
109
+ "id": "label-Pre-000000d5",
110
+ "type": "text",
111
+ "x": 61,
112
+ "y": 102.5,
113
+ "width": 307,
114
+ "height": 20,
115
+ "angle": 0,
116
+ "strokeColor": "#1B1F23",
117
+ "backgroundColor": "transparent",
118
+ "fillStyle": "solid",
119
+ "strokeWidth": 1,
120
+ "strokeStyle": "solid",
121
+ "roughness": 1,
122
+ "opacity": 100,
123
+ "groupIds": [],
124
+ "frameId": null,
125
+ "roundness": null,
126
+ "seed": 473,
127
+ "version": 1,
128
+ "versionNonce": 473,
129
+ "isDeleted": false,
130
+ "boundElements": null,
131
+ "updated": 1,
132
+ "link": null,
133
+ "locked": false,
134
+ "text": "before the query is built",
135
+ "fontSize": 16,
136
+ "fontFamily": 5,
137
+ "textAlign": "center",
138
+ "verticalAlign": "top",
139
+ "baseline": 15,
140
+ "containerId": null,
141
+ "originalText": "before the query is built",
142
+ "autoResize": true,
143
+ "lineHeight": 1.25,
144
+ "index": null
145
+ },
146
+ {
147
+ "id": "shape-Query-0000003k",
148
+ "type": "rectangle",
149
+ "x": 458,
150
+ "y": 49,
151
+ "width": 307,
152
+ "height": 103,
153
+ "angle": 0,
154
+ "strokeColor": "#1B1F23",
155
+ "backgroundColor": "transparent",
156
+ "fillStyle": "solid",
157
+ "strokeWidth": 2,
158
+ "strokeStyle": "solid",
159
+ "roughness": 1,
160
+ "opacity": 100,
161
+ "groupIds": [],
162
+ "frameId": null,
163
+ "roundness": {
164
+ "type": 3
165
+ },
166
+ "seed": 128,
167
+ "version": 1,
168
+ "versionNonce": 128,
169
+ "isDeleted": false,
170
+ "boundElements": [
171
+ {
172
+ "id": "arrow-Pre-Query-00000074",
173
+ "type": "arrow"
174
+ },
175
+ {
176
+ "id": "arrow-Query-Post-0000005k",
177
+ "type": "arrow"
178
+ }
179
+ ],
180
+ "updated": 1,
181
+ "link": null,
182
+ "locked": false,
183
+ "index": null
184
+ },
185
+ {
186
+ "id": "label-Query-0000008h",
187
+ "type": "text",
188
+ "x": 458,
189
+ "y": 93,
190
+ "width": 307,
191
+ "height": 40,
192
+ "angle": 0,
193
+ "strokeColor": "#1B1F23",
194
+ "backgroundColor": "transparent",
195
+ "fillStyle": "solid",
196
+ "strokeWidth": 1,
197
+ "strokeStyle": "solid",
198
+ "roughness": 1,
199
+ "opacity": 100,
200
+ "groupIds": [],
201
+ "frameId": null,
202
+ "roundness": null,
203
+ "seed": 305,
204
+ "version": 1,
205
+ "versionNonce": 305,
206
+ "isDeleted": false,
207
+ "boundElements": null,
208
+ "updated": 1,
209
+ "link": null,
210
+ "locked": false,
211
+ "text": "after the query is built,\nbefore execution",
212
+ "fontSize": 16,
213
+ "fontFamily": 5,
214
+ "textAlign": "center",
215
+ "verticalAlign": "top",
216
+ "baseline": 15,
217
+ "containerId": null,
218
+ "originalText": "after the query is built,\nbefore execution",
219
+ "autoResize": true,
220
+ "lineHeight": 1.25,
221
+ "index": null
222
+ },
223
+ {
224
+ "id": "shape-Post-000000nk",
225
+ "type": "rectangle",
226
+ "x": 855,
227
+ "y": 61,
228
+ "width": 351,
229
+ "height": 78,
230
+ "angle": 0,
231
+ "strokeColor": "#1B1F23",
232
+ "backgroundColor": "transparent",
233
+ "fillStyle": "solid",
234
+ "strokeWidth": 2,
235
+ "strokeStyle": "solid",
236
+ "roughness": 1,
237
+ "opacity": 100,
238
+ "groupIds": [],
239
+ "frameId": null,
240
+ "roundness": {
241
+ "type": 3
242
+ },
243
+ "seed": 848,
244
+ "version": 1,
245
+ "versionNonce": 848,
246
+ "isDeleted": false,
247
+ "boundElements": [
248
+ {
249
+ "id": "arrow-Query-Post-0000005k",
250
+ "type": "arrow"
251
+ }
252
+ ],
253
+ "updated": 1,
254
+ "link": null,
255
+ "locked": false,
256
+ "index": null
257
+ },
258
+ {
259
+ "id": "label-Post-000000ak",
260
+ "type": "text",
261
+ "x": 855,
262
+ "y": 102.5,
263
+ "width": 351,
264
+ "height": 20,
265
+ "angle": 0,
266
+ "strokeColor": "#1B1F23",
267
+ "backgroundColor": "transparent",
268
+ "fillStyle": "solid",
269
+ "strokeWidth": 1,
270
+ "strokeStyle": "solid",
271
+ "roughness": 1,
272
+ "opacity": 100,
273
+ "groupIds": [],
274
+ "frameId": null,
275
+ "roundness": null,
276
+ "seed": 380,
277
+ "version": 1,
278
+ "versionNonce": 380,
279
+ "isDeleted": false,
280
+ "boundElements": null,
281
+ "updated": 1,
282
+ "link": null,
283
+ "locked": false,
284
+ "text": "after the operation completes",
285
+ "fontSize": 16,
286
+ "fontFamily": 5,
287
+ "textAlign": "center",
288
+ "verticalAlign": "top",
289
+ "baseline": 15,
290
+ "containerId": null,
291
+ "originalText": "after the operation completes",
292
+ "autoResize": true,
293
+ "lineHeight": 1.25,
294
+ "index": null
295
+ },
296
+ {
297
+ "id": "arrow-Pre-Query-00000074",
298
+ "type": "arrow",
299
+ "x": 368,
300
+ "y": 100,
301
+ "width": 90,
302
+ "height": 0.5,
303
+ "angle": 0,
304
+ "strokeColor": "#2E7D74",
305
+ "backgroundColor": "transparent",
306
+ "fillStyle": "solid",
307
+ "strokeWidth": 2,
308
+ "strokeStyle": "solid",
309
+ "roughness": 1,
310
+ "opacity": 100,
311
+ "groupIds": [],
312
+ "frameId": null,
313
+ "roundness": null,
314
+ "seed": 256,
315
+ "version": 1,
316
+ "versionNonce": 256,
317
+ "isDeleted": false,
318
+ "boundElements": [],
319
+ "updated": 1,
320
+ "link": null,
321
+ "locked": false,
322
+ "points": [
323
+ [
324
+ 0,
325
+ 0
326
+ ],
327
+ [
328
+ 16,
329
+ 0
330
+ ],
331
+ [
332
+ 19.875171467764062,
333
+ 0.004458161865557031
334
+ ],
335
+ [
336
+ 23.519890260630916,
337
+ 0.017146776406022468
338
+ ],
339
+ [
340
+ 26.96296296296299,
341
+ 0.0370370370370523
342
+ ],
343
+ [
344
+ 30.233196159122087,
345
+ 0.06310013717421725
346
+ ],
347
+ [
348
+ 33.35939643347058,
349
+ 0.09430727023320173
350
+ ],
351
+ [
352
+ 36.37037037037038,
353
+ 0.12962962962964752
354
+ ],
355
+ [
356
+ 39.294924554183865,
357
+ 0.16803840877915377
358
+ ],
359
+ [
360
+ 42.161865569273004,
361
+ 0.20850480109740488
362
+ ],
363
+ [
364
+ 45,
365
+ 0.25
366
+ ],
367
+ [
368
+ 47.838134430726996,
369
+ 0.2914951989025951
370
+ ],
371
+ [
372
+ 50.70507544581619,
373
+ 0.33196159122084623
374
+ ],
375
+ [
376
+ 53.629629629629676,
377
+ 0.3703703703703667
378
+ ],
379
+ [
380
+ 56.640603566529535,
381
+ 0.40569272976679827
382
+ ],
383
+ [
384
+ 59.76680384087791,
385
+ 0.43689986282578275
386
+ ],
387
+ [
388
+ 63.03703703703707,
389
+ 0.4629629629629619
390
+ ],
391
+ [
392
+ 66.48010973936903,
393
+ 0.4828532235939633
394
+ ],
395
+ [
396
+ 70.12482853223594,
397
+ 0.49554183813442876
398
+ ],
399
+ [
400
+ 74,
401
+ 0.5
402
+ ],
403
+ [
404
+ 90,
405
+ 0.5
406
+ ]
407
+ ],
408
+ "lastCommittedPoint": null,
409
+ "startBinding": {
410
+ "elementId": "shape-Pre-000000m0",
411
+ "focus": 0,
412
+ "gap": 8
413
+ },
414
+ "endBinding": {
415
+ "elementId": "shape-Query-0000003k",
416
+ "focus": 0,
417
+ "gap": 8
418
+ },
419
+ "startArrowhead": null,
420
+ "endArrowhead": "arrow",
421
+ "elbowed": false,
422
+ "index": null
423
+ },
424
+ {
425
+ "id": "arrow-Query-Post-0000005k",
426
+ "type": "arrow",
427
+ "x": 765,
428
+ "y": 100.5,
429
+ "width": 90,
430
+ "height": 0.5,
431
+ "angle": 0,
432
+ "strokeColor": "#2E7D74",
433
+ "backgroundColor": "transparent",
434
+ "fillStyle": "solid",
435
+ "strokeWidth": 2,
436
+ "strokeStyle": "solid",
437
+ "roughness": 1,
438
+ "opacity": 100,
439
+ "groupIds": [],
440
+ "frameId": null,
441
+ "roundness": null,
442
+ "seed": 200,
443
+ "version": 1,
444
+ "versionNonce": 200,
445
+ "isDeleted": false,
446
+ "boundElements": [],
447
+ "updated": 1,
448
+ "link": null,
449
+ "locked": false,
450
+ "points": [
451
+ [
452
+ 0,
453
+ 0
454
+ ],
455
+ [
456
+ 16,
457
+ 0
458
+ ],
459
+ [
460
+ 19.875171467764062,
461
+ -0.004458161865585453
462
+ ],
463
+ [
464
+ 23.519890260630973,
465
+ -0.01714677640605089
466
+ ],
467
+ [
468
+ 26.962962962962933,
469
+ -0.03703703703702388
470
+ ],
471
+ [
472
+ 30.233196159122144,
473
+ -0.06310013717421725
474
+ ],
475
+ [
476
+ 33.35939643347069,
477
+ -0.09430727023318752
478
+ ],
479
+ [
480
+ 36.37037037037044,
481
+ -0.1296296296296049
482
+ ],
483
+ [
484
+ 39.29492455418392,
485
+ -0.16803840877913956
486
+ ],
487
+ [
488
+ 42.161865569273004,
489
+ -0.20850480109739067
490
+ ],
491
+ [
492
+ 45,
493
+ -0.25
494
+ ],
495
+ [
496
+ 47.838134430726996,
497
+ -0.29149519890260933
498
+ ],
499
+ [
500
+ 50.70507544581608,
501
+ -0.33196159122084623
502
+ ],
503
+ [
504
+ 53.629629629629676,
505
+ -0.3703703703703809
506
+ ],
507
+ [
508
+ 56.640603566529535,
509
+ -0.40569272976679827
510
+ ],
511
+ [
512
+ 59.76680384087797,
513
+ -0.43689986282578275
514
+ ],
515
+ [
516
+ 63.03703703703707,
517
+ -0.4629629629629619
518
+ ],
519
+ [
520
+ 66.48010973936903,
521
+ -0.4828532235939633
522
+ ],
523
+ [
524
+ 70.12482853223594,
525
+ -0.49554183813442876
526
+ ],
527
+ [
528
+ 74,
529
+ -0.5
530
+ ],
531
+ [
532
+ 90,
533
+ -0.5
534
+ ]
535
+ ],
536
+ "lastCommittedPoint": null,
537
+ "startBinding": {
538
+ "elementId": "shape-Query-0000003k",
539
+ "focus": 0,
540
+ "gap": 8
541
+ },
542
+ "endBinding": {
543
+ "elementId": "shape-Post-000000nk",
544
+ "focus": 0,
545
+ "gap": 8
546
+ },
547
+ "startArrowhead": null,
548
+ "endArrowhead": "arrow",
549
+ "elbowed": false,
550
+ "index": null
551
+ },
552
+ {
553
+ "id": "label-Pre-000000d5_title",
554
+ "type": "text",
555
+ "x": 61,
556
+ "y": 77.5,
557
+ "width": 307,
558
+ "height": 25,
559
+ "angle": 0,
560
+ "strokeColor": "#1B1F23",
561
+ "backgroundColor": "transparent",
562
+ "fillStyle": "solid",
563
+ "strokeWidth": 1,
564
+ "strokeStyle": "solid",
565
+ "roughness": 1,
566
+ "opacity": 100,
567
+ "groupIds": [],
568
+ "frameId": null,
569
+ "roundness": null,
570
+ "seed": 736,
571
+ "version": 1,
572
+ "versionNonce": 473,
573
+ "isDeleted": false,
574
+ "boundElements": null,
575
+ "updated": 1,
576
+ "link": null,
577
+ "locked": false,
578
+ "text": "{Verb}-PreOperation",
579
+ "fontSize": 20,
580
+ "fontFamily": 5,
581
+ "textAlign": "center",
582
+ "verticalAlign": "top",
583
+ "baseline": 15,
584
+ "containerId": null,
585
+ "originalText": "{Verb}-PreOperation",
586
+ "autoResize": true,
587
+ "lineHeight": 1.25,
588
+ "index": null
589
+ },
590
+ {
591
+ "id": "label-Query-0000008h_title",
592
+ "type": "text",
593
+ "x": 458,
594
+ "y": 68,
595
+ "width": 307,
596
+ "height": 25,
597
+ "angle": 0,
598
+ "strokeColor": "#1B1F23",
599
+ "backgroundColor": "transparent",
600
+ "fillStyle": "solid",
601
+ "strokeWidth": 1,
602
+ "strokeStyle": "solid",
603
+ "roughness": 1,
604
+ "opacity": 100,
605
+ "groupIds": [],
606
+ "frameId": null,
607
+ "roundness": null,
608
+ "seed": 312,
609
+ "version": 1,
610
+ "versionNonce": 305,
611
+ "isDeleted": false,
612
+ "boundElements": null,
613
+ "updated": 1,
614
+ "link": null,
615
+ "locked": false,
616
+ "text": "{Verb}-QueryConfiguration",
617
+ "fontSize": 20,
618
+ "fontFamily": 5,
619
+ "textAlign": "center",
620
+ "verticalAlign": "top",
621
+ "baseline": 15,
622
+ "containerId": null,
623
+ "originalText": "{Verb}-QueryConfiguration",
624
+ "autoResize": true,
625
+ "lineHeight": 1.25,
626
+ "index": null
627
+ },
628
+ {
629
+ "id": "label-Post-000000ak_title",
630
+ "type": "text",
631
+ "x": 855,
632
+ "y": 77.5,
633
+ "width": 351,
634
+ "height": 25,
635
+ "angle": 0,
636
+ "strokeColor": "#1B1F23",
637
+ "backgroundColor": "transparent",
638
+ "fillStyle": "solid",
639
+ "strokeWidth": 1,
640
+ "strokeStyle": "solid",
641
+ "roughness": 1,
642
+ "opacity": 100,
643
+ "groupIds": [],
644
+ "frameId": null,
645
+ "roundness": null,
646
+ "seed": 840,
647
+ "version": 1,
648
+ "versionNonce": 380,
649
+ "isDeleted": false,
650
+ "boundElements": null,
651
+ "updated": 1,
652
+ "link": null,
653
+ "locked": false,
654
+ "text": "{Verb}-PostOperation",
655
+ "fontSize": 20,
656
+ "fontFamily": 5,
657
+ "textAlign": "center",
658
+ "verticalAlign": "top",
659
+ "baseline": 15,
660
+ "containerId": null,
661
+ "originalText": "{Verb}-PostOperation",
662
+ "autoResize": true,
663
+ "lineHeight": 1.25,
664
+ "index": null
665
+ }
666
+ ],
667
+ "appState": {
668
+ "viewBackgroundColor": "#FBF7EE",
669
+ "theme": "light",
670
+ "gridSize": null,
671
+ "exportBackground": true,
672
+ "exportEmbedScene": true,
673
+ "exportScale": 1,
674
+ "currentItemFontFamily": 5
675
+ },
676
+ "files": {}
677
+ }
@@ -0,0 +1,9 @@
1
+ flowchart LR
2
+ subgraph Phases["Hook phases per operation"]
3
+ direction TB
4
+ Pre["{Verb}-PreOperation<br/>before the query is built"]
5
+ Query["{Verb}-QueryConfiguration<br/>after the query is built,<br/>before execution"]
6
+ Post["{Verb}-PostOperation<br/>after the operation completes"]
7
+ end
8
+
9
+ Pre --> Query --> Post