diff --git a/imports/ui/App.jsx b/imports/ui/App.jsx index 2758c7c..7c61d62 100644 --- a/imports/ui/App.jsx +++ b/imports/ui/App.jsx @@ -14,23 +14,30 @@ const AfegirPoblacio = () => { return Carregant...} >
{ - Meteor.callAsync('user.addToDataDay', - { - date: new Date(), - memo: d.get('memo'), - longmemo: d.get('longmemo') + try { + Meteor.callAsync('afigPoble', + { + createdAt: new Date(), + nomPoble: d.get('nomPoble'), + cp: d.get('cp') || "", + comarca: d.get('comarca') || "", + } + ).catch(err => console.error(err)); + } catch (err) { + alert(err); + console.error(err); } - ).catch(err => console.error(err)) + }}> -
+


- +
; diff --git a/package-lock.json b/package-lock.json index af0431c..82505d1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,8 +8,8 @@ "dependencies": { "@babel/runtime": "^7.20.7", "meteor-node-stubs": "^1.2.5", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "19.0.0-rc.1", + "react-dom": "19.0.0-rc.1", "react-router-dom": "^6.28.0" } }, @@ -34,24 +34,6 @@ "node": ">=14.0.0" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "license": "MIT" - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "license": "MIT", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, "node_modules/meteor-node-stubs": { "version": "1.2.12", "resolved": "https://registry.npmjs.org/meteor-node-stubs/-/meteor-node-stubs-1.2.12.tgz", @@ -1222,43 +1204,24 @@ } }, "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "version": "19.0.0-rc.1", + "resolved": "https://registry.npmjs.org/react/-/react-19.0.0-rc.1.tgz", + "integrity": "sha512-NZKln+uyPuyHchzP07I6GGYFxdAoaKhehgpCa3ltJGzwE31OYumLeshGaitA1R/fS5d9D2qpZVwTFAr6zCLM9w==", "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - }, "engines": { "node": ">=0.10.0" } }, "node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "version": "19.0.0-rc.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.0.0-rc.1.tgz", + "integrity": "sha512-k8MfDX+4G+eaa1cXXI9QF4d+pQtYol3nx8vauqRWUEOPqC7NQn2qmEqUsLoSd28rrZUL+R3T2VC+kZ2Hyx1geQ==", "license": "MIT", "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" + "scheduler": "0.25.0-rc.1" }, "peerDependencies": { - "react": "^18.3.1" - } - }, - "node_modules/react-router": { - "version": "6.28.0", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.28.0.tgz", - "integrity": "sha512-HrYdIFqdrnhDw0PqG/AKjAqEqM7AvxCz0DQ4h2W8k6nqmc5uRBYDag0SBxx9iYz5G8gnuNVLzUe13wl9eAsXXg==", - "license": "MIT", - "dependencies": { - "@remix-run/router": "1.21.0" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "react": ">=16.8" + "react": "19.0.0-rc.1" } }, "node_modules/react-router-dom": { @@ -1278,6 +1241,21 @@ "react-dom": ">=16.8" } }, + "node_modules/react-router-dom/node_modules/react-router": { + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.28.0.tgz", + "integrity": "sha512-HrYdIFqdrnhDw0PqG/AKjAqEqM7AvxCz0DQ4h2W8k6nqmc5uRBYDag0SBxx9iYz5G8gnuNVLzUe13wl9eAsXXg==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.21.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, "node_modules/regenerator-runtime": { "version": "0.14.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", @@ -1285,13 +1263,10 @@ "license": "MIT" }, "node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - } + "version": "0.25.0-rc.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.25.0-rc.1.tgz", + "integrity": "sha512-fVinv2lXqYpKConAMdergOl5owd0rY1O4P/QTe0aWKCqGtu7VsCt1iqQFxSJtqK4Lci/upVSBpGwVC7eWcuS9Q==", + "license": "MIT" } } } diff --git a/package.json b/package.json index 2f9396d..718975b 100644 --- a/package.json +++ b/package.json @@ -10,8 +10,8 @@ "dependencies": { "@babel/runtime": "^7.20.7", "meteor-node-stubs": "^1.2.5", - "react": "^18.2.0", - "react-dom": "^18.2.0", + "react": "19.0.0-rc.1", + "react-dom": "19.0.0-rc.1", "react-router-dom": "^6.28.0" }, "meteor": { diff --git a/server/main.js b/server/main.js index 307c4c2..b79a9e1 100644 --- a/server/main.js +++ b/server/main.js @@ -1,5 +1,6 @@ import { Meteor } from 'meteor/meteor'; import { PoblesCollection } from '/imports/api/pobles.js'; +import { check } from "meteor/check"; async function insertPoble({ nomPoble, cp, comarca }) { await PoblesCollection.insertAsync({ nomPoble, cp, comarca, createdAt: new Date() }); @@ -177,4 +178,25 @@ Meteor.startup(async () => { Meteor.publish("pobles", function () { return PoblesCollection.find(); }); -}); + + + Meteor.methods({ + + 'afigPoble': async function (poble) { + try { + if (poble.nomPoble) { + return await PoblesCollection.insertAsync({ + ...poble, + usuari: Meteor.userId(), + createdAt: new Date() + }); + } else { + throw new Error("El nom del poble no és vàlid"); + } + } catch (e) { + console.error(e); + } + } + }); + +}); \ No newline at end of file