shinkansen-transmission 2.2.234 → 2.3.0

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 (38) hide show
  1. package/babel.config.cjs +1 -0
  2. package/eslint.config.mjs +28 -30
  3. package/index.d.mts +321 -16
  4. package/package.json +8 -8
  5. package/src/index.cjs +2 -0
  6. package/src/index.d.mts +10 -9
  7. package/src/transmission/common/index.d.mts +152 -87
  8. package/src/transmission/common/index.mjs +627 -193
  9. package/src/transmission/from-document-to-hash/array/index.mjs +20 -4
  10. package/src/transmission/from-document-to-hash/boolean/index.mjs +25 -9
  11. package/src/transmission/from-document-to-hash/index.d.mts +8 -19
  12. package/src/transmission/from-document-to-hash/index.mjs +102 -16
  13. package/src/transmission/from-document-to-hash/null/index.mjs +25 -9
  14. package/src/transmission/from-document-to-hash/number/index.mjs +25 -9
  15. package/src/transmission/from-document-to-hash/object/index.mjs +22 -6
  16. package/src/transmission/from-document-to-hash/string/index.mjs +25 -9
  17. package/src/transmission/from-hash-to-document/array/index.mjs +22 -5
  18. package/src/transmission/from-hash-to-document/boolean/index.mjs +21 -4
  19. package/src/transmission/from-hash-to-document/index.d.mts +24 -26
  20. package/src/transmission/from-hash-to-document/index.mjs +264 -142
  21. package/src/transmission/from-hash-to-document/null/index.mjs +21 -4
  22. package/src/transmission/from-hash-to-document/number/index.mjs +21 -4
  23. package/src/transmission/from-hash-to-document/object/index.mjs +22 -5
  24. package/src/transmission/from-hash-to-document/string/index.mjs +26 -4
  25. package/src/transmission/index.d.mts +4 -10
  26. package/src/transmission/to-zashiki/index.d.mts +5 -13
  27. package/src/transmission/to-zashiki/params/index.mjs +430 -0
  28. package/src/transmission/to-zashiki/render/array/index.mjs +737 -0
  29. package/src/transmission/to-zashiki/render/boolean/index.mjs +794 -0
  30. package/src/transmission/to-zashiki/render/index.mjs +157 -0
  31. package/src/transmission/to-zashiki/render/null/index.mjs +796 -0
  32. package/src/transmission/to-zashiki/render/number/index.mjs +940 -0
  33. package/src/transmission/to-zashiki/render/object/index.mjs +653 -0
  34. package/src/transmission/to-zashiki/render/string/index.mjs +910 -0
  35. package/src/transmission/to-zashiki/render-params/root-schema/index.mjs +212 -0
  36. package/src/transmission/to-zashiki/render-params/schema/index.mjs +731 -0
  37. package/src/transmission/to-zashiki/transform-root-schema.mjs +485 -421
  38. package/src/transmission/to-zashiki/transform-schema.mjs +1988 -4663
@@ -0,0 +1,796 @@
1
+ /**
2
+ * @typedef {TransmissionTypes.ObjectLiteralType} ObjectLiteralType
3
+ * @typedef {TransmissionTypes.ObjectType} ObjectType
4
+ *
5
+ * @typedef {TransmissionTypes.EnumType} EnumType
6
+ * @typedef {TransmissionTypes.AnyOfType} AnyOfType
7
+ * @typedef {TransmissionTypes.OneOfType} OneOfType
8
+ * @typedef {TransmissionTypes.FieldType} FieldType
9
+ *
10
+ * @typedef {TransmissionTypes.SchemaType} SchemaType
11
+ * @typedef {TransmissionTypes.ValuesType} ValuesType
12
+ * @typedef {TransmissionTypes.ParamsType} ParamsType
13
+ *
14
+ * @typedef {TransmissionTypes.Zashiki.ZashikiType} ZashikiType
15
+ *
16
+ * @typedef {TransmissionTypes.Zashiki.StringMetaType} ZashikiStringMetaType
17
+ * @typedef {TransmissionTypes.Zashiki.NumberMetaType} ZashikiNumberMetaType
18
+ * @typedef {TransmissionTypes.Zashiki.ArrayMetaType} ZashikiArrayMetaType
19
+ * @typedef {TransmissionTypes.Zashiki.ObjectMetaType} ZashikiObjectMetaType
20
+ * @typedef {TransmissionTypes.Zashiki.BooleanMetaType} ZashikiBooleanMetaType
21
+ * @typedef {TransmissionTypes.Zashiki.NullMetaType} ZashikiNullMetaType
22
+ *
23
+ * @typedef {TransmissionTypes.Zashiki.StringElementsType} ZashikiStringElementsType
24
+ * @typedef {TransmissionTypes.Zashiki.NumberElementsType} ZashikiNumberElementsType
25
+ * @typedef {TransmissionTypes.Zashiki.ArrayElementsType} ZashikiArrayElementsType
26
+ * @typedef {TransmissionTypes.Zashiki.ObjectElementsType} ZashikiObjectElementsType
27
+ * @typedef {TransmissionTypes.Zashiki.BooleanElementsType} ZashikiBooleanElementsType
28
+ * @typedef {TransmissionTypes.Zashiki.NullElementsType} ZashikiNullElementsType
29
+ */
30
+
31
+ import debug from 'debug'
32
+
33
+ import {
34
+ isArray,
35
+ getTitle,
36
+ getDescription,
37
+ isParentUri,
38
+ getMetaProps,
39
+ getMetaDefaultValue,
40
+ getMetaValue,
41
+ getElementsFieldPropsForEnum,
42
+ getElementsFieldPropsForAnyOf,
43
+ getElementsFieldPropsForOneOf,
44
+ getElementsFieldProps,
45
+ getElementsFieldValue
46
+ } from '#transmission/transmission/common'
47
+
48
+ const log = debug('shinkansen-transmission/to-zashiki/render/null')
49
+
50
+ log('`shinkansen` is awake')
51
+
52
+ /**
53
+ * @param {ParamsType} params
54
+ * @param {string} uri
55
+ * @returns {ZashikiNullMetaType}
56
+ */
57
+ export function renderNullMetaForEnum (params, uri) {
58
+ /**
59
+ * log('renderNullMetaForEnum')
60
+ */
61
+
62
+ /**
63
+ * @type {{ parentUri?: string }}
64
+ */
65
+ const {
66
+ parentUri = '#',
67
+ ...metaProps
68
+ } = getMetaProps(params, uri)
69
+
70
+ return (
71
+ Object.assign(
72
+ {
73
+ uri,
74
+ type: 'null'
75
+ },
76
+ isParentUri(parentUri, uri) ? { parentUri } : {},
77
+ metaProps
78
+ )
79
+ )
80
+ }
81
+
82
+ /**
83
+ * @param {ParamsType} params
84
+ * @param {string} uri
85
+ * @returns {ZashikiNullMetaType}
86
+ */
87
+ export function renderNullMetaForAnyOf (params, uri) {
88
+ /**
89
+ * log('renderNullMetaForAnyOf')
90
+ */
91
+
92
+ /**
93
+ * @type {{ parentUri?: string }}
94
+ */
95
+ const {
96
+ parentUri = '#',
97
+ ...metaProps
98
+ } = getMetaProps(params, uri)
99
+
100
+ return (
101
+ Object.assign(
102
+ {
103
+ uri,
104
+ type: 'null'
105
+ },
106
+ isParentUri(parentUri, uri) ? { parentUri } : {},
107
+ metaProps
108
+ )
109
+ )
110
+ }
111
+
112
+ /**
113
+ * @param {ParamsType} params
114
+ * @param {string} uri
115
+ * @returns {ZashikiNullMetaType}
116
+ */
117
+ export function renderNullMetaForOneOf (params, uri) {
118
+ /**
119
+ * log('renderNullMetaForOneOf')
120
+ */
121
+
122
+ /**
123
+ * @type {{ parentUri?: string }}
124
+ */
125
+ const {
126
+ parentUri = '#',
127
+ ...metaProps
128
+ } = getMetaProps(params, uri)
129
+
130
+ return (
131
+ Object.assign(
132
+ {
133
+ uri,
134
+ type: 'null'
135
+ },
136
+ isParentUri(parentUri, uri) ? { parentUri } : {},
137
+ metaProps
138
+ )
139
+ )
140
+ }
141
+
142
+ /**
143
+ * @param {SchemaType} schema
144
+ * @param {ValuesType} values
145
+ * @param {ParamsType} params
146
+ * @param {string} uri
147
+ * @returns {ZashikiNullMetaType}
148
+ */
149
+ export function getNullMetaForAllOf (schema, values, params, uri) {
150
+ /**
151
+ * log('getNullMetaForAllOf')
152
+ */
153
+
154
+ const metaDefaultValue = getMetaDefaultValue(schema) // , uri)
155
+ const metaValue = getMetaValue(values, uri, schema)
156
+
157
+ /**
158
+ * @type {{ parentUri?: string }}
159
+ */
160
+ const {
161
+ parentUri = '#',
162
+ ...metaProps
163
+ } = getMetaProps(params, uri)
164
+
165
+ return (
166
+ Object.assign(
167
+ {
168
+ uri,
169
+ type: 'null'
170
+ },
171
+ isParentUri(parentUri, uri) ? { parentUri } : {},
172
+ metaDefaultValue,
173
+ metaValue,
174
+ metaProps
175
+ )
176
+ )
177
+ }
178
+
179
+ /**
180
+ * @param {SchemaType} schema
181
+ * @param {ValuesType} values
182
+ * @param {ParamsType} params
183
+ * @param {string} uri
184
+ * @returns {ZashikiNullMetaType}
185
+ */
186
+ export function renderNullMetaForAllOf (schema, values, params, uri) {
187
+ /**
188
+ * log('renderNullMetaForAllOf')
189
+ */
190
+
191
+ /**
192
+ * @type {{ parentUri?: string }}
193
+ */
194
+ const {
195
+ parentUri = '#'
196
+ } = getMetaProps(params, uri)
197
+
198
+ if (isParentUri(parentUri, uri)) {
199
+ const {
200
+ selectedItems
201
+ } = getMetaProps(params, parentUri)
202
+
203
+ return (
204
+ Object.assign(
205
+ getNullMetaForAllOf(schema, values, params, uri),
206
+ isArray(selectedItems) ? { selectedItems } : {}
207
+ )
208
+ )
209
+ }
210
+
211
+ return (
212
+ getNullMetaForAllOf(schema, values, params, uri)
213
+ )
214
+ }
215
+
216
+ /**
217
+ * @param {SchemaType} schema
218
+ * @param {ValuesType} values
219
+ * @param {ParamsType} params
220
+ * @param {ParamsType} params
221
+ * @param {string} uri
222
+ * @returns {ZashikiNullMetaType}
223
+ */
224
+ export function getNullMeta (schema, values, params, uri) {
225
+ /**
226
+ * log('getNullMeta')
227
+ */
228
+
229
+ const metaDefaultValue = getMetaDefaultValue(schema) // , uri)
230
+ const metaValue = getMetaValue(values, uri, schema)
231
+
232
+ /**
233
+ * @type {{ parentUri?: string }}
234
+ */
235
+ const {
236
+ parentUri = '#',
237
+ ...metaProps
238
+ } = getMetaProps(params, uri)
239
+
240
+ return (
241
+ Object.assign(
242
+ {
243
+ uri,
244
+ type: 'null'
245
+ },
246
+ isParentUri(parentUri, uri) ? { parentUri } : {},
247
+ metaDefaultValue,
248
+ metaValue,
249
+ metaProps
250
+ )
251
+ )
252
+ }
253
+
254
+ /**
255
+ * @param {SchemaType} schema
256
+ * @param {ValuesType} values
257
+ * @param {ParamsType} params
258
+ * @param {ParamsType} params
259
+ * @param {string} uri
260
+ * @returns {ZashikiNullMetaType}
261
+ */
262
+ export function renderNullMeta (schema, values, params, uri) {
263
+ /**
264
+ * log('renderNullMeta')
265
+ */
266
+
267
+ /**
268
+ * @type {{ parentUri?: string }}
269
+ */
270
+ const {
271
+ parentUri = '#'
272
+ } = getMetaProps(params, uri)
273
+
274
+ if (isParentUri(parentUri, uri)) {
275
+ const {
276
+ selectedItems
277
+ } = getMetaProps(params, parentUri)
278
+
279
+ return (
280
+ Object.assign(
281
+ getNullMeta(schema, values, params, uri),
282
+ isArray(selectedItems) ? { selectedItems } : {}
283
+ )
284
+ )
285
+ }
286
+
287
+ return (
288
+ getNullMeta(schema, values, params, uri)
289
+ )
290
+ }
291
+
292
+ /**
293
+ * @param {ObjectLiteralType | ObjectType} field
294
+ * @param {ParamsType} params
295
+ * @param {string} uri
296
+ * @returns {EnumType}
297
+ */
298
+ export function renderNullElementsFieldForEnum (field, params, uri) {
299
+ /**
300
+ * log('renderNullElementsFieldForEnum')
301
+ */
302
+
303
+ return (
304
+ Object.assign(
305
+ field,
306
+ getElementsFieldPropsForEnum(params, uri),
307
+ {
308
+ id: uri
309
+ }
310
+ )
311
+ )
312
+ }
313
+
314
+ /**
315
+ * @param {ObjectLiteralType | ObjectType} field
316
+ * @param {ParamsType} params
317
+ * @param {string} uri
318
+ * @returns {AnyOfType}
319
+ */
320
+ export function renderNullElementsFieldForAnyOf (field, params, uri) {
321
+ /**
322
+ * log('renderNullElementsFieldForAnyOf')
323
+ */
324
+
325
+ return (
326
+ Object.assign(
327
+ field,
328
+ getElementsFieldPropsForAnyOf(params, uri),
329
+ {
330
+ id: uri
331
+ }
332
+ )
333
+ )
334
+ }
335
+
336
+ /**
337
+ * @param {ObjectLiteralType | ObjectType} field
338
+ * @param {ParamsType} params
339
+ * @param {string} uri
340
+ * @returns {OneOfType}
341
+ */
342
+ export function renderNullElementsFieldForOneOf (field, params, uri) {
343
+ /**
344
+ * log('renderNullElementsFieldForOneOf')
345
+ */
346
+
347
+ return (
348
+ Object.assign(
349
+ field,
350
+ getElementsFieldPropsForOneOf(params, uri),
351
+ {
352
+ id: uri
353
+ }
354
+ )
355
+ )
356
+ }
357
+
358
+ /**
359
+ * @param {ObjectLiteralType | ObjectType} field
360
+ * @param {ParamsType} params
361
+ * @param {SchemaType} schema
362
+ * @param {ValuesType} values
363
+ * @param {string} uri
364
+ * @returns {ObjectLiteralType | ObjectType}
365
+ */
366
+ export function getNullElementsFieldForAllOf (field, schema, values, params, uri) {
367
+ /**
368
+ * log('getNullElementsFieldForAllOf')
369
+ */
370
+
371
+ const fieldValue = getElementsFieldValue(values, uri, schema)
372
+ const fieldProps = getElementsFieldProps(params, uri)
373
+
374
+ return (
375
+ Object.assign(
376
+ field,
377
+ fieldValue,
378
+ fieldProps
379
+ )
380
+ )
381
+ }
382
+
383
+ /**
384
+ * @param {ObjectLiteralType | ObjectType} field
385
+ * @param {ParamsType} params
386
+ * @param {SchemaType} schema
387
+ * @param {ValuesType} values
388
+ * @param {string} uri
389
+ * @returns {FieldType}
390
+ */
391
+ export function renderNullElementsFieldForAllOf (field, schema, values, params, uri) {
392
+ /**
393
+ * log('renderNullElementsFieldForAllOf')
394
+ */
395
+
396
+ const {
397
+ parentUri = '#'
398
+ } = params
399
+
400
+ if (isParentUri(parentUri, uri)) {
401
+ const {
402
+ selectedItems
403
+ } = getMetaProps(params, parentUri)
404
+
405
+ return (
406
+ Object.assign(
407
+ getNullElementsFieldForAllOf(field, schema, values, params, uri),
408
+ isArray(selectedItems) ? { selectedItems } : {},
409
+ {
410
+ id: uri
411
+ }
412
+ )
413
+ )
414
+ }
415
+
416
+ return (
417
+ Object.assign(
418
+ getNullElementsFieldForAllOf(field, schema, values, params, uri),
419
+ {
420
+ id: uri
421
+ }
422
+ )
423
+ )
424
+ }
425
+
426
+ /**
427
+ * @param {ObjectLiteralType | ObjectType} field
428
+ * @param {ParamsType} params
429
+ * @param {SchemaType} schema
430
+ * @param {ValuesType} values
431
+ * @param {string} uri
432
+ * @returns {ObjectLiteralType | ObjectType}
433
+ */
434
+ export function getNullElementsField (field, schema, values, params, uri) {
435
+ /**
436
+ * log('getNullElementsField')
437
+ */
438
+
439
+ const fieldValue = getElementsFieldValue(values, uri, schema)
440
+ const fieldProps = getElementsFieldProps(params, uri)
441
+
442
+ return (
443
+ Object.assign(
444
+ field,
445
+ fieldValue,
446
+ fieldProps
447
+ )
448
+ )
449
+ }
450
+
451
+ /**
452
+ * @param {ObjectLiteralType | ObjectType} field
453
+ * @param {ParamsType} params
454
+ * @param {SchemaType} schema
455
+ * @param {ValuesType} values
456
+ * @param {string} uri
457
+ * @returns {FieldType}
458
+ */
459
+ export function renderNullElementsField (field, schema, values, params, uri) {
460
+ /**
461
+ * log('renderNullElementsField')
462
+ */
463
+
464
+ const {
465
+ parentUri = '#'
466
+ } = params
467
+
468
+ if (isParentUri(parentUri, uri)) {
469
+ const {
470
+ selectedItems
471
+ } = getMetaProps(params, parentUri)
472
+
473
+ return (
474
+ Object.assign(
475
+ getNullElementsField(field, schema, values, params, uri),
476
+ isArray(selectedItems) ? { selectedItems } : {},
477
+ {
478
+ id: uri
479
+ }
480
+ )
481
+ )
482
+ }
483
+
484
+ return (
485
+ Object.assign(
486
+ getNullElementsField(field, schema, values, params, uri),
487
+ {
488
+ id: uri
489
+ }
490
+ )
491
+ )
492
+ }
493
+
494
+ /**
495
+ * @param {ObjectLiteralType | ObjectType} elements
496
+ * @param {SchemaType} schema
497
+ * @returns {ObjectLiteralType | ObjectType}
498
+ */
499
+ export function getNullElements (elements, schema) {
500
+ /**
501
+ * log('getNullElements')
502
+ */
503
+
504
+ return (
505
+ Object.assign(
506
+ elements,
507
+ getTitle(schema),
508
+ getDescription(schema)
509
+ )
510
+ )
511
+ }
512
+
513
+ /**
514
+ * @param {SchemaType} schema
515
+ * @param {ParamsType} params
516
+ * @param {string} uri
517
+ * @returns {ZashikiNullElementsType}
518
+ */
519
+ export function renderNullElementsForEnum (schema, params, uri) {
520
+ /**
521
+ * log('renderNullElementsForEnum')
522
+ */
523
+
524
+ /**
525
+ * @type {ObjectLiteralType}
526
+ */
527
+ const elements = {}
528
+
529
+ /**
530
+ * @type {ObjectLiteralType}
531
+ */
532
+ const field = {}
533
+
534
+ return (
535
+ Object.assign(
536
+ getNullElements(elements, schema),
537
+ {
538
+ enum: renderNullElementsFieldForEnum(field, params, uri)
539
+ }
540
+ )
541
+ )
542
+ }
543
+
544
+ /**
545
+ * @param {SchemaType} schema
546
+ * @param {ParamsType} params
547
+ * @param {string} uri
548
+ * @returns {ZashikiNullElementsType}
549
+ */
550
+ export function renderNullElementsForOneOf (schema, params, uri) {
551
+ /**
552
+ * log('renderNullElementsForOneOf')
553
+ */
554
+
555
+ /**
556
+ * @type {ObjectLiteralType}
557
+ */
558
+ const elements = {}
559
+
560
+ /**
561
+ * @type {ObjectLiteralType}
562
+ */
563
+ const field = {}
564
+
565
+ return (
566
+ Object.assign(
567
+ getNullElements(elements, schema),
568
+ {
569
+ oneOf: renderNullElementsFieldForOneOf(field, params, uri)
570
+ }
571
+ )
572
+ )
573
+ }
574
+
575
+ /**
576
+ * @param {SchemaType} schema
577
+ * @param {ParamsType} params
578
+ * @param {string} uri
579
+ * @returns {ZashikiNullElementsType}
580
+ */
581
+ export function renderNullElementsForAnyOf (schema, params, uri) {
582
+ /**
583
+ * log('renderNullElementsForAnyOf')
584
+ */
585
+
586
+ /**
587
+ * @type {ObjectLiteralType}
588
+ */
589
+ const elements = {}
590
+
591
+ /**
592
+ * @type {ObjectLiteralType}
593
+ */
594
+ const field = {}
595
+
596
+ return (
597
+ Object.assign(
598
+ getNullElements(elements, schema),
599
+ {
600
+ anyOf: renderNullElementsFieldForAnyOf(field, params, uri)
601
+ }
602
+ )
603
+ )
604
+ }
605
+
606
+ /**
607
+ * @param {SchemaType} schema
608
+ * @param {ValuesType} values
609
+ * @param {ParamsType} params
610
+ * @param {string} uri
611
+ * @returns {ZashikiNullElementsType}
612
+ */
613
+ export function renderNullElementsForAllOf (schema, values, params, uri) {
614
+ /**
615
+ * log('renderNullElementsForAllOf')
616
+ */
617
+
618
+ /**
619
+ * @type {ObjectLiteralType}
620
+ */
621
+ const elements = {}
622
+
623
+ /**
624
+ * @type {ObjectLiteralType}
625
+ */
626
+ const field = {}
627
+
628
+ return (
629
+ Object.assign(
630
+ getNullElements(elements, schema),
631
+ {
632
+ field: renderNullElementsFieldForAllOf(field, schema, values, params, uri)
633
+ }
634
+ )
635
+ )
636
+ }
637
+
638
+ /**
639
+ * @param {SchemaType} schema
640
+ * @param {ValuesType} values
641
+ * @param {ParamsType} params
642
+ * @param {string} uri
643
+ * @returns {ZashikiNullElementsType}
644
+ */
645
+ export function renderNullElements (schema, values, params, uri) {
646
+ /**
647
+ * log('renderNullElements')
648
+ */
649
+
650
+ /**
651
+ * @type {ObjectLiteralType}
652
+ */
653
+ const elements = {}
654
+
655
+ /**
656
+ * @type {ObjectLiteralType}
657
+ */
658
+ const field = {}
659
+
660
+ return (
661
+ Object.assign(
662
+ getNullElements(elements, schema),
663
+ {
664
+ field: renderNullElementsField(field, schema, values, params, uri)
665
+ }
666
+ )
667
+ )
668
+ }
669
+
670
+ /**
671
+ * "enum"
672
+ *
673
+ * @param {SchemaType} schema
674
+ * @param {ValuesType} values
675
+ * @param {ParamsType} params
676
+ * @returns {ZashikiType}
677
+ */
678
+ export function renderNullForEnum (schema, values, params) {
679
+ /**
680
+ * log('renderNullForEnum')
681
+ */
682
+
683
+ const {
684
+ uri = '#/'
685
+ } = params
686
+
687
+ const meta = renderNullMetaForEnum(params, uri)
688
+ const elements = renderNullElementsForEnum(schema, params, uri)
689
+
690
+ return {
691
+ meta,
692
+ elements
693
+ }
694
+ }
695
+
696
+ /**
697
+ * "anyOf"
698
+ *
699
+ * @param {SchemaType} schema
700
+ * @param {ValuesType} values
701
+ * @param {ParamsType} params
702
+ * @returns {ZashikiType}
703
+ */
704
+ export function renderNullForAnyOf (schema, values, params) {
705
+ /**
706
+ * log('renderNullForAnyOf')
707
+ */
708
+
709
+ const {
710
+ uri = '#/'
711
+ } = params
712
+
713
+ const meta = renderNullMetaForAnyOf(params, uri)
714
+ const elements = renderNullElementsForAnyOf(schema, params, uri)
715
+
716
+ return {
717
+ meta,
718
+ elements
719
+ }
720
+ }
721
+
722
+ /**
723
+ * "oneOf"
724
+ *
725
+ * @param {SchemaType} schema
726
+ * @param {ValuesType} values
727
+ * @param {ParamsType} params
728
+ * @returns {ZashikiType}
729
+ */
730
+ export function renderNullForOneOf (schema, values, params) {
731
+ /**
732
+ * log('renderNullForOneOf')
733
+ */
734
+
735
+ const {
736
+ uri = '#/'
737
+ } = params
738
+
739
+ const meta = renderNullMetaForOneOf(params, uri)
740
+ const elements = renderNullElementsForOneOf(schema, params, uri)
741
+
742
+ return {
743
+ meta,
744
+ elements
745
+ }
746
+ }
747
+
748
+ /**
749
+ * "allOf"
750
+ *
751
+ * @param {SchemaType} schema
752
+ * @param {ValuesType} values
753
+ * @param {ParamsType} params
754
+ * @returns {ZashikiType}
755
+ */
756
+ export function renderNullForAllOf (schema, values, params) {
757
+ /**
758
+ * log('renderNullForAllOf')
759
+ */
760
+
761
+ const {
762
+ uri = '#/'
763
+ } = params
764
+
765
+ const meta = renderNullMetaForAllOf(schema, values, params, uri)
766
+ const elements = renderNullElementsForAllOf(schema, values, params, uri)
767
+
768
+ return {
769
+ meta,
770
+ elements
771
+ }
772
+ }
773
+
774
+ /**
775
+ * @param {SchemaType} schema
776
+ * @param {ValuesType} values
777
+ * @param {ParamsType} params
778
+ * @returns {ZashikiType}
779
+ */
780
+ export function renderNull (schema, values, params) {
781
+ /**
782
+ * log('renderNull')
783
+ */
784
+
785
+ const {
786
+ uri = '#/'
787
+ } = params
788
+
789
+ const meta = renderNullMeta(schema, values, params, uri)
790
+ const elements = renderNullElements(schema, values, params, uri)
791
+
792
+ return {
793
+ meta,
794
+ elements
795
+ }
796
+ }