added initial data
This commit is contained in:
@@ -10,6 +10,9 @@ tasks:
|
||||
db:drop:
|
||||
cmds:
|
||||
- pnpm drizzle-kit drop
|
||||
db:initializeData:
|
||||
cmds:
|
||||
- pnpm initialize_data
|
||||
studio:
|
||||
cmds:
|
||||
- pnpm drizzle-kit studio
|
||||
|
||||
27
addMetadata.ts
Normal file
27
addMetadata.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { db } from "./src/db";
|
||||
import { group, opinion, zone, province } from "./src/schema.ts";
|
||||
import { Groups, Opinions, Provinces, Districts } from "./initialData.ts";
|
||||
|
||||
async function main() {
|
||||
let groupValues = Groups.map((group) => ({ name: group }));
|
||||
await db.insert(group).values(groupValues);
|
||||
let opinionValues = Opinions.map((opinion) => ({
|
||||
name: opinion.name,
|
||||
type: opinion.choicemode,
|
||||
}));
|
||||
await db.insert(opinion).values(opinionValues);
|
||||
let provinceValues = Provinces.map((province) => ({
|
||||
id: province.code,
|
||||
name: province.name_th,
|
||||
}));
|
||||
await db.insert(province).values(provinceValues);
|
||||
const zoneValues = Districts.map((district) => ({
|
||||
id: district.code,
|
||||
name: district.name_th,
|
||||
province: district.province_code,
|
||||
}));
|
||||
await db.insert(zone).values(zoneValues);
|
||||
console.log("Done");
|
||||
}
|
||||
|
||||
main();
|
||||
6166
initialData.ts
Normal file
6166
initialData.ts
Normal file
File diff suppressed because it is too large
Load Diff
@@ -5,7 +5,8 @@
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1",
|
||||
"dev": "nodemon --exec ts-node --swc src/app.ts"
|
||||
"dev": "nodemon --exec ts-node --swc src/app.ts",
|
||||
"initialize_data": "node -r @swc-node/register addMetadata.ts"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
@@ -18,12 +19,15 @@
|
||||
"drizzle-orm": "^0.30.8",
|
||||
"drizzle-zod": "^0.5.1",
|
||||
"express": "^4.19.2",
|
||||
"jsonwebtoken": "^9.0.2",
|
||||
"trpc-playground": "^1.0.4",
|
||||
"zod": "^3.22.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@swc-node/register": "^1.9.0",
|
||||
"@swc/core": "^1.4.16",
|
||||
"@types/better-sqlite3": "^7.6.9",
|
||||
"@types/jsonwebtoken": "^9.0.6",
|
||||
"drizzle-kit": "^0.20.14",
|
||||
"nodemon": "^3.1.0",
|
||||
"ts-node": "^10.9.2",
|
||||
|
||||
134
pnpm-lock.yaml
generated
134
pnpm-lock.yaml
generated
@@ -26,6 +26,9 @@ dependencies:
|
||||
express:
|
||||
specifier: ^4.19.2
|
||||
version: 4.19.2
|
||||
jsonwebtoken:
|
||||
specifier: ^9.0.2
|
||||
version: 9.0.2
|
||||
trpc-playground:
|
||||
specifier: ^1.0.4
|
||||
version: 1.0.4(@trpc/server@10.45.2)(@types/node@20.12.7)(express@4.19.2)(typescript@5.4.5)(zod@3.22.4)
|
||||
@@ -34,12 +37,18 @@ dependencies:
|
||||
version: 3.22.4
|
||||
|
||||
devDependencies:
|
||||
'@swc-node/register':
|
||||
specifier: ^1.9.0
|
||||
version: 1.9.0(@swc/core@1.4.16)(@swc/types@0.1.6)(typescript@5.4.5)
|
||||
'@swc/core':
|
||||
specifier: ^1.4.16
|
||||
version: 1.4.16
|
||||
'@types/better-sqlite3':
|
||||
specifier: ^7.6.9
|
||||
version: 7.6.9
|
||||
'@types/jsonwebtoken':
|
||||
specifier: ^9.0.6
|
||||
version: 9.0.6
|
||||
drizzle-kit:
|
||||
specifier: ^0.20.14
|
||||
version: 0.20.14
|
||||
@@ -481,6 +490,43 @@ packages:
|
||||
'@jridgewell/sourcemap-codec': 1.4.15
|
||||
dev: true
|
||||
|
||||
/@swc-node/core@1.13.0(@swc/core@1.4.16)(@swc/types@0.1.6):
|
||||
resolution: {integrity: sha512-lFPD4nmy4ifAOVMChFjwlpXN5KQXvegqeyuzz1KQz42q1lf+cL3Qux1/GteGuZjh8HC+Rj1RdNrHpE/MCfJSTw==}
|
||||
engines: {node: '>= 10'}
|
||||
peerDependencies:
|
||||
'@swc/core': '>= 1.3'
|
||||
'@swc/types': '>= 0.1'
|
||||
dependencies:
|
||||
'@swc/core': 1.4.16
|
||||
'@swc/types': 0.1.6
|
||||
dev: true
|
||||
|
||||
/@swc-node/register@1.9.0(@swc/core@1.4.16)(@swc/types@0.1.6)(typescript@5.4.5):
|
||||
resolution: {integrity: sha512-i0iYInD4q5v3xQC6bKvs0QtfUxu197CU5qKALmpxEqTYs7sIhQ7KFLe3kP+eAR4gRkJTvAgjQgrokXLN2jZrOw==}
|
||||
peerDependencies:
|
||||
'@swc/core': '>= 1.3'
|
||||
typescript: '>= 4.3'
|
||||
dependencies:
|
||||
'@swc-node/core': 1.13.0(@swc/core@1.4.16)(@swc/types@0.1.6)
|
||||
'@swc-node/sourcemap-support': 0.5.0
|
||||
'@swc/core': 1.4.16
|
||||
colorette: 2.0.20
|
||||
debug: 4.3.4(supports-color@5.5.0)
|
||||
pirates: 4.0.6
|
||||
tslib: 2.6.2
|
||||
typescript: 5.4.5
|
||||
transitivePeerDependencies:
|
||||
- '@swc/types'
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@swc-node/sourcemap-support@0.5.0:
|
||||
resolution: {integrity: sha512-fbhjL5G0YvFoWwNhWleuBUfotiX+USiA9oJqu9STFw+Hb0Cgnddn+HVS/K5fI45mn92e8V+cHD2jgFjk4w2T9Q==}
|
||||
dependencies:
|
||||
source-map-support: 0.5.21
|
||||
tslib: 2.6.2
|
||||
dev: true
|
||||
|
||||
/@swc/core-darwin-arm64@1.4.16:
|
||||
resolution: {integrity: sha512-UOCcH1GvjRnnM/LWT6VCGpIk0OhHRq6v1U6QXuPt5wVsgXnXQwnf5k3sG5Cm56hQHDvhRPY6HCsHi/p0oek8oQ==}
|
||||
engines: {node: '>=10'}
|
||||
@@ -665,6 +711,12 @@ packages:
|
||||
dependencies:
|
||||
'@types/node': 20.12.7
|
||||
|
||||
/@types/jsonwebtoken@9.0.6:
|
||||
resolution: {integrity: sha512-/5hndP5dCjloafCXns6SZyESp3Ldq7YjH3zwzwczYnjxIT0Fqzk5ROSYVGfFyczIue7IUEj8hkvLbPoLQ18vQw==}
|
||||
dependencies:
|
||||
'@types/node': 20.12.7
|
||||
dev: true
|
||||
|
||||
/@types/node@20.12.7:
|
||||
resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==}
|
||||
dependencies:
|
||||
@@ -784,6 +836,10 @@ packages:
|
||||
fill-range: 7.0.1
|
||||
dev: true
|
||||
|
||||
/buffer-equal-constant-time@1.0.1:
|
||||
resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==}
|
||||
dev: false
|
||||
|
||||
/buffer-from@1.1.2:
|
||||
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
|
||||
dev: true
|
||||
@@ -851,6 +907,10 @@ packages:
|
||||
timers-ext: 0.1.7
|
||||
dev: true
|
||||
|
||||
/colorette@2.0.20:
|
||||
resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
|
||||
dev: true
|
||||
|
||||
/commander@2.20.3:
|
||||
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
|
||||
dev: false
|
||||
@@ -1110,6 +1170,12 @@ packages:
|
||||
zod: 3.22.4
|
||||
dev: false
|
||||
|
||||
/ecdsa-sig-formatter@1.0.11:
|
||||
resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==}
|
||||
dependencies:
|
||||
safe-buffer: 5.2.1
|
||||
dev: false
|
||||
|
||||
/ee-first@1.1.1:
|
||||
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
|
||||
dev: false
|
||||
@@ -1551,6 +1617,65 @@ packages:
|
||||
dreamopt: 0.8.0
|
||||
dev: true
|
||||
|
||||
/jsonwebtoken@9.0.2:
|
||||
resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==}
|
||||
engines: {node: '>=12', npm: '>=6'}
|
||||
dependencies:
|
||||
jws: 3.2.2
|
||||
lodash.includes: 4.3.0
|
||||
lodash.isboolean: 3.0.3
|
||||
lodash.isinteger: 4.0.4
|
||||
lodash.isnumber: 3.0.3
|
||||
lodash.isplainobject: 4.0.6
|
||||
lodash.isstring: 4.0.1
|
||||
lodash.once: 4.1.1
|
||||
ms: 2.1.3
|
||||
semver: 7.6.0
|
||||
dev: false
|
||||
|
||||
/jwa@1.4.1:
|
||||
resolution: {integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==}
|
||||
dependencies:
|
||||
buffer-equal-constant-time: 1.0.1
|
||||
ecdsa-sig-formatter: 1.0.11
|
||||
safe-buffer: 5.2.1
|
||||
dev: false
|
||||
|
||||
/jws@3.2.2:
|
||||
resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==}
|
||||
dependencies:
|
||||
jwa: 1.4.1
|
||||
safe-buffer: 5.2.1
|
||||
dev: false
|
||||
|
||||
/lodash.includes@4.3.0:
|
||||
resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==}
|
||||
dev: false
|
||||
|
||||
/lodash.isboolean@3.0.3:
|
||||
resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==}
|
||||
dev: false
|
||||
|
||||
/lodash.isinteger@4.0.4:
|
||||
resolution: {integrity: sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==}
|
||||
dev: false
|
||||
|
||||
/lodash.isnumber@3.0.3:
|
||||
resolution: {integrity: sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==}
|
||||
dev: false
|
||||
|
||||
/lodash.isplainobject@4.0.6:
|
||||
resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
|
||||
dev: false
|
||||
|
||||
/lodash.isstring@4.0.1:
|
||||
resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==}
|
||||
dev: false
|
||||
|
||||
/lodash.once@4.1.1:
|
||||
resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==}
|
||||
dev: false
|
||||
|
||||
/lodash.throttle@4.1.1:
|
||||
resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==}
|
||||
dev: true
|
||||
@@ -1759,6 +1884,11 @@ packages:
|
||||
engines: {node: '>=8.6'}
|
||||
dev: true
|
||||
|
||||
/pirates@4.0.6:
|
||||
resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
|
||||
engines: {node: '>= 6'}
|
||||
dev: true
|
||||
|
||||
/postcss@8.4.38:
|
||||
resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==}
|
||||
engines: {node: ^10 || ^12 || >=14}
|
||||
@@ -2127,6 +2257,10 @@ packages:
|
||||
yn: 3.1.1
|
||||
dev: true
|
||||
|
||||
/tslib@2.6.2:
|
||||
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
|
||||
dev: true
|
||||
|
||||
/tunnel-agent@0.6.0:
|
||||
resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==}
|
||||
dependencies:
|
||||
|
||||
Reference in New Issue
Block a user