Apply a package script
export NEXT_PUBLIC_GQL_PATH=localhost:3006/gql; node package-name.cjs
Create a snapshot
cd packages/deeplinks && npm run snapshot:create && cd ../..;
Load the last snapshot
cd packages/deeplinks && npm run snapshot:last && cd ../..;
Clear
npm run local-unmigrate; npm run docker-clear; npm run rm-migrates; npm run local-engine; npm run local-migrate;
иногда если удалил докеры, миграции продолжают помнить что они были накатаны и не позволят накотиться повторно, эта команда очищает память о том что миграции были
npm run rm-migrate
Временно для разработки payments-eacq : Загрузить последний снепшот, юзнуть пакеты
export NEXT_PUBLIC_GQL_PATH="localhost:3006/gql"; cd packages/deeplinks; npm run snapshot:last; cd ../../; sleep 5; node payments.cjs; node payments-eacq.cjs;
Просмотреть лог хендлеров:
js_docker_isolation_provider_container_id=$(docker ps | grep "js-docker-isolation-provider" | perl -pe "s~(?<save>\S+).+~$+{save}~"); docker logs $js_docker_isolation_provider_container_id
Apply a package script
export NEXT_PUBLIC_GQL_PATH=$(echo $(gp url 3006) | awk -F[/:] '{print $4}')/gql; node ./payments.cjs; node ./payments-eacq.cjs
Clear
npm run gitpod-unmigrate; npm run docker-clear; npm run rm-migrates; npm run gitpod-engine; npm run gitpod-migrate;
Load last snapshot, git pull, apply payments, payments-eacq scripts
cd packages/deeplinks && npm run snapshot:last &&
cd ../.. &&
git pull &&
export NEXT_PUBLIC_GQL_PATH=$(echo $(gp url 3006) | awk -F[/:] '{print $4}')/gql &&
sleep 2 &&
node ./payments.cjs &&
node ./payments-tinkoff-c2b.cjs &&
node ./payments-tinkoff-c2b-cancelling.cjs;
Get a link that is pointed by a contain link with specific string
const id = ID;
const containTypeLinkId = await deep.id('@deep-foundation/core', 'Contain');
const {data: [containLink]} = await deep.select({to_id: id, type_id: contain});
const query = await deep.select({
id: await deep.id('@deep-foundation/payments-eacq', "payInsertHandlerFile")
});
const link = query.data[0]
Update a value of a link
const linkId = PLACEHOLDER;
const value = PLACEHOLDER;
await deep.update({link_id: {_eq: linkId}}, {value: value}, {table: (typeof value) + 's'})
Get a link whose value contains an object
const obj = {key: value};
await deep.select({
object: {value: {_contains: obj}}
});
Login as an admin:
const adminId = await deep.id('deep', 'admin');
await deep.login({linkId: adminId});
// From scratch
const unloginedDeep = new DeepClient({ apolloClient });
const guest = await unloginedDeep.guest();
const guestDeep = new DeepClient({ deep: unloginedDeep, ...guest });
const admin = await guestDeep.login({
linkId: await guestDeep.id('deep', 'admin'),
});
const deep = new DeepClient({ deep: guestDeep, ...admin });
Create a value link
await deep.insert({link_id:876 , value: "name"},{table: "strings"})
await deep.insert({link_id: 877, value: {a: 1}}, {table: "objects"})
Query package links higher up the tree
{
"up": {
"tree_id": {
"_id": [
"@deep-foundation/core",
"containTree"
]
},
"parent_id": {
"_id": [
"@deep-foundation/name"
]
}
}
}