Skip to content

Instantly share code, notes, and snippets.

@FreePhoenix888
Last active December 16, 2022 20:20
Show Gist options
  • Save FreePhoenix888/30c694e3fc56caacc1a9bf9997abfa0f to your computer and use it in GitHub Desktop.
Save FreePhoenix888/30c694e3fc56caacc1a9bf9997abfa0f to your computer and use it in GitHub Desktop.

Local

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

Gitpod

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;

Deep Links

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"
      ]
    }
  }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment