@galadrim/galadmin 0.1.78 → 0.1.79

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.
@@ -18,6 +18,7 @@ export type ColorColumn = {
18
18
  };
19
19
  export type StandardColumn = {
20
20
  name?: string;
21
+ dataType?: string;
21
22
  };
22
23
  export type SelectColumn = {
23
24
  dataType: 'select';
@@ -144,6 +145,7 @@ export type TableView = {
144
145
  icon?: string;
145
146
  label: string;
146
147
  tableName: string;
148
+ primaryId?: string;
147
149
  customQuery?: string;
148
150
  selectExpression?: string;
149
151
  join?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galadrim/galadmin",
3
- "version": "0.1.78",
3
+ "version": "0.1.79",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",
@@ -32,7 +32,8 @@
32
32
  "pg": "^8.11.3",
33
33
  "rollup": "^2.56.2",
34
34
  "serialize-javascript": "^6.0.0",
35
- "ssh2-sftp-client": "^9.0.4"
35
+ "ssh2-sftp-client": "^9.0.4",
36
+ "uuid": "^9.0.1"
36
37
  },
37
38
  "devDependencies": {
38
39
  "@types/express": "^4.17.13",
package/src/api.ts CHANGED
@@ -13,6 +13,7 @@ import * as rollup from "rollup";
13
13
  import babel from '@rollup/plugin-babel'
14
14
  import resolve from '@rollup/plugin-node-resolve'
15
15
  import axios from "axios";
16
+ import { v4 as uuidv4 } from 'uuid';
16
17
 
17
18
  function generateUniqueIdForObject(obj) {
18
19
  const str = JSON.stringify(obj);
@@ -358,7 +359,7 @@ export default (db, config, user) => {
358
359
  if (typeof view.parseImportFile !== "function") {
359
360
  return res.status(500).send("\"parseImportFile\" doit être défini dans la configuration de la vue.");
360
361
  }
361
-
362
+
362
363
  const records = await view.parseImportFile(files.data[0]);
363
364
  const columns = [];
364
365
  if (records.length === 0) {
@@ -573,6 +574,10 @@ export default (db, config, user) => {
573
574
  if (panel) {
574
575
  req.body.data[panel.createConfig.recordIdKey] = req.body.recordId;
575
576
  }
577
+ const primaryColumn = (view || panel)?.columns?.find(x => x.name === (view || panel).primaryId)
578
+ if (primaryColumn?.dataType == "uuid") {
579
+ req.body.data[primaryColumn.name] = uuidv4()
580
+ }
576
581
  const { err, rows: r } = await db.query("INSERT INTO ?? SET ?", [panel ? panel.tableName : view.tableName, req.body.data])
577
582
  if (err) {
578
583
  console.error(err)
@@ -1 +1 @@
1
- [{"/home/runner/work/galadmin/galadmin/src/front/src/index.js":"1","/home/runner/work/galadmin/galadmin/src/front/src/App.js":"2","/home/runner/work/galadmin/galadmin/src/front/src/components/Sidebar.js":"3","/home/runner/work/galadmin/galadmin/src/front/src/components/RedirectToFirstView.js":"4","/home/runner/work/galadmin/galadmin/src/front/src/pages/CreateRecord.js":"5","/home/runner/work/galadmin/galadmin/src/front/src/pages/EditRecord.js":"6","/home/runner/work/galadmin/galadmin/src/front/src/pages/Records.js":"7","/home/runner/work/galadmin/galadmin/src/front/src/pages/Record.js":"8","/home/runner/work/galadmin/galadmin/src/front/src/pages/Login.js":"9","/home/runner/work/galadmin/galadmin/src/front/src/pages/Iframe.js":"10","/home/runner/work/galadmin/galadmin/src/front/src/pages/CustomView.js":"11","/home/runner/work/galadmin/galadmin/src/front/src/contexts/ConfigContext.js":"12","/home/runner/work/galadmin/galadmin/src/front/src/components/Input.js":"13","/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadButton.js":"14","/home/runner/work/galadmin/galadmin/src/front/src/components/LabelTooltip.js":"15","/home/runner/work/galadmin/galadmin/src/front/src/components/AddFilterButton.js":"16","/home/runner/work/galadmin/galadmin/src/front/src/components/BulkActionsButton.js":"17","/home/runner/work/galadmin/galadmin/src/front/src/components/ActionsButton.js":"18","/home/runner/work/galadmin/galadmin/src/front/src/components/BackButton.js":"19","/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadTablePanelButton.js":"20","/home/runner/work/galadmin/galadmin/src/front/src/utils/checkRequiredColumns.js":"21","/home/runner/work/galadmin/galadmin/src/front/src/utils/getFormattedValue.js":"22","/home/runner/work/galadmin/galadmin/src/front/src/components/panels/TablePanel.js":"23","/home/runner/work/galadmin/galadmin/src/front/src/components/panels/GalleryPanel.js":"24","/home/runner/work/galadmin/galadmin/src/front/src/components/panels/MapPanel.js":"25","/home/runner/work/galadmin/galadmin/src/front/src/components/CustomComponent.js":"26","/home/runner/work/galadmin/galadmin/src/front/src/components/OutsideClickHandler.js":"27","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ColorInput.js":"28","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/RichTextInput.js":"29","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/BetterRichTextInput.js":"30","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/DatetimeInput.js":"31","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/AddressInput.js":"32","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/FileInput.js":"33","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignSelectInput.js":"34","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignDatalistInput.js":"35","/home/runner/work/galadmin/galadmin/src/front/src/utils/evalExpression.js":"36","/home/runner/work/galadmin/galadmin/src/front/src/components/UploadButton.js":"37"},{"size":219,"mtime":1705594571865,"results":"38","hashOfConfig":"39"},{"size":2340,"mtime":1705594571865,"results":"40","hashOfConfig":"39"},{"size":4725,"mtime":1705594571865,"results":"41","hashOfConfig":"39"},{"size":524,"mtime":1705594571865,"results":"42","hashOfConfig":"39"},{"size":4371,"mtime":1705594571865,"results":"43","hashOfConfig":"39"},{"size":3733,"mtime":1705594571865,"results":"44","hashOfConfig":"39"},{"size":10604,"mtime":1705594571865,"results":"45","hashOfConfig":"39"},{"size":4225,"mtime":1705594571865,"results":"46","hashOfConfig":"39"},{"size":1135,"mtime":1705594571865,"results":"47","hashOfConfig":"39"},{"size":404,"mtime":1705594571865,"results":"48","hashOfConfig":"39"},{"size":454,"mtime":1705594571865,"results":"49","hashOfConfig":"39"},{"size":1022,"mtime":1705594571865,"results":"50","hashOfConfig":"39"},{"size":5021,"mtime":1705594571865,"results":"51","hashOfConfig":"39"},{"size":895,"mtime":1705594571865,"results":"52","hashOfConfig":"39"},{"size":522,"mtime":1705594571865,"results":"53","hashOfConfig":"39"},{"size":10302,"mtime":1705594571865,"results":"54","hashOfConfig":"39"},{"size":2656,"mtime":1705594571865,"results":"55","hashOfConfig":"39"},{"size":3169,"mtime":1705594571865,"results":"56","hashOfConfig":"39"},{"size":217,"mtime":1705594571865,"results":"57","hashOfConfig":"39"},{"size":1128,"mtime":1705594571865,"results":"58","hashOfConfig":"39"},{"size":778,"mtime":1705594571865,"results":"59","hashOfConfig":"39"},{"size":2698,"mtime":1705594571865,"results":"60","hashOfConfig":"39"},{"size":4606,"mtime":1705594571865,"results":"61","hashOfConfig":"39"},{"size":2656,"mtime":1705594571865,"results":"62","hashOfConfig":"39"},{"size":1192,"mtime":1705594571865,"results":"63","hashOfConfig":"39"},{"size":1662,"mtime":1705594571865,"results":"64","hashOfConfig":"39"},{"size":826,"mtime":1705594571865,"results":"65","hashOfConfig":"39"},{"size":894,"mtime":1705594571865,"results":"66","hashOfConfig":"39"},{"size":2091,"mtime":1705594571865,"results":"67","hashOfConfig":"39"},{"size":1458,"mtime":1705594571865,"results":"68","hashOfConfig":"39"},{"size":886,"mtime":1705594571865,"results":"69","hashOfConfig":"39"},{"size":3092,"mtime":1705594571865,"results":"70","hashOfConfig":"39"},{"size":3297,"mtime":1705594571865,"results":"71","hashOfConfig":"39"},{"size":1461,"mtime":1705594571865,"results":"72","hashOfConfig":"39"},{"size":2088,"mtime":1705594571865,"results":"73","hashOfConfig":"39"},{"size":530,"mtime":1705594571865,"results":"74","hashOfConfig":"39"},{"size":1474,"mtime":1705594571865,"results":"75","hashOfConfig":"39"},{"filePath":"76","messages":"77","suppressedMessages":"78","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"jwkg5q",{"filePath":"79","messages":"80","suppressedMessages":"81","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"82","messages":"83","suppressedMessages":"84","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"85","messages":"86","suppressedMessages":"87","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"88","messages":"89","suppressedMessages":"90","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"91","messages":"92","suppressedMessages":"93","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"94","messages":"95","suppressedMessages":"96","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"97","messages":"98","suppressedMessages":"99","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"100","messages":"101","suppressedMessages":"102","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"103","messages":"104","suppressedMessages":"105","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"106","messages":"107","suppressedMessages":"108","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"109","messages":"110","suppressedMessages":"111","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"112","messages":"113","suppressedMessages":"114","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"115","messages":"116","suppressedMessages":"117","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"118","messages":"119","suppressedMessages":"120","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"121","messages":"122","suppressedMessages":"123","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"124","messages":"125","suppressedMessages":"126","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"127","messages":"128","suppressedMessages":"129","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"130","messages":"131","suppressedMessages":"132","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"133","messages":"134","suppressedMessages":"135","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"136","messages":"137","suppressedMessages":"138","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"139","messages":"140","suppressedMessages":"141","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"142","messages":"143","suppressedMessages":"144","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"145","messages":"146","suppressedMessages":"147","errorCount":0,"fatalErrorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"148","messages":"149","suppressedMessages":"150","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"151","messages":"152","suppressedMessages":"153","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"154","messages":"155","suppressedMessages":"156","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"157","messages":"158","suppressedMessages":"159","errorCount":0,"fatalErrorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"160","messages":"161","suppressedMessages":"162","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"163","messages":"164","suppressedMessages":"165","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"166","messages":"167","suppressedMessages":"168","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"169","messages":"170","suppressedMessages":"171","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"172","messages":"173","suppressedMessages":"174","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"175","messages":"176","suppressedMessages":"177","errorCount":0,"fatalErrorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"178","messages":"179","suppressedMessages":"180","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"181","messages":"182","suppressedMessages":"183","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"184","messages":"185","suppressedMessages":"186","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},"/home/runner/work/galadmin/galadmin/src/front/src/index.js",[],[],"/home/runner/work/galadmin/galadmin/src/front/src/App.js",[],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/Sidebar.js",["187","188","189","190"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/RedirectToFirstView.js",["191"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/CreateRecord.js",["192"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/EditRecord.js",["193"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Records.js",["194","195","196","197"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Record.js",["198","199"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Login.js",["200","201"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Iframe.js",["202","203"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/CustomView.js",["204"],[],"/home/runner/work/galadmin/galadmin/src/front/src/contexts/ConfigContext.js",["205"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/Input.js",["206"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadButton.js",["207"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/LabelTooltip.js",["208"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/AddFilterButton.js",["209","210"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/BulkActionsButton.js",["211"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/ActionsButton.js",["212"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/BackButton.js",["213"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadTablePanelButton.js",["214"],[],"/home/runner/work/galadmin/galadmin/src/front/src/utils/checkRequiredColumns.js",["215","216"],[],"/home/runner/work/galadmin/galadmin/src/front/src/utils/getFormattedValue.js",["217","218","219","220"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/panels/TablePanel.js",["221","222"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/panels/GalleryPanel.js",["223","224","225","226","227"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/panels/MapPanel.js",["228","229"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/CustomComponent.js",["230","231"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/OutsideClickHandler.js",["232"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ColorInput.js",["233","234","235"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/RichTextInput.js",["236","237"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/BetterRichTextInput.js",["238"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/DatetimeInput.js",["239","240"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/AddressInput.js",["241","242","243","244"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/FileInput.js",["245"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignSelectInput.js",["246","247","248"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignDatalistInput.js",["249","250","251","252"],[],"/home/runner/work/galadmin/galadmin/src/front/src/utils/evalExpression.js",["253","254"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/UploadButton.js",["255"],[],{"ruleId":"256","severity":1,"message":"257","line":19,"column":1,"nodeType":"258","endLine":104,"endColumn":2},{"ruleId":"259","severity":1,"message":"260","line":26,"column":28,"nodeType":"261","endLine":26,"endColumn":66},{"ruleId":"262","severity":1,"message":"263","line":29,"column":70,"nodeType":"264","messageId":"265","endLine":29,"endColumn":72},{"ruleId":"266","severity":1,"message":"267","line":79,"column":80,"nodeType":"268","messageId":"269","endLine":79,"endColumn":82},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":24,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":12,"column":1,"nodeType":"258","endLine":104,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":12,"column":1,"nodeType":"258","endLine":97,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":22,"column":1,"nodeType":"258","endLine":228,"endColumn":2},{"ruleId":"270","severity":1,"message":"271","line":51,"column":8,"nodeType":"272","endLine":51,"endColumn":19,"suggestions":"273"},{"ruleId":"270","severity":1,"message":"274","line":62,"column":8,"nodeType":"272","endLine":62,"endColumn":79,"suggestions":"275"},{"ruleId":"266","severity":1,"message":"267","line":189,"column":66,"nodeType":"268","messageId":"269","endLine":189,"endColumn":68},{"ruleId":"256","severity":1,"message":"257","line":16,"column":1,"nodeType":"258","endLine":89,"endColumn":2},{"ruleId":"270","severity":1,"message":"274","line":26,"column":8,"nodeType":"272","endLine":26,"endColumn":29,"suggestions":"276"},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":33,"endColumn":2},{"ruleId":"259","severity":1,"message":"260","line":23,"column":21,"nodeType":"261","endLine":23,"endColumn":57},{"ruleId":"256","severity":1,"message":"257","line":9,"column":1,"nodeType":"258","endLine":19,"endColumn":2},{"ruleId":"277","severity":1,"message":"278","line":16,"column":13,"nodeType":"261","endLine":16,"endColumn":36},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":15,"endColumn":2},{"ruleId":"279","severity":1,"message":"280","line":11,"column":29,"nodeType":"281","messageId":"269","endLine":11,"endColumn":33},{"ruleId":"256","severity":1,"message":"257","line":10,"column":1,"nodeType":"258","endLine":149,"endColumn":3},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":30,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":17,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":206,"endColumn":2},{"ruleId":"270","severity":1,"message":"282","line":20,"column":8,"nodeType":"272","endLine":20,"endColumn":15,"suggestions":"283"},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":68,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":10,"column":1,"nodeType":"258","endLine":85,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":12,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":4,"column":1,"nodeType":"258","endLine":28,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":22,"endColumn":2},{"ruleId":"266","severity":1,"message":"267","line":9,"column":44,"nodeType":"268","messageId":"269","endLine":9,"endColumn":46},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":51,"endColumn":2},{"ruleId":"284","severity":1,"message":"285","line":19,"column":13,"nodeType":"261","messageId":"286","endLine":19,"endColumn":48,"fix":"287"},{"ruleId":"259","severity":1,"message":"260","line":20,"column":17,"nodeType":"261","endLine":20,"endColumn":127},{"ruleId":"266","severity":1,"message":"267","line":46,"column":93,"nodeType":"268","messageId":"269","endLine":46,"endColumn":95},{"ruleId":"256","severity":1,"message":"257","line":10,"column":1,"nodeType":"258","endLine":112,"endColumn":2},{"ruleId":"270","severity":1,"message":"274","line":18,"column":8,"nodeType":"272","endLine":18,"endColumn":16,"suggestions":"288"},{"ruleId":"256","severity":1,"message":"257","line":8,"column":1,"nodeType":"258","endLine":76,"endColumn":2},{"ruleId":"289","severity":1,"message":"290","line":10,"column":11,"nodeType":"291","messageId":"292","endLine":10,"endColumn":18},{"ruleId":"270","severity":1,"message":"274","line":15,"column":8,"nodeType":"272","endLine":15,"endColumn":29,"suggestions":"293"},{"ruleId":"284","severity":1,"message":"285","line":61,"column":29,"nodeType":"261","messageId":"286","endLine":61,"endColumn":89,"fix":"294"},{"ruleId":"259","severity":1,"message":"260","line":62,"column":33,"nodeType":"261","endLine":66,"endColumn":35},{"ruleId":"256","severity":1,"message":"257","line":4,"column":1,"nodeType":"258","endLine":42,"endColumn":2},{"ruleId":"270","severity":1,"message":"295","line":23,"column":8,"nodeType":"272","endLine":23,"endColumn":31,"suggestions":"296"},{"ruleId":"297","severity":1,"message":"298","line":17,"column":27,"nodeType":"281","messageId":"299","endLine":17,"endColumn":69},{"ruleId":"300","severity":1,"message":"301","line":20,"column":13,"nodeType":"302","messageId":"303","endLine":20,"endColumn":47},{"ruleId":"270","severity":1,"message":"304","line":19,"column":8,"nodeType":"272","endLine":19,"endColumn":13,"suggestions":"305"},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":29,"endColumn":2},{"ruleId":"270","severity":1,"message":"306","line":19,"column":43,"nodeType":"291","endLine":19,"endColumn":50},{"ruleId":"270","severity":1,"message":"307","line":20,"column":8,"nodeType":"272","endLine":20,"endColumn":29,"suggestions":"308"},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":58,"endColumn":3},{"ruleId":"270","severity":1,"message":"309","line":51,"column":8,"nodeType":"272","endLine":51,"endColumn":32,"suggestions":"310"},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":41,"endColumn":3},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":26,"endColumn":2},{"ruleId":"270","severity":1,"message":"311","line":19,"column":8,"nodeType":"272","endLine":19,"endColumn":28,"suggestions":"312"},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":67,"endColumn":2},{"ruleId":"270","severity":1,"message":"313","line":45,"column":8,"nodeType":"272","endLine":45,"endColumn":33,"suggestions":"314"},{"ruleId":"270","severity":1,"message":"315","line":54,"column":39,"nodeType":"291","endLine":54,"endColumn":46},{"ruleId":"270","severity":1,"message":"316","line":55,"column":8,"nodeType":"272","endLine":55,"endColumn":33,"suggestions":"317"},{"ruleId":"256","severity":1,"message":"257","line":8,"column":1,"nodeType":"258","endLine":85,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":46,"endColumn":2},{"ruleId":"270","severity":1,"message":"318","line":23,"column":8,"nodeType":"272","endLine":23,"endColumn":10,"suggestions":"319"},{"ruleId":"266","severity":1,"message":"267","line":32,"column":50,"nodeType":"268","messageId":"269","endLine":32,"endColumn":52},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":64,"endColumn":2},{"ruleId":"270","severity":1,"message":"320","line":22,"column":8,"nodeType":"272","endLine":22,"endColumn":15,"suggestions":"321"},{"ruleId":"270","severity":1,"message":"322","line":31,"column":29,"nodeType":"291","endLine":31,"endColumn":36},{"ruleId":"270","severity":1,"message":"323","line":32,"column":8,"nodeType":"272","endLine":32,"endColumn":23,"suggestions":"324"},{"ruleId":"256","severity":1,"message":"257","line":2,"column":1,"nodeType":"258","endLine":14,"endColumn":2},{"ruleId":"279","severity":1,"message":"280","line":8,"column":16,"nodeType":"281","messageId":"269","endLine":8,"endColumn":20},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":55,"endColumn":2},"import/no-anonymous-default-export","Assign arrow function to a variable before exporting as module default","ExportDefaultDeclaration","jsx-a11y/alt-text","img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.","JSXOpeningElement","array-callback-return","Array.prototype.map() expects a value to be returned at the end of arrow function.","ArrowFunctionExpression","expectedAtEnd","eqeqeq","Expected '===' and instead saw '=='.","BinaryExpression","unexpected","react-hooks/exhaustive-deps","React Hook useEffect has missing dependencies: 'currentFilters.length' and 'selectedRecordIds.length'. Either include them or remove the dependency array.","ArrayExpression",["325"],"React Hook useEffect has a missing dependency: 'refreshData'. Either include it or remove the dependency array.",["326"],["327"],"jsx-a11y/iframe-has-title","<iframe> elements must have a unique title property.","no-eval","eval can be harmful.","CallExpression","React Hook useEffect has missing dependencies: 'column?.dataType', 'column.optional', and 'column.options'. Either include them or remove the dependency array.",["328"],"react/jsx-no-target-blank","Using target=\"_blank\" without rel=\"noreferrer\" (which implies rel=\"noopener\") is a security risk in older browsers: see https://mathiasbynens.github.io/rel-noopener/#recommendations","noTargetBlankWithoutNoreferrer",{"range":"329","text":"330"},["331"],"no-unused-vars","'history' is assigned a value but never used.","Identifier","unusedVar",["332"],{"range":"333","text":"330"},"React Hook useEffect has missing dependencies: 'panel.latitudeField', 'panel.longitudeField', 'panel.query', 'panel.zoom', and 'view.primaryId'. Either include them or remove the dependency array. Outer scope values like 'window.google' aren't valid dependencies because mutating them doesn't re-render the component.",["334"],"no-new-func","The Function constructor is eval.","noFunctionConstructor","no-throw-literal","Expected an error object to be thrown.","ThrowStatement","object","React Hook useEffect has a missing dependency: 'handler'. Either include it or remove the dependency array. If 'handler' changes too often, find the parent component that defines it and wrap that definition in useCallback.",["335"],"The ref value 'colorPicker.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'colorPicker.current' to a variable inside the effect, and use that variable in the cleanup function.","React Hook useEffect has missing dependencies: 'column.name', 'initialData', and 'onChange'. Either include them or remove the dependency array. Mutable values like 'colorPicker.current' aren't valid dependencies because mutating them doesn't re-render the component.",["336"],"React Hook useEffect has missing dependencies: 'column.contentField', 'column.htmlField', 'initialData', and 'onChange'. Either include them or remove the dependency array. Mutable values like 'quillContainer.current' aren't valid dependencies because mutating them doesn't re-render the component.",["337"],"React Hook useEffect has missing dependencies: 'column.name', 'initialData', 'onChange', and 'withTime'. Either include them or remove the dependency array. Mutable values like 'datepicker.current' aren't valid dependencies because mutating them doesn't re-render the component.",["338"],"React Hook useEffect has missing dependencies: 'column' and 'onChange'. Either include them or remove the dependency array. Mutable values like 'googleMapsInput.current' aren't valid dependencies because mutating them doesn't re-render the component.",["339"],"The ref value 'googleMapsInput.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'googleMapsInput.current' to a variable inside the effect, and use that variable in the cleanup function.","React Hook useEffect has an unnecessary dependency: 'googleMapsInput.current'. Either exclude it or remove the dependency array. Mutable values like 'googleMapsInput.current' aren't valid dependencies because mutating them doesn't re-render the component.",["340"],"React Hook useEffect has missing dependencies: 'column.__id__', 'column.name', 'column.optional', 'initialData', 'onChange', and 'viewIndex'. Either include them or remove the dependency array. If 'onChange' changes too often, find the parent component that defines it and wrap that definition in useCallback.",["341"],"React Hook useEffect has missing dependencies: 'column.__id__' and 'viewIndex'. Either include them or remove the dependency array.",["342"],"The ref value 'input.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'input.current' to a variable inside the effect, and use that variable in the cleanup function.","React Hook useEffect has an unnecessary dependency: 'input.current'. Either exclude it or remove the dependency array. Mutable values like 'input.current' aren't valid dependencies because mutating them doesn't re-render the component.",["343"],{"desc":"344","fix":"345"},{"desc":"346","fix":"347"},{"desc":"348","fix":"349"},{"desc":"350","fix":"351"},[1055,1055]," rel=\"noreferrer\"",{"desc":"352","fix":"353"},{"desc":"354","fix":"355"},[2020,2020],{"desc":"356","fix":"357"},{"desc":"358","fix":"359"},{"desc":"360","fix":"361"},{"desc":"362","fix":"363"},{"desc":"364","fix":"365"},{"desc":"366","fix":"367"},{"desc":"368","fix":"369"},{"desc":"370","fix":"371"},{"desc":"372","fix":"373"},{"desc":"368","fix":"374"},"Update the dependencies array to be: [currentFilters.length, selectedRecordIds.length, viewIndex]",{"range":"375","text":"376"},"Update the dependencies array to be: [viewIndex, subviewIndex, page, query, currentFilters, orderBy, isDesc, refreshData]",{"range":"377","text":"378"},"Update the dependencies array to be: [viewIndex, recordId, refreshData]",{"range":"379","text":"380"},"Update the dependencies array to be: [column?.dataType, column.optional, column.options, field]",{"range":"381","text":"382"},"Update the dependencies array to be: [record, refreshData]",{"range":"383","text":"384"},"Update the dependencies array to be: [panel.query, record, refreshData]",{"range":"385","text":"386"},"Update the dependencies array to be: [panel.latitudeField, panel.longitudeField, panel.query, panel.zoom, record, view.primaryId]",{"range":"387","text":"388"},"Update the dependencies array to be: [handler, ref]",{"range":"389","text":"390"},"Update the dependencies array to be: [column.name, initialData, onChange]",{"range":"391","text":"392"},"Update the dependencies array to be: [column.contentField, column.htmlField, initialData, onChange]",{"range":"393","text":"394"},"Update the dependencies array to be: [column.name, initialData, onChange, withTime]",{"range":"395","text":"396"},"Update the dependencies array to be: [column, onChange]",{"range":"397","text":"398"},"Update the dependencies array to be: []",{"range":"399","text":"400"},"Update the dependencies array to be: [column.__id__, column.name, column.optional, initialData, onChange, viewIndex]",{"range":"401","text":"402"},"Update the dependencies array to be: [column.__id__, query, viewIndex]",{"range":"403","text":"404"},{"range":"405","text":"400"},[1710,1721],"[currentFilters.length, selectedRecordIds.length, viewIndex]",[1950,2021],"[viewIndex, subviewIndex, page, query, currentFilters, orderBy, isDesc, refreshData]",[941,962],"[viewIndex, recordId, refreshData]",[835,842],"[column?.dataType, column.optional, column.options, field]",[542,550],"[record, refreshData]",[359,380],"[panel.query, record, refreshData]",[776,799],"[panel.latitudeField, panel.longitudeField, panel.query, panel.zoom, record, view.primaryId]",[604,609],"[handler, ref]",[695,716],"[column.name, initialData, onChange]",[1877,1901],"[column.contentField, column.htmlField, initialData, onChange]",[717,737],"[column.name, initialData, onChange, withTime]",[2440,2465],"[column, onChange]",[2826,2851],"[]",[724,726],"[column.__id__, column.name, column.optional, initialData, onChange, viewIndex]",[620,627],"[column.__id__, query, viewIndex]",[972,987]]
1
+ [{"/home/runner/work/galadmin/galadmin/src/front/src/index.js":"1","/home/runner/work/galadmin/galadmin/src/front/src/App.js":"2","/home/runner/work/galadmin/galadmin/src/front/src/components/Sidebar.js":"3","/home/runner/work/galadmin/galadmin/src/front/src/components/RedirectToFirstView.js":"4","/home/runner/work/galadmin/galadmin/src/front/src/pages/CreateRecord.js":"5","/home/runner/work/galadmin/galadmin/src/front/src/pages/EditRecord.js":"6","/home/runner/work/galadmin/galadmin/src/front/src/pages/Records.js":"7","/home/runner/work/galadmin/galadmin/src/front/src/pages/Record.js":"8","/home/runner/work/galadmin/galadmin/src/front/src/pages/Login.js":"9","/home/runner/work/galadmin/galadmin/src/front/src/pages/Iframe.js":"10","/home/runner/work/galadmin/galadmin/src/front/src/pages/CustomView.js":"11","/home/runner/work/galadmin/galadmin/src/front/src/contexts/ConfigContext.js":"12","/home/runner/work/galadmin/galadmin/src/front/src/components/Input.js":"13","/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadButton.js":"14","/home/runner/work/galadmin/galadmin/src/front/src/components/LabelTooltip.js":"15","/home/runner/work/galadmin/galadmin/src/front/src/components/AddFilterButton.js":"16","/home/runner/work/galadmin/galadmin/src/front/src/components/BulkActionsButton.js":"17","/home/runner/work/galadmin/galadmin/src/front/src/components/ActionsButton.js":"18","/home/runner/work/galadmin/galadmin/src/front/src/components/BackButton.js":"19","/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadTablePanelButton.js":"20","/home/runner/work/galadmin/galadmin/src/front/src/utils/checkRequiredColumns.js":"21","/home/runner/work/galadmin/galadmin/src/front/src/utils/getFormattedValue.js":"22","/home/runner/work/galadmin/galadmin/src/front/src/components/panels/TablePanel.js":"23","/home/runner/work/galadmin/galadmin/src/front/src/components/panels/GalleryPanel.js":"24","/home/runner/work/galadmin/galadmin/src/front/src/components/panels/MapPanel.js":"25","/home/runner/work/galadmin/galadmin/src/front/src/components/CustomComponent.js":"26","/home/runner/work/galadmin/galadmin/src/front/src/components/OutsideClickHandler.js":"27","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ColorInput.js":"28","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/RichTextInput.js":"29","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/BetterRichTextInput.js":"30","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/DatetimeInput.js":"31","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/AddressInput.js":"32","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/FileInput.js":"33","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignSelectInput.js":"34","/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignDatalistInput.js":"35","/home/runner/work/galadmin/galadmin/src/front/src/utils/evalExpression.js":"36","/home/runner/work/galadmin/galadmin/src/front/src/components/UploadButton.js":"37"},{"size":219,"mtime":1706024424301,"results":"38","hashOfConfig":"39"},{"size":2340,"mtime":1706024424297,"results":"40","hashOfConfig":"39"},{"size":4725,"mtime":1706024424301,"results":"41","hashOfConfig":"39"},{"size":524,"mtime":1706024424301,"results":"42","hashOfConfig":"39"},{"size":4371,"mtime":1706024424301,"results":"43","hashOfConfig":"39"},{"size":3733,"mtime":1706024424301,"results":"44","hashOfConfig":"39"},{"size":10604,"mtime":1706024424301,"results":"45","hashOfConfig":"39"},{"size":4225,"mtime":1706024424301,"results":"46","hashOfConfig":"39"},{"size":1135,"mtime":1706024424301,"results":"47","hashOfConfig":"39"},{"size":404,"mtime":1706024424301,"results":"48","hashOfConfig":"39"},{"size":454,"mtime":1706024424301,"results":"49","hashOfConfig":"39"},{"size":1022,"mtime":1706024424301,"results":"50","hashOfConfig":"39"},{"size":5021,"mtime":1706024424301,"results":"51","hashOfConfig":"39"},{"size":895,"mtime":1706024424301,"results":"52","hashOfConfig":"39"},{"size":522,"mtime":1706024424301,"results":"53","hashOfConfig":"39"},{"size":10302,"mtime":1706024424297,"results":"54","hashOfConfig":"39"},{"size":2656,"mtime":1706024424297,"results":"55","hashOfConfig":"39"},{"size":3169,"mtime":1706024424297,"results":"56","hashOfConfig":"39"},{"size":217,"mtime":1706024424297,"results":"57","hashOfConfig":"39"},{"size":1128,"mtime":1706024424301,"results":"58","hashOfConfig":"39"},{"size":778,"mtime":1706024424301,"results":"59","hashOfConfig":"39"},{"size":2698,"mtime":1706024424305,"results":"60","hashOfConfig":"39"},{"size":4606,"mtime":1706024424301,"results":"61","hashOfConfig":"39"},{"size":2656,"mtime":1706024424301,"results":"62","hashOfConfig":"39"},{"size":1192,"mtime":1706024424301,"results":"63","hashOfConfig":"39"},{"size":1662,"mtime":1706024424301,"results":"64","hashOfConfig":"39"},{"size":826,"mtime":1706024424301,"results":"65","hashOfConfig":"39"},{"size":894,"mtime":1706024424301,"results":"66","hashOfConfig":"39"},{"size":2091,"mtime":1706024424301,"results":"67","hashOfConfig":"39"},{"size":1458,"mtime":1706024424301,"results":"68","hashOfConfig":"39"},{"size":886,"mtime":1706024424301,"results":"69","hashOfConfig":"39"},{"size":3092,"mtime":1706024424301,"results":"70","hashOfConfig":"39"},{"size":3297,"mtime":1706024424301,"results":"71","hashOfConfig":"39"},{"size":1461,"mtime":1706024424301,"results":"72","hashOfConfig":"39"},{"size":2088,"mtime":1706024424301,"results":"73","hashOfConfig":"39"},{"size":530,"mtime":1706024424305,"results":"74","hashOfConfig":"39"},{"size":1474,"mtime":1706024424301,"results":"75","hashOfConfig":"39"},{"filePath":"76","messages":"77","suppressedMessages":"78","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"jwkg5q",{"filePath":"79","messages":"80","suppressedMessages":"81","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"82","messages":"83","suppressedMessages":"84","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"85","messages":"86","suppressedMessages":"87","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"88","messages":"89","suppressedMessages":"90","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"91","messages":"92","suppressedMessages":"93","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"94","messages":"95","suppressedMessages":"96","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"97","messages":"98","suppressedMessages":"99","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"100","messages":"101","suppressedMessages":"102","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"103","messages":"104","suppressedMessages":"105","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"106","messages":"107","suppressedMessages":"108","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"109","messages":"110","suppressedMessages":"111","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"112","messages":"113","suppressedMessages":"114","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"115","messages":"116","suppressedMessages":"117","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"118","messages":"119","suppressedMessages":"120","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"121","messages":"122","suppressedMessages":"123","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"124","messages":"125","suppressedMessages":"126","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"127","messages":"128","suppressedMessages":"129","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"130","messages":"131","suppressedMessages":"132","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"133","messages":"134","suppressedMessages":"135","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"136","messages":"137","suppressedMessages":"138","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"139","messages":"140","suppressedMessages":"141","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"142","messages":"143","suppressedMessages":"144","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"145","messages":"146","suppressedMessages":"147","errorCount":0,"fatalErrorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"148","messages":"149","suppressedMessages":"150","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"151","messages":"152","suppressedMessages":"153","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"154","messages":"155","suppressedMessages":"156","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"157","messages":"158","suppressedMessages":"159","errorCount":0,"fatalErrorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"160","messages":"161","suppressedMessages":"162","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"163","messages":"164","suppressedMessages":"165","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"166","messages":"167","suppressedMessages":"168","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"169","messages":"170","suppressedMessages":"171","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"172","messages":"173","suppressedMessages":"174","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"175","messages":"176","suppressedMessages":"177","errorCount":0,"fatalErrorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"178","messages":"179","suppressedMessages":"180","errorCount":0,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"181","messages":"182","suppressedMessages":"183","errorCount":0,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"184","messages":"185","suppressedMessages":"186","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},"/home/runner/work/galadmin/galadmin/src/front/src/index.js",[],[],"/home/runner/work/galadmin/galadmin/src/front/src/App.js",[],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/Sidebar.js",["187","188","189","190"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/RedirectToFirstView.js",["191"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/CreateRecord.js",["192"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/EditRecord.js",["193"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Records.js",["194","195","196","197"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Record.js",["198","199"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Login.js",["200","201"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/Iframe.js",["202","203"],[],"/home/runner/work/galadmin/galadmin/src/front/src/pages/CustomView.js",["204"],[],"/home/runner/work/galadmin/galadmin/src/front/src/contexts/ConfigContext.js",["205"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/Input.js",["206"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadButton.js",["207"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/LabelTooltip.js",["208"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/AddFilterButton.js",["209","210"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/BulkActionsButton.js",["211"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/ActionsButton.js",["212"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/BackButton.js",["213"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/DownloadTablePanelButton.js",["214"],[],"/home/runner/work/galadmin/galadmin/src/front/src/utils/checkRequiredColumns.js",["215","216"],[],"/home/runner/work/galadmin/galadmin/src/front/src/utils/getFormattedValue.js",["217","218","219","220"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/panels/TablePanel.js",["221","222"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/panels/GalleryPanel.js",["223","224","225","226","227"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/panels/MapPanel.js",["228","229"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/CustomComponent.js",["230","231"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/OutsideClickHandler.js",["232"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ColorInput.js",["233","234","235"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/RichTextInput.js",["236","237"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/BetterRichTextInput.js",["238"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/DatetimeInput.js",["239","240"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/AddressInput.js",["241","242","243","244"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/FileInput.js",["245"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignSelectInput.js",["246","247","248"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/inputs/ForeignDatalistInput.js",["249","250","251","252"],[],"/home/runner/work/galadmin/galadmin/src/front/src/utils/evalExpression.js",["253","254"],[],"/home/runner/work/galadmin/galadmin/src/front/src/components/UploadButton.js",["255"],[],{"ruleId":"256","severity":1,"message":"257","line":19,"column":1,"nodeType":"258","endLine":104,"endColumn":2},{"ruleId":"259","severity":1,"message":"260","line":26,"column":28,"nodeType":"261","endLine":26,"endColumn":66},{"ruleId":"262","severity":1,"message":"263","line":29,"column":70,"nodeType":"264","messageId":"265","endLine":29,"endColumn":72},{"ruleId":"266","severity":1,"message":"267","line":79,"column":80,"nodeType":"268","messageId":"269","endLine":79,"endColumn":82},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":24,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":12,"column":1,"nodeType":"258","endLine":104,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":12,"column":1,"nodeType":"258","endLine":97,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":22,"column":1,"nodeType":"258","endLine":228,"endColumn":2},{"ruleId":"270","severity":1,"message":"271","line":51,"column":8,"nodeType":"272","endLine":51,"endColumn":19,"suggestions":"273"},{"ruleId":"270","severity":1,"message":"274","line":62,"column":8,"nodeType":"272","endLine":62,"endColumn":79,"suggestions":"275"},{"ruleId":"266","severity":1,"message":"267","line":189,"column":66,"nodeType":"268","messageId":"269","endLine":189,"endColumn":68},{"ruleId":"256","severity":1,"message":"257","line":16,"column":1,"nodeType":"258","endLine":89,"endColumn":2},{"ruleId":"270","severity":1,"message":"274","line":26,"column":8,"nodeType":"272","endLine":26,"endColumn":29,"suggestions":"276"},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":33,"endColumn":2},{"ruleId":"259","severity":1,"message":"260","line":23,"column":21,"nodeType":"261","endLine":23,"endColumn":57},{"ruleId":"256","severity":1,"message":"257","line":9,"column":1,"nodeType":"258","endLine":19,"endColumn":2},{"ruleId":"277","severity":1,"message":"278","line":16,"column":13,"nodeType":"261","endLine":16,"endColumn":36},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":15,"endColumn":2},{"ruleId":"279","severity":1,"message":"280","line":11,"column":29,"nodeType":"281","messageId":"269","endLine":11,"endColumn":33},{"ruleId":"256","severity":1,"message":"257","line":10,"column":1,"nodeType":"258","endLine":149,"endColumn":3},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":30,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":17,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":206,"endColumn":2},{"ruleId":"270","severity":1,"message":"282","line":20,"column":8,"nodeType":"272","endLine":20,"endColumn":15,"suggestions":"283"},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":68,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":10,"column":1,"nodeType":"258","endLine":85,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":12,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":4,"column":1,"nodeType":"258","endLine":28,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":22,"endColumn":2},{"ruleId":"266","severity":1,"message":"267","line":9,"column":44,"nodeType":"268","messageId":"269","endLine":9,"endColumn":46},{"ruleId":"256","severity":1,"message":"257","line":6,"column":1,"nodeType":"258","endLine":51,"endColumn":2},{"ruleId":"284","severity":1,"message":"285","line":19,"column":13,"nodeType":"261","messageId":"286","endLine":19,"endColumn":48,"fix":"287"},{"ruleId":"259","severity":1,"message":"260","line":20,"column":17,"nodeType":"261","endLine":20,"endColumn":127},{"ruleId":"266","severity":1,"message":"267","line":46,"column":93,"nodeType":"268","messageId":"269","endLine":46,"endColumn":95},{"ruleId":"256","severity":1,"message":"257","line":10,"column":1,"nodeType":"258","endLine":112,"endColumn":2},{"ruleId":"270","severity":1,"message":"274","line":18,"column":8,"nodeType":"272","endLine":18,"endColumn":16,"suggestions":"288"},{"ruleId":"256","severity":1,"message":"257","line":8,"column":1,"nodeType":"258","endLine":76,"endColumn":2},{"ruleId":"289","severity":1,"message":"290","line":10,"column":11,"nodeType":"291","messageId":"292","endLine":10,"endColumn":18},{"ruleId":"270","severity":1,"message":"274","line":15,"column":8,"nodeType":"272","endLine":15,"endColumn":29,"suggestions":"293"},{"ruleId":"284","severity":1,"message":"285","line":61,"column":29,"nodeType":"261","messageId":"286","endLine":61,"endColumn":89,"fix":"294"},{"ruleId":"259","severity":1,"message":"260","line":62,"column":33,"nodeType":"261","endLine":66,"endColumn":35},{"ruleId":"256","severity":1,"message":"257","line":4,"column":1,"nodeType":"258","endLine":42,"endColumn":2},{"ruleId":"270","severity":1,"message":"295","line":23,"column":8,"nodeType":"272","endLine":23,"endColumn":31,"suggestions":"296"},{"ruleId":"297","severity":1,"message":"298","line":17,"column":27,"nodeType":"281","messageId":"299","endLine":17,"endColumn":69},{"ruleId":"300","severity":1,"message":"301","line":20,"column":13,"nodeType":"302","messageId":"303","endLine":20,"endColumn":47},{"ruleId":"270","severity":1,"message":"304","line":19,"column":8,"nodeType":"272","endLine":19,"endColumn":13,"suggestions":"305"},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":29,"endColumn":2},{"ruleId":"270","severity":1,"message":"306","line":19,"column":43,"nodeType":"291","endLine":19,"endColumn":50},{"ruleId":"270","severity":1,"message":"307","line":20,"column":8,"nodeType":"272","endLine":20,"endColumn":29,"suggestions":"308"},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":58,"endColumn":3},{"ruleId":"270","severity":1,"message":"309","line":51,"column":8,"nodeType":"272","endLine":51,"endColumn":32,"suggestions":"310"},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":41,"endColumn":3},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":26,"endColumn":2},{"ruleId":"270","severity":1,"message":"311","line":19,"column":8,"nodeType":"272","endLine":19,"endColumn":28,"suggestions":"312"},{"ruleId":"256","severity":1,"message":"257","line":3,"column":1,"nodeType":"258","endLine":67,"endColumn":2},{"ruleId":"270","severity":1,"message":"313","line":45,"column":8,"nodeType":"272","endLine":45,"endColumn":33,"suggestions":"314"},{"ruleId":"270","severity":1,"message":"315","line":54,"column":39,"nodeType":"291","endLine":54,"endColumn":46},{"ruleId":"270","severity":1,"message":"316","line":55,"column":8,"nodeType":"272","endLine":55,"endColumn":33,"suggestions":"317"},{"ruleId":"256","severity":1,"message":"257","line":8,"column":1,"nodeType":"258","endLine":85,"endColumn":2},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":46,"endColumn":2},{"ruleId":"270","severity":1,"message":"318","line":23,"column":8,"nodeType":"272","endLine":23,"endColumn":10,"suggestions":"319"},{"ruleId":"266","severity":1,"message":"267","line":32,"column":50,"nodeType":"268","messageId":"269","endLine":32,"endColumn":52},{"ruleId":"256","severity":1,"message":"257","line":7,"column":1,"nodeType":"258","endLine":64,"endColumn":2},{"ruleId":"270","severity":1,"message":"320","line":22,"column":8,"nodeType":"272","endLine":22,"endColumn":15,"suggestions":"321"},{"ruleId":"270","severity":1,"message":"322","line":31,"column":29,"nodeType":"291","endLine":31,"endColumn":36},{"ruleId":"270","severity":1,"message":"323","line":32,"column":8,"nodeType":"272","endLine":32,"endColumn":23,"suggestions":"324"},{"ruleId":"256","severity":1,"message":"257","line":2,"column":1,"nodeType":"258","endLine":14,"endColumn":2},{"ruleId":"279","severity":1,"message":"280","line":8,"column":16,"nodeType":"281","messageId":"269","endLine":8,"endColumn":20},{"ruleId":"256","severity":1,"message":"257","line":5,"column":1,"nodeType":"258","endLine":55,"endColumn":2},"import/no-anonymous-default-export","Assign arrow function to a variable before exporting as module default","ExportDefaultDeclaration","jsx-a11y/alt-text","img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.","JSXOpeningElement","array-callback-return","Array.prototype.map() expects a value to be returned at the end of arrow function.","ArrowFunctionExpression","expectedAtEnd","eqeqeq","Expected '===' and instead saw '=='.","BinaryExpression","unexpected","react-hooks/exhaustive-deps","React Hook useEffect has missing dependencies: 'currentFilters.length' and 'selectedRecordIds.length'. Either include them or remove the dependency array.","ArrayExpression",["325"],"React Hook useEffect has a missing dependency: 'refreshData'. Either include it or remove the dependency array.",["326"],["327"],"jsx-a11y/iframe-has-title","<iframe> elements must have a unique title property.","no-eval","eval can be harmful.","CallExpression","React Hook useEffect has missing dependencies: 'column?.dataType', 'column.optional', and 'column.options'. Either include them or remove the dependency array.",["328"],"react/jsx-no-target-blank","Using target=\"_blank\" without rel=\"noreferrer\" (which implies rel=\"noopener\") is a security risk in older browsers: see https://mathiasbynens.github.io/rel-noopener/#recommendations","noTargetBlankWithoutNoreferrer",{"range":"329","text":"330"},["331"],"no-unused-vars","'history' is assigned a value but never used.","Identifier","unusedVar",["332"],{"range":"333","text":"330"},"React Hook useEffect has missing dependencies: 'panel.latitudeField', 'panel.longitudeField', 'panel.query', 'panel.zoom', and 'view.primaryId'. Either include them or remove the dependency array. Outer scope values like 'window.google' aren't valid dependencies because mutating them doesn't re-render the component.",["334"],"no-new-func","The Function constructor is eval.","noFunctionConstructor","no-throw-literal","Expected an error object to be thrown.","ThrowStatement","object","React Hook useEffect has a missing dependency: 'handler'. Either include it or remove the dependency array. If 'handler' changes too often, find the parent component that defines it and wrap that definition in useCallback.",["335"],"The ref value 'colorPicker.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'colorPicker.current' to a variable inside the effect, and use that variable in the cleanup function.","React Hook useEffect has missing dependencies: 'column.name', 'initialData', and 'onChange'. Either include them or remove the dependency array. Mutable values like 'colorPicker.current' aren't valid dependencies because mutating them doesn't re-render the component.",["336"],"React Hook useEffect has missing dependencies: 'column.contentField', 'column.htmlField', 'initialData', and 'onChange'. Either include them or remove the dependency array. Mutable values like 'quillContainer.current' aren't valid dependencies because mutating them doesn't re-render the component.",["337"],"React Hook useEffect has missing dependencies: 'column.name', 'initialData', 'onChange', and 'withTime'. Either include them or remove the dependency array. Mutable values like 'datepicker.current' aren't valid dependencies because mutating them doesn't re-render the component.",["338"],"React Hook useEffect has missing dependencies: 'column' and 'onChange'. Either include them or remove the dependency array. Mutable values like 'googleMapsInput.current' aren't valid dependencies because mutating them doesn't re-render the component.",["339"],"The ref value 'googleMapsInput.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'googleMapsInput.current' to a variable inside the effect, and use that variable in the cleanup function.","React Hook useEffect has an unnecessary dependency: 'googleMapsInput.current'. Either exclude it or remove the dependency array. Mutable values like 'googleMapsInput.current' aren't valid dependencies because mutating them doesn't re-render the component.",["340"],"React Hook useEffect has missing dependencies: 'column.__id__', 'column.name', 'column.optional', 'initialData', 'onChange', and 'viewIndex'. Either include them or remove the dependency array. If 'onChange' changes too often, find the parent component that defines it and wrap that definition in useCallback.",["341"],"React Hook useEffect has missing dependencies: 'column.__id__' and 'viewIndex'. Either include them or remove the dependency array.",["342"],"The ref value 'input.current' will likely have changed by the time this effect cleanup function runs. If this ref points to a node rendered by React, copy 'input.current' to a variable inside the effect, and use that variable in the cleanup function.","React Hook useEffect has an unnecessary dependency: 'input.current'. Either exclude it or remove the dependency array. Mutable values like 'input.current' aren't valid dependencies because mutating them doesn't re-render the component.",["343"],{"desc":"344","fix":"345"},{"desc":"346","fix":"347"},{"desc":"348","fix":"349"},{"desc":"350","fix":"351"},[1055,1055]," rel=\"noreferrer\"",{"desc":"352","fix":"353"},{"desc":"354","fix":"355"},[2020,2020],{"desc":"356","fix":"357"},{"desc":"358","fix":"359"},{"desc":"360","fix":"361"},{"desc":"362","fix":"363"},{"desc":"364","fix":"365"},{"desc":"366","fix":"367"},{"desc":"368","fix":"369"},{"desc":"370","fix":"371"},{"desc":"372","fix":"373"},{"desc":"368","fix":"374"},"Update the dependencies array to be: [currentFilters.length, selectedRecordIds.length, viewIndex]",{"range":"375","text":"376"},"Update the dependencies array to be: [viewIndex, subviewIndex, page, query, currentFilters, orderBy, isDesc, refreshData]",{"range":"377","text":"378"},"Update the dependencies array to be: [viewIndex, recordId, refreshData]",{"range":"379","text":"380"},"Update the dependencies array to be: [column?.dataType, column.optional, column.options, field]",{"range":"381","text":"382"},"Update the dependencies array to be: [record, refreshData]",{"range":"383","text":"384"},"Update the dependencies array to be: [panel.query, record, refreshData]",{"range":"385","text":"386"},"Update the dependencies array to be: [panel.latitudeField, panel.longitudeField, panel.query, panel.zoom, record, view.primaryId]",{"range":"387","text":"388"},"Update the dependencies array to be: [handler, ref]",{"range":"389","text":"390"},"Update the dependencies array to be: [column.name, initialData, onChange]",{"range":"391","text":"392"},"Update the dependencies array to be: [column.contentField, column.htmlField, initialData, onChange]",{"range":"393","text":"394"},"Update the dependencies array to be: [column.name, initialData, onChange, withTime]",{"range":"395","text":"396"},"Update the dependencies array to be: [column, onChange]",{"range":"397","text":"398"},"Update the dependencies array to be: []",{"range":"399","text":"400"},"Update the dependencies array to be: [column.__id__, column.name, column.optional, initialData, onChange, viewIndex]",{"range":"401","text":"402"},"Update the dependencies array to be: [column.__id__, query, viewIndex]",{"range":"403","text":"404"},{"range":"405","text":"400"},[1710,1721],"[currentFilters.length, selectedRecordIds.length, viewIndex]",[1950,2021],"[viewIndex, subviewIndex, page, query, currentFilters, orderBy, isDesc, refreshData]",[941,962],"[viewIndex, recordId, refreshData]",[835,842],"[column?.dataType, column.optional, column.options, field]",[542,550],"[record, refreshData]",[359,380],"[panel.query, record, refreshData]",[776,799],"[panel.latitudeField, panel.longitudeField, panel.query, panel.zoom, record, view.primaryId]",[604,609],"[handler, ref]",[695,716],"[column.name, initialData, onChange]",[1877,1901],"[column.contentField, column.htmlField, initialData, onChange]",[717,737],"[column.name, initialData, onChange, withTime]",[2440,2465],"[column, onChange]",[2826,2851],"[]",[724,726],"[column.__id__, column.name, column.optional, initialData, onChange, viewIndex]",[620,627],"[column.__id__, query, viewIndex]",[972,987]]
@@ -20,7 +20,8 @@ export type ColorColumn = {
20
20
  }
21
21
 
22
22
  export type StandardColumn = {
23
- name?: string
23
+ name?: string,
24
+ dataType?: string
24
25
  }
25
26
 
26
27
 
@@ -162,7 +163,7 @@ export type FormDataFile = {
162
163
  fieldName: string,
163
164
  originalFilename: string,
164
165
  path: string,
165
- headers: {[key: string]: string},
166
+ headers: { [key: string]: string },
166
167
  size: number
167
168
  }
168
169
 
@@ -171,6 +172,7 @@ export type TableView = {
171
172
  icon?: string,
172
173
  label: string,
173
174
  tableName: string,
175
+ primaryId?: string,
174
176
  customQuery?: string,
175
177
  selectExpression?: string,
176
178
  join?: string,