@apexcura/ui-components 0.0.12-Beta1 → 0.0.12-Beta10

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.
package/dist/index.js CHANGED
@@ -361,13 +361,31 @@ var ButtonElement = () => /* @__PURE__ */ import_react12.default.createElement(i
361
361
  // src/Components/AddMoreTable.tsx
362
362
  var import_react13 = __toESM(require("react"));
363
363
  var import_antd11 = require("antd");
364
+ var import_icons2 = require("@ant-design/icons");
364
365
  var AddMoreTable = (props) => {
365
366
  const { thead, tbody } = props;
366
367
  const [tableData, setTableData] = (0, import_react13.useState)({});
368
+ const [rows, setRows] = (0, import_react13.useState)(tbody || []);
369
+ function isColumnType(column) {
370
+ return column.dataIndex !== void 0;
371
+ }
367
372
  const onHandleChange = (name, value) => {
368
373
  setTableData((prev) => ({ ...prev, [name]: value }));
369
374
  console.log(tableData);
370
375
  };
376
+ const onHandleRows = () => {
377
+ const lastRow = rows[rows.length - 1];
378
+ const newId = lastRow ? lastRow.id + 1 : lastRow.id;
379
+ const newRow = {
380
+ ...lastRow,
381
+ id: newId
382
+ };
383
+ setRows((prevData) => [...prevData, newRow]);
384
+ };
385
+ const onHandleDelete = (index) => {
386
+ const remainingRows = rows.filter((eachRow) => eachRow.id !== index);
387
+ setRows(remainingRows);
388
+ };
371
389
  const columns = thead && thead.length > 0 ? thead.map((eachHeadEl) => ({
372
390
  title: eachHeadEl.label,
373
391
  dataIndex: eachHeadEl.name,
@@ -384,27 +402,33 @@ var AddMoreTable = (props) => {
384
402
  return null;
385
403
  }
386
404
  };
387
- const dataSource = tbody && tbody.length > 0 ? tbody.map((eachRow, index) => {
405
+ const dataSource = rows.map((eachRow, index) => {
388
406
  const rowElements = {};
389
407
  if (eachRow.element && eachRow.label) {
390
408
  rowElements[eachRow.label] = renderInputElement(eachRow);
391
409
  }
392
410
  const variableData = eachRow.variable_data && Array.isArray(eachRow.variable_data) ? eachRow.variable_data.reduce((acc, curr) => {
393
- if (!curr.label || !curr.element) {
394
- console.error(`Invalid element in row ${index}:`, curr);
395
- return acc;
396
- }
397
- acc[curr.label] = renderInputElement(curr);
411
+ Object.values(curr).forEach((key) => {
412
+ console.log(key);
413
+ });
398
414
  return acc;
399
415
  }, {}) : {};
400
416
  return {
401
417
  key: index.toString(),
418
+ "#": index + 1,
402
419
  ...eachRow,
403
420
  ...rowElements,
404
- ...variableData
421
+ ...variableData,
422
+ actions: /* @__PURE__ */ import_react13.default.createElement(import_react13.default.Fragment, null, /* @__PURE__ */ import_react13.default.createElement("button", { onClick: () => onHandleDelete(eachRow.id) }, /* @__PURE__ */ import_react13.default.createElement(import_icons2.DeleteOutlined, null)), index === rows.length - 1 && /* @__PURE__ */ import_react13.default.createElement("button", { onClick: onHandleRows }, /* @__PURE__ */ import_react13.default.createElement(import_icons2.PlusOutlined, null)))
405
423
  };
406
- }) : [];
407
- console.log("dataSource.........", dataSource);
424
+ });
425
+ if (!columns.some((col) => isColumnType(col) && col.dataIndex === "actions")) {
426
+ columns.push({
427
+ title: "Actions",
428
+ dataIndex: "actions",
429
+ key: "actions"
430
+ });
431
+ }
408
432
  return /* @__PURE__ */ import_react13.default.createElement(import_react13.default.Fragment, null, /* @__PURE__ */ import_react13.default.createElement(
409
433
  import_antd11.Table,
410
434
  {
package/dist/index.mjs CHANGED
@@ -314,13 +314,31 @@ var ButtonElement = () => /* @__PURE__ */ React11.createElement(Flex2, { gap: "s
314
314
  // src/Components/AddMoreTable.tsx
315
315
  import React12, { useState as useState3 } from "react";
316
316
  import { Table } from "antd";
317
+ import { PlusOutlined, DeleteOutlined } from "@ant-design/icons";
317
318
  var AddMoreTable = (props) => {
318
319
  const { thead, tbody } = props;
319
320
  const [tableData, setTableData] = useState3({});
321
+ const [rows, setRows] = useState3(tbody || []);
322
+ function isColumnType(column) {
323
+ return column.dataIndex !== void 0;
324
+ }
320
325
  const onHandleChange = (name, value) => {
321
326
  setTableData((prev) => ({ ...prev, [name]: value }));
322
327
  console.log(tableData);
323
328
  };
329
+ const onHandleRows = () => {
330
+ const lastRow = rows[rows.length - 1];
331
+ const newId = lastRow ? lastRow.id + 1 : lastRow.id;
332
+ const newRow = {
333
+ ...lastRow,
334
+ id: newId
335
+ };
336
+ setRows((prevData) => [...prevData, newRow]);
337
+ };
338
+ const onHandleDelete = (index) => {
339
+ const remainingRows = rows.filter((eachRow) => eachRow.id !== index);
340
+ setRows(remainingRows);
341
+ };
324
342
  const columns = thead && thead.length > 0 ? thead.map((eachHeadEl) => ({
325
343
  title: eachHeadEl.label,
326
344
  dataIndex: eachHeadEl.name,
@@ -337,27 +355,33 @@ var AddMoreTable = (props) => {
337
355
  return null;
338
356
  }
339
357
  };
340
- const dataSource = tbody && tbody.length > 0 ? tbody.map((eachRow, index) => {
358
+ const dataSource = rows.map((eachRow, index) => {
341
359
  const rowElements = {};
342
360
  if (eachRow.element && eachRow.label) {
343
361
  rowElements[eachRow.label] = renderInputElement(eachRow);
344
362
  }
345
363
  const variableData = eachRow.variable_data && Array.isArray(eachRow.variable_data) ? eachRow.variable_data.reduce((acc, curr) => {
346
- if (!curr.label || !curr.element) {
347
- console.error(`Invalid element in row ${index}:`, curr);
348
- return acc;
349
- }
350
- acc[curr.label] = renderInputElement(curr);
364
+ Object.values(curr).forEach((key) => {
365
+ console.log(key);
366
+ });
351
367
  return acc;
352
368
  }, {}) : {};
353
369
  return {
354
370
  key: index.toString(),
371
+ "#": index + 1,
355
372
  ...eachRow,
356
373
  ...rowElements,
357
- ...variableData
374
+ ...variableData,
375
+ actions: /* @__PURE__ */ React12.createElement(React12.Fragment, null, /* @__PURE__ */ React12.createElement("button", { onClick: () => onHandleDelete(eachRow.id) }, /* @__PURE__ */ React12.createElement(DeleteOutlined, null)), index === rows.length - 1 && /* @__PURE__ */ React12.createElement("button", { onClick: onHandleRows }, /* @__PURE__ */ React12.createElement(PlusOutlined, null)))
358
376
  };
359
- }) : [];
360
- console.log("dataSource.........", dataSource);
377
+ });
378
+ if (!columns.some((col) => isColumnType(col) && col.dataIndex === "actions")) {
379
+ columns.push({
380
+ title: "Actions",
381
+ dataIndex: "actions",
382
+ key: "actions"
383
+ });
384
+ }
361
385
  return /* @__PURE__ */ React12.createElement(React12.Fragment, null, /* @__PURE__ */ React12.createElement(
362
386
  Table,
363
387
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apexcura/ui-components",
3
- "version": "0.0.12-Beta1",
3
+ "version": "0.0.12-Beta10",
4
4
  "description": "Apex cura React components library",
5
5
  "keywords": [
6
6
  "apex cura",