@saltcorn/data 0.7.2-beta.3 → 0.7.2-beta.6

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 (85) hide show
  1. package/dist/base-plugin/actions.d.ts.map +1 -1
  2. package/dist/base-plugin/actions.js +1 -0
  3. package/dist/base-plugin/actions.js.map +1 -1
  4. package/dist/base-plugin/fieldviews.js +1 -1
  5. package/dist/base-plugin/fieldviews.js.map +1 -1
  6. package/dist/base-plugin/fileviews.d.ts.map +1 -1
  7. package/dist/base-plugin/fileviews.js +20 -5
  8. package/dist/base-plugin/fileviews.js.map +1 -1
  9. package/dist/base-plugin/index.d.ts +214 -214
  10. package/dist/base-plugin/viewtemplates/edit.d.ts +1 -1
  11. package/dist/base-plugin/viewtemplates/edit.d.ts.map +1 -1
  12. package/dist/base-plugin/viewtemplates/edit.js +10 -3
  13. package/dist/base-plugin/viewtemplates/edit.js.map +1 -1
  14. package/dist/base-plugin/viewtemplates/filter.d.ts.map +1 -1
  15. package/dist/base-plugin/viewtemplates/filter.js +2 -0
  16. package/dist/base-plugin/viewtemplates/filter.js.map +1 -1
  17. package/dist/base-plugin/viewtemplates/show.d.ts +1 -1
  18. package/dist/base-plugin/viewtemplates/show.d.ts.map +1 -1
  19. package/dist/base-plugin/viewtemplates/show.js +7 -3
  20. package/dist/base-plugin/viewtemplates/show.js.map +1 -1
  21. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts +1 -1
  22. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
  23. package/dist/base-plugin/viewtemplates/viewable_fields.js +5 -5
  24. package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
  25. package/dist/db/state.d.ts +25 -18
  26. package/dist/db/state.d.ts.map +1 -1
  27. package/dist/db/state.js +28 -20
  28. package/dist/db/state.js.map +1 -1
  29. package/dist/index.js +5 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/models/config.d.ts.map +1 -1
  32. package/dist/models/config.js +27 -5
  33. package/dist/models/config.js.map +1 -1
  34. package/dist/models/crash.js +5 -1
  35. package/dist/models/crash.js.map +1 -1
  36. package/dist/models/email.js +2 -2
  37. package/dist/models/email.js.map +1 -1
  38. package/dist/models/field.d.ts.map +1 -1
  39. package/dist/models/field.js +1 -0
  40. package/dist/models/field.js.map +1 -1
  41. package/dist/models/file.d.ts +6 -0
  42. package/dist/models/file.d.ts.map +1 -1
  43. package/dist/models/file.js +25 -1
  44. package/dist/models/file.js.map +1 -1
  45. package/dist/models/plugin.d.ts +1 -1
  46. package/dist/models/plugin.d.ts.map +1 -1
  47. package/dist/models/plugin.js +10 -6
  48. package/dist/models/plugin.js.map +1 -1
  49. package/dist/models/table.d.ts.map +1 -1
  50. package/dist/models/table.js +16 -1
  51. package/dist/models/table.js.map +1 -1
  52. package/dist/models/trigger.d.ts.map +1 -1
  53. package/dist/models/trigger.js +2 -0
  54. package/dist/models/trigger.js.map +1 -1
  55. package/dist/models/view.d.ts +9 -2
  56. package/dist/models/view.d.ts.map +1 -1
  57. package/dist/models/view.js +24 -13
  58. package/dist/models/view.js.map +1 -1
  59. package/dist/package.json +7 -7
  60. package/dist/plugin-helper.d.ts +2 -1
  61. package/dist/plugin-helper.d.ts.map +1 -1
  62. package/dist/plugin-helper.js +41 -11
  63. package/dist/plugin-helper.js.map +1 -1
  64. package/dist/tests/auxtest.test.js +100 -3
  65. package/dist/tests/auxtest.test.js.map +1 -1
  66. package/dist/tests/exact_views.test.js +3 -3
  67. package/dist/tests/exact_views.test.js.map +1 -1
  68. package/dist/tsconfig.ref.tsbuildinfo +1 -1
  69. package/package.json +8 -9
  70. package/dist/app-locales/en.json +0 -6
  71. package/dist/app-locales/public/da.json +0 -3
  72. package/dist/app-locales/public/tlh.json +0 -3
  73. package/dist/coverage/coverage-final.json +0 -46
  74. package/dist/coverage/lcov-report/block-navigation.d.ts +0 -2
  75. package/dist/coverage/lcov-report/block-navigation.d.ts.map +0 -1
  76. package/dist/coverage/lcov-report/block-navigation.js +0 -71
  77. package/dist/coverage/lcov-report/block-navigation.js.map +0 -1
  78. package/dist/coverage/lcov-report/prettify.d.ts +0 -1
  79. package/dist/coverage/lcov-report/prettify.d.ts.map +0 -1
  80. package/dist/coverage/lcov-report/prettify.js +0 -478
  81. package/dist/coverage/lcov-report/prettify.js.map +0 -1
  82. package/dist/coverage/lcov-report/sorter.d.ts +0 -2
  83. package/dist/coverage/lcov-report/sorter.d.ts.map +0 -1
  84. package/dist/coverage/lcov-report/sorter.js +0 -164
  85. package/dist/coverage/lcov-report/sorter.js.map +0 -1
@@ -256,79 +256,17 @@ export const types: ({
256
256
  fieldviews: {
257
257
  show: {
258
258
  isEdit: boolean;
259
- run: (v: any) => any;
260
- };
261
- checkboxes: {
262
- isEdit: boolean;
263
- run: (v: any) => any;
264
- };
265
- TrueFalse: {
266
- isEdit: boolean;
267
- run: (v: any) => "" | "True" | "False";
259
+ run: (s: any) => any;
268
260
  };
269
261
  edit: {
270
262
  isEdit: boolean;
271
- run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
272
- };
273
- tristate: {
274
- isEdit: boolean;
263
+ blockDisplay: boolean;
275
264
  run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
276
265
  };
277
266
  };
278
267
  attributes: object[];
279
- readFromFormRecord: (rec: any, name: string) => boolean | null;
280
- read: (v: object) => boolean | null;
281
- readFromDB: (v: object) => object;
282
- listAs: (v: object) => object;
268
+ read: (v: object) => object;
283
269
  validate: () => boolean;
284
- } | {
285
- name: string;
286
- sql_name: string;
287
- contract: () => Function;
288
- attributes: object[];
289
- fieldviews: {
290
- show: {
291
- isEdit: boolean;
292
- run: (d: any, req: any) => any;
293
- };
294
- showDay: {
295
- isEdit: boolean;
296
- run: (d: any, req: any) => any;
297
- };
298
- format: {
299
- isEdit: boolean;
300
- configFields: {
301
- name: string;
302
- label: string;
303
- type: string;
304
- sublabel: string;
305
- }[];
306
- run: (d: any, req: any, options: any) => string;
307
- };
308
- relative: {
309
- isEdit: boolean;
310
- run: (d: any, req: any) => string;
311
- };
312
- yearsAgo: {
313
- isEdit: boolean;
314
- run: (d: any, req: any) => string;
315
- };
316
- edit: {
317
- isEdit: boolean;
318
- blockDisplay: boolean;
319
- run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
320
- };
321
- editDay: {
322
- isEdit: boolean;
323
- blockDisplay: boolean;
324
- run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
325
- };
326
- };
327
- presets: {
328
- Now: () => Date;
329
- };
330
- read: (v: object, attrs: object) => object;
331
- validate: ({}: object) => boolean;
332
270
  } | {
333
271
  name: string;
334
272
  sql_name: string;
@@ -402,22 +340,114 @@ export const types: ({
402
340
  name: string;
403
341
  sql_name: string;
404
342
  contract: () => Function;
343
+ attributes: object[];
405
344
  fieldviews: {
406
345
  show: {
407
346
  isEdit: boolean;
408
- run: (s: any) => any;
347
+ run: (d: any, req: any) => any;
348
+ };
349
+ showDay: {
350
+ isEdit: boolean;
351
+ run: (d: any, req: any) => any;
352
+ };
353
+ format: {
354
+ isEdit: boolean;
355
+ configFields: {
356
+ name: string;
357
+ label: string;
358
+ type: string;
359
+ sublabel: string;
360
+ }[];
361
+ run: (d: any, req: any, options: any) => string;
362
+ };
363
+ relative: {
364
+ isEdit: boolean;
365
+ run: (d: any, req: any) => string;
366
+ };
367
+ yearsAgo: {
368
+ isEdit: boolean;
369
+ run: (d: any, req: any) => string;
409
370
  };
410
371
  edit: {
411
372
  isEdit: boolean;
412
373
  blockDisplay: boolean;
413
374
  run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
414
375
  };
376
+ editDay: {
377
+ isEdit: boolean;
378
+ blockDisplay: boolean;
379
+ run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
380
+ };
381
+ };
382
+ presets: {
383
+ Now: () => Date;
384
+ };
385
+ read: (v: object, attrs: object) => object;
386
+ validate: ({}: object) => boolean;
387
+ } | {
388
+ name: string;
389
+ sql_name: string;
390
+ contract: () => Function;
391
+ fieldviews: {
392
+ show: {
393
+ isEdit: boolean;
394
+ run: (v: any) => any;
395
+ };
396
+ checkboxes: {
397
+ isEdit: boolean;
398
+ run: (v: any) => any;
399
+ };
400
+ TrueFalse: {
401
+ isEdit: boolean;
402
+ run: (v: any) => "" | "True" | "False";
403
+ };
404
+ edit: {
405
+ isEdit: boolean;
406
+ run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
407
+ };
408
+ tristate: {
409
+ isEdit: boolean;
410
+ run: (nm: any, v: any, attrs: any, cls: any, required: any, field: any) => any;
411
+ };
415
412
  };
416
413
  attributes: object[];
417
- read: (v: object) => object;
414
+ readFromFormRecord: (rec: any, name: string) => boolean | null;
415
+ read: (v: object) => boolean | null;
416
+ readFromDB: (v: object) => object;
417
+ listAs: (v: object) => object;
418
418
  validate: () => boolean;
419
419
  })[];
420
420
  export const viewtemplates: ({
421
+ name: string;
422
+ description: string;
423
+ configuration_workflow: (req: object) => import("../models/workflow");
424
+ run: (table_id: string, viewname: string, { list_view, show_view, list_width, subtables }: {
425
+ list_view: string;
426
+ show_view: string;
427
+ subtables: object;
428
+ }, state: any, extraArgs: any, { getRowQuery }: {
429
+ getRowQuery: any;
430
+ }) => Promise<div>;
431
+ get_state_fields: (table_id: any, viewname: any, { list_view, show_view }: {
432
+ list_view: string;
433
+ show_view: any;
434
+ }) => Promise<object[]>;
435
+ display_state_form: ({ list_view, _omit_state_form }: {
436
+ list_view: string;
437
+ _omit_state_form: boolean;
438
+ }) => boolean;
439
+ queries: ({ table_id, viewname, configuration: { columns, default_state }, req, }: {
440
+ table_id: any;
441
+ viewname: any;
442
+ configuration: {
443
+ columns: any;
444
+ default_state: any;
445
+ };
446
+ req: any;
447
+ }) => {
448
+ getRowQuery(uniques: any): Promise<import("@saltcorn/db-common/internal").Row | null>;
449
+ };
450
+ } | {
421
451
  name: string;
422
452
  description: string;
423
453
  configuration_workflow: (req: object) => import("../models/workflow");
@@ -472,92 +502,6 @@ export const viewtemplates: ({
472
502
  getRowQuery(id: any): Promise<import("@saltcorn/db-common/internal").Row | null>;
473
503
  };
474
504
  configCheck: (view: any) => Promise<string[]>;
475
- } | {
476
- name: string;
477
- description: string;
478
- configuration_workflow: (req: object) => import("../models/workflow");
479
- run: (table_id: number, viewname: string, {}: {
480
- columns: any;
481
- layout: any;
482
- }, state: string, { res, req }: {
483
- req: object;
484
- res: object;
485
- }, { editQuery }: {
486
- editQuery: any;
487
- }) => Promise<import("../models/form")>;
488
- runMany: (table_id: number, viewname: string, { columns, layout, auto_save }: {
489
- columns: any;
490
- layout: any;
491
- }, state: State, extra: object, { editManyQuery, getRowQuery }: {
492
- editManyQuery: any;
493
- getRowQuery: any;
494
- }) => Promise<import("../models/form")[]>;
495
- runPost: (table_id: number, viewname: string, { columns, layout, fixed, view_when_done, formula_destinations, auto_save, destination_type, }: {
496
- columns: object[];
497
- layout: Layout;
498
- fixed: object;
499
- view_when_done: boolean;
500
- formula_destinations: object[];
501
- }, state: object, body: any, { res, req, redirect }: {
502
- res: object;
503
- req: object;
504
- redirect: string;
505
- }, { tryInsertQuery, tryUpdateQuery, getRowQuery }: {
506
- tryInsertQuery: any;
507
- tryUpdateQuery: any;
508
- getRowQuery: any;
509
- }) => Promise<void>;
510
- get_state_fields: (table_id: any, viewname: any, { columns }: {
511
- columns: any;
512
- }) => Promise<object[]>;
513
- initial_config: Function;
514
- display_state_form: boolean;
515
- authorise_post: ({ body, table_id, req }: {
516
- body: object;
517
- table_id: string;
518
- req: object;
519
- }, { authorizePostQuery }: {
520
- authorizePostQuery: any;
521
- }) => Promise<boolean>;
522
- authorise_get: ({ query, table_id, req }: {
523
- query: object;
524
- rest: any;
525
- }, { authorizeGetQuery }: {
526
- authorizeGetQuery: any;
527
- }) => Promise<boolean>;
528
- getStringsForI18n({ layout }: {
529
- layout: Layout;
530
- }): string[];
531
- queries: ({ table_id, name, configuration: { columns, default_state, layout, auto_save, destination_type, }, req, res, }: {
532
- table_id: any;
533
- name: any;
534
- configuration: {
535
- columns: any;
536
- default_state: any;
537
- layout: any;
538
- auto_save: any;
539
- destination_type: any;
540
- };
541
- req: any;
542
- res: any;
543
- }) => {
544
- editQuery(state: any): Promise<import("../models/form")>;
545
- editManyQuery(state: any): Promise<{
546
- table: import("../models/table") | null;
547
- fields: import("../models/field")[];
548
- rows: import("@saltcorn/db-common/internal").Row[];
549
- }>;
550
- tryInsertQuery(row: any): Promise<{
551
- error: string;
552
- } | {
553
- success: any;
554
- }>;
555
- tryUpdateQuery(row: any, id: any): Promise<import("@saltcorn/types/common_types").ResultMessage>;
556
- authorizePostQuery(body: any, table_id: any): Promise<boolean | "" | null | undefined>;
557
- authorizeGetQuery(query: any, table_id: any): Promise<boolean | "" | null | undefined>;
558
- getRowQuery(table_id: any, view_select: any, row_id: any): Promise<import("@saltcorn/db-common/internal").Row[]>;
559
- };
560
- configCheck: (view: any) => Promise<string[]>;
561
505
  } | {
562
506
  name: string;
563
507
  description: string;
@@ -601,7 +545,7 @@ export const viewtemplates: ({
601
545
  query: any;
602
546
  table_id: any;
603
547
  }) => Promise<any>;
604
- queries: ({ table_id, viewname, configuration: { columns, layout }, req }: {
548
+ queries: ({ table_id, viewname, configuration: { columns, layout }, req, }: {
605
549
  table_id: any;
606
550
  viewname: any;
607
551
  configuration: {
@@ -630,36 +574,6 @@ export const viewtemplates: ({
630
574
  authorizeGetQuery(query: any, table_id: any): Promise<boolean>;
631
575
  };
632
576
  configCheck: (view: any) => Promise<string[]>;
633
- } | {
634
- name: string;
635
- description: string;
636
- configuration_workflow: (req: object) => import("../models/workflow");
637
- run: (table_id: string, viewname: string, { list_view, show_view, list_width, subtables }: {
638
- list_view: string;
639
- show_view: string;
640
- subtables: object;
641
- }, state: any, extraArgs: any, { getRowQuery }: {
642
- getRowQuery: any;
643
- }) => Promise<div>;
644
- get_state_fields: (table_id: any, viewname: any, { list_view, show_view }: {
645
- list_view: string;
646
- show_view: any;
647
- }) => Promise<object[]>;
648
- display_state_form: ({ list_view, _omit_state_form }: {
649
- list_view: string;
650
- _omit_state_form: boolean;
651
- }) => boolean;
652
- queries: ({ table_id, viewname, configuration: { columns, default_state }, req, }: {
653
- table_id: any;
654
- viewname: any;
655
- configuration: {
656
- columns: any;
657
- default_state: any;
658
- };
659
- req: any;
660
- }) => {
661
- getRowQuery(uniques: any): Promise<import("@saltcorn/db-common/internal").Row | null>;
662
- };
663
577
  } | {
664
578
  name: string;
665
579
  description: string;
@@ -699,36 +613,6 @@ export const viewtemplates: ({
699
613
  }) => {
700
614
  countRowsQuery(state: any): Promise<number>;
701
615
  };
702
- } | {
703
- name: string;
704
- description: string;
705
- get_state_fields: () => object[];
706
- configuration_workflow: () => import("../models/workflow");
707
- run: (table_id: number, viewname: string, { columns, layout }: {
708
- columns: object[];
709
- layout: object;
710
- }, state: object, extra: object, { distinctValuesQuery }: {
711
- distinctValuesQuery: any;
712
- }) => Promise<Layout>;
713
- initial_config: () => Promise<object>;
714
- display_state_form: boolean;
715
- getStringsForI18n({ layout }: {
716
- layout: any;
717
- }): string[];
718
- queries: ({ table_id, viewname, configuration: { columns, default_state }, req, }: {
719
- table_id: any;
720
- viewname: any;
721
- configuration: {
722
- columns: any;
723
- default_state: any;
724
- };
725
- req: any;
726
- }) => {
727
- distinctValuesQuery(): Promise<{
728
- distinct_values: {};
729
- role: any;
730
- }>;
731
- };
732
616
  } | {
733
617
  name: string;
734
618
  description: string;
@@ -820,6 +704,122 @@ export const viewtemplates: ({
820
704
  }>;
821
705
  fetchOlderMsgQuery(participant_field: any, body: any): Promise<import("@saltcorn/db-common/internal").Row | null>;
822
706
  };
707
+ } | {
708
+ name: string;
709
+ description: string;
710
+ configuration_workflow: (req: object) => import("../models/workflow");
711
+ run: (table_id: number, viewname: string, {}: {
712
+ columns: any;
713
+ layout: any;
714
+ }, state: string, { res, req }: {
715
+ req: object;
716
+ res: object;
717
+ }, { editQuery }: {
718
+ editQuery: any;
719
+ }) => Promise<import("../models/form")>;
720
+ runMany: (table_id: number, viewname: string, { columns, layout, auto_save }: {
721
+ columns: any;
722
+ layout: any;
723
+ }, state: State, extra: object, { editManyQuery, getRowQuery }: {
724
+ editManyQuery: any;
725
+ getRowQuery: any;
726
+ }) => Promise<import("../models/form")[]>;
727
+ runPost: (table_id: number, viewname: string, { columns, layout, fixed, view_when_done, formula_destinations, auto_save, destination_type, }: {
728
+ columns: object[];
729
+ layout: Layout;
730
+ fixed: object;
731
+ view_when_done: boolean;
732
+ formula_destinations: object[];
733
+ }, state: object, body: any, { res, req, redirect }: {
734
+ res: object;
735
+ req: object;
736
+ redirect: string;
737
+ }, { tryInsertQuery, tryUpdateQuery, getRowQuery }: {
738
+ tryInsertQuery: any;
739
+ tryUpdateQuery: any;
740
+ getRowQuery: any;
741
+ }, remote: any) => Promise<void>;
742
+ get_state_fields: (table_id: any, viewname: any, { columns }: {
743
+ columns: any;
744
+ }) => Promise<object[]>;
745
+ initial_config: Function;
746
+ display_state_form: boolean;
747
+ authorise_post: ({ body, table_id, req }: {
748
+ body: object;
749
+ table_id: string;
750
+ req: object;
751
+ }, { authorizePostQuery }: {
752
+ authorizePostQuery: any;
753
+ }) => Promise<boolean>;
754
+ authorise_get: ({ query, table_id, req }: {
755
+ query: object;
756
+ rest: any;
757
+ }, { authorizeGetQuery }: {
758
+ authorizeGetQuery: any;
759
+ }) => Promise<boolean>;
760
+ getStringsForI18n({ layout }: {
761
+ layout: Layout;
762
+ }): string[];
763
+ queries: ({ table_id, name, configuration: { columns, default_state, layout, auto_save, destination_type, }, req, res, }: {
764
+ table_id: any;
765
+ name: any;
766
+ configuration: {
767
+ columns: any;
768
+ default_state: any;
769
+ layout: any;
770
+ auto_save: any;
771
+ destination_type: any;
772
+ };
773
+ req: any;
774
+ res: any;
775
+ }) => {
776
+ editQuery(state: any): Promise<import("../models/form")>;
777
+ editManyQuery(state: any): Promise<{
778
+ table: import("../models/table") | null;
779
+ fields: import("../models/field")[];
780
+ rows: import("@saltcorn/db-common/internal").Row[];
781
+ }>;
782
+ tryInsertQuery(row: any): Promise<{
783
+ error: string;
784
+ } | {
785
+ success: any;
786
+ }>;
787
+ tryUpdateQuery(row: any, id: any): Promise<import("@saltcorn/types/common_types").ResultMessage>;
788
+ authorizePostQuery(body: any, table_id: any): Promise<boolean | "" | null | undefined>;
789
+ authorizeGetQuery(query: any, table_id: any): Promise<boolean | "" | null | undefined>;
790
+ getRowQuery(table_id: any, view_select: any, row_id: any): Promise<import("@saltcorn/db-common/internal").Row[]>;
791
+ };
792
+ configCheck: (view: any) => Promise<string[]>;
793
+ } | {
794
+ name: string;
795
+ description: string;
796
+ get_state_fields: () => object[];
797
+ configuration_workflow: () => import("../models/workflow");
798
+ run: (table_id: number, viewname: string, { columns, layout }: {
799
+ columns: object[];
800
+ layout: object;
801
+ }, state: object, extra: object, { distinctValuesQuery }: {
802
+ distinctValuesQuery: any;
803
+ }) => Promise<Layout>;
804
+ initial_config: () => Promise<object>;
805
+ display_state_form: boolean;
806
+ getStringsForI18n({ layout }: {
807
+ layout: any;
808
+ }): string[];
809
+ queries: ({ table_id, viewname, configuration: { columns, default_state }, req, }: {
810
+ table_id: any;
811
+ viewname: any;
812
+ configuration: {
813
+ columns: any;
814
+ default_state: any;
815
+ };
816
+ req: any;
817
+ }) => {
818
+ distinctValuesQuery(): Promise<{
819
+ distinct_values: {};
820
+ role: any;
821
+ }>;
822
+ };
823
823
  })[];
824
824
  import fileviews = require("./fileviews");
825
825
  import actions = require("./actions");
@@ -72,7 +72,7 @@ export function runPost(table_id: number, viewname: string, { columns, layout, f
72
72
  tryInsertQuery: any;
73
73
  tryUpdateQuery: any;
74
74
  getRowQuery: any;
75
- }): Promise<void>;
75
+ }, remote: any): Promise<void>;
76
76
  /**
77
77
  * @param {*} table_id
78
78
  * @param {*} viewname
@@ -1 +1 @@
1
- {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/edit.js"],"names":[],"mappings":"AAkDA;;;GAGG;AACH,4CAHW,MAAM,GACJ,QAAQ,CA6PjB;AAgCJ;;;;;;;;;;;GAWG;AACH,8BAXW,MAAM,YACN,MAAM;IAEK,OAAO;IACP,MAAM;UACjB,MAAM;IAEU,GAAG,EAAnB,MAAM;IACU,GAAG,EAAnB,MAAM;;;IACJ,QAAQ,IAAI,CAAC,CAWzB;AAED;;;;;;;;;GASG;AACH,kCATW,MAAM,YACN,MAAM;IAEE,OAAO;IACP,MAAM;wBAEd,MAAM;;;IACJ,QAAQ,IAAI,EAAE,CAAC,CA2B3B;AA+LD;;;;;;;;;;;;;;;;GAgBG;AACH,kCAhBW,MAAM,YACN,MAAM;IAEY,OAAO,EAAzB,MAAM,EAAE;IACQ,MAAM;IACN,KAAK,EAArB,MAAM;IACW,cAAc,EAA/B,OAAO;IACW,oBAAoB,EAAtC,MAAM,EAAE;UACR,MAAM;IAGU,GAAG,EAAnB,MAAM;IACU,GAAG,EAAnB,MAAM;IACU,QAAQ,EAAxB,MAAM;;;;;IACJ,QAAQ,IAAI,CAAC,CAyLzB;AA/dD;;;;;;GAMG;AACH;IAHmB,OAAO;IACb,QAAQ,MAAM,EAAE,CAAC,CAQ7B;AAcD,uBAAuB;AACvB,sCAAuD;AA0dvD;;;;;;GAMG;AACH;IALwB,IAAI,EAAjB,MAAM;IACO,QAAQ,EAArB,MAAM;IACO,GAAG,EAAhB,MAAM;;;IACJ,QAAQ,OAAO,CAAC,CAO5B;;;;;2BAEY,MAAM;kCAEN,MAAM;yCAQN,OAAO;AASH;;;;;qBAEd;AACD;;;;GAIG;AACH;;aAEC;AAPD;;;;GAIG;AACH;;aAEC;AACQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2GP;AACW,kEAyBZ"}
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/edit.js"],"names":[],"mappings":"AAkDA;;;GAGG;AACH,4CAHW,MAAM,GACJ,QAAQ,CA6PjB;AAgCJ;;;;;;;;;;;GAWG;AACH,8BAXW,MAAM,YACN,MAAM;IAEK,OAAO;IACP,MAAM;UACjB,MAAM;IAEU,GAAG,EAAnB,MAAM;IACU,GAAG,EAAnB,MAAM;;;IACJ,QAAQ,IAAI,CAAC,CAWzB;AAED;;;;;;;;;GASG;AACH,kCATW,MAAM,YACN,MAAM;IAEE,OAAO;IACP,MAAM;wBAEd,MAAM;;;IACJ,QAAQ,IAAI,EAAE,CAAC,CA2B3B;AA+LD;;;;;;;;;;;;;;;;GAgBG;AACH,kCAhBW,MAAM,YACN,MAAM;IAEY,OAAO,EAAzB,MAAM,EAAE;IACQ,MAAM;IACN,KAAK,EAArB,MAAM;IACW,cAAc,EAA/B,OAAO;IACW,oBAAoB,EAAtC,MAAM,EAAE;UACR,MAAM;IAGU,GAAG,EAAnB,MAAM;IACU,GAAG,EAAnB,MAAM;IACU,QAAQ,EAAxB,MAAM;;;;;iBACJ,QAAQ,IAAI,CAAC,CAwMzB;AA9eD;;;;;;GAMG;AACH;IAHmB,OAAO;IACb,QAAQ,MAAM,EAAE,CAAC,CAQ7B;AAcD,uBAAuB;AACvB,sCAAuD;AAyevD;;;;;;GAMG;AACH;IALwB,IAAI,EAAjB,MAAM;IACO,QAAQ,EAArB,MAAM;IACO,GAAG,EAAhB,MAAM;;;IACJ,QAAQ,OAAO,CAAC,CAO5B;;;;;2BAEY,MAAM;kCAEN,MAAM;yCAQN,OAAO;AASH;;;;;qBAEd;AACD;;;;GAIG;AACH;;aAEC;AAPD;;;;GAIG;AACH;;aAEC;AACQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2GP;AACW,kEAyBZ"}
@@ -295,7 +295,7 @@ const run = async (table_id, viewname, {}, state, { res, req }, { editQuery }) =
295
295
  * @returns {Promise<Form[]>}
296
296
  */
297
297
  const runMany = async (table_id, viewname, { columns, layout, auto_save }, state, extra, { editManyQuery, getRowQuery }) => {
298
- const { table, fields, rows } = editManyQuery();
298
+ const { table, fields, rows } = await editManyQuery();
299
299
  return await asyncMap(rows, async (row) => {
300
300
  const html = await render({
301
301
  table,
@@ -480,7 +480,7 @@ const render = async ({ table, fields, viewname, columns, layout, row, req, stat
480
480
  * @param {string} optsTwo.redirect
481
481
  * @returns {Promise<void>}
482
482
  */
483
- const runPost = async (table_id, viewname, { columns, layout, fixed, view_when_done, formula_destinations, auto_save, destination_type, }, state, body, { res, req, redirect }, { tryInsertQuery, tryUpdateQuery, getRowQuery }) => {
483
+ const runPost = async (table_id, viewname, { columns, layout, fixed, view_when_done, formula_destinations, auto_save, destination_type, }, state, body, { res, req, redirect }, { tryInsertQuery, tryUpdateQuery, getRowQuery }, remote) => {
484
484
  const table = await Table.findOne({ id: table_id });
485
485
  const fields = await table.getFields();
486
486
  const form = await getForm(table, viewname, columns, layout, body.id, req);
@@ -527,7 +527,14 @@ const runPost = async (table_id, viewname, { columns, layout, fixed, view_when_d
527
527
  const file_fields = form.fields.filter((f) => f.type === "File");
528
528
  for (const field of file_fields) {
529
529
  if (req.files && req.files[field.name]) {
530
- const file = await File.from_req_files(req.files[field.name], req.user ? req.user.id : null, (field.attributes && +field.attributes.min_role_read) || 1);
530
+ if (!isNode() && !remote) {
531
+ req.flash("error", "The mobile-app supports no local files, please use a remote table.");
532
+ res.sendWrap(viewname, renderForm(form, req.csrfToken ? req.csrfToken() : false));
533
+ return;
534
+ }
535
+ const file = isNode()
536
+ ? await File.from_req_files(req.files[field.name], req.user ? req.user.id : null, (field.attributes && +field.attributes.min_role_read) || 1)
537
+ : await File.upload(req.files[field.name]);
531
538
  row[field.name] = file.id;
532
539
  }
533
540
  else {