@foxtware/mineral 0.1.26 → 0.1.28

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.
Files changed (119) hide show
  1. package/.creds.yml.sample +22 -4
  2. package/AGENTS.md +17 -0
  3. package/api/fastsimon/.gitkeep +0 -0
  4. package/api/fastsimon/docs.md +14 -0
  5. package/api/fastsimon/fastsimon.constants.js +18 -0
  6. package/api/fastsimon/fastsimon.utils.js +246 -0
  7. package/api/fastsimon/fastsimonSearch.js +84 -0
  8. package/api/figma/docs.md +3 -3
  9. package/api/figma/figma.constants.js +1 -1
  10. package/api/figma/figma.utils.js +13 -2
  11. package/api/figma/figmaActivityLogsGet.js +44 -0
  12. package/api/figma/figmaAiUsageDailyGet.js +44 -0
  13. package/api/figma/figmaComponentGet.js +48 -0
  14. package/api/figma/figmaComponentSetGet.js +48 -0
  15. package/api/figma/figmaDevResourcesCreate.js +47 -0
  16. package/api/figma/figmaDevResourcesUpdate.js +47 -0
  17. package/api/figma/figmaDeveloperLogsCreate.js +47 -0
  18. package/api/figma/figmaDiscoveryGet.js +44 -0
  19. package/api/figma/figmaFileCommentCreate.js +50 -0
  20. package/api/figma/figmaFileCommentDelete.js +51 -0
  21. package/api/figma/figmaFileCommentReactionCreate.js +53 -0
  22. package/api/figma/figmaFileCommentReactionDelete.js +51 -0
  23. package/api/figma/figmaFileCommentReactionsGet.js +51 -0
  24. package/api/figma/figmaFileCommentsGet.js +48 -0
  25. package/api/figma/figmaFileComponentSetsGet.js +48 -0
  26. package/api/figma/figmaFileComponentsGet.js +48 -0
  27. package/api/figma/figmaFileDevResourceDelete.js +51 -0
  28. package/api/figma/figmaFileDevResourcesGet.js +48 -0
  29. package/api/figma/figmaFileGet.js +48 -0
  30. package/api/figma/figmaFileImageFillsGet.js +48 -0
  31. package/api/figma/figmaFileImagesGet.js +48 -0
  32. package/api/figma/figmaFileMetaGet.js +48 -0
  33. package/api/figma/figmaFileNodesGet.js +48 -0
  34. package/api/figma/figmaFileStylesGet.js +48 -0
  35. package/api/figma/figmaFileVersionsGet.js +48 -0
  36. package/api/figma/figmaFolderFilesGet.js +48 -0
  37. package/api/figma/figmaFolderFoldersGet.js +48 -0
  38. package/api/figma/figmaFolderMetaGet.js +48 -0
  39. package/api/figma/figmaGet.js +15 -63
  40. package/api/figma/figmaMeGet.js +53 -0
  41. package/api/figma/figmaOembedGet.js +44 -0
  42. package/api/figma/figmaPaymentsGet.js +44 -0
  43. package/api/figma/figmaProjectFilesGet.js +48 -0
  44. package/api/figma/figmaProjectMetaGet.js +48 -0
  45. package/api/figma/figmaStyleGet.js +48 -0
  46. package/api/figma/figmaTeamComponentSetsGet.js +48 -0
  47. package/api/figma/figmaTeamComponentsGet.js +48 -0
  48. package/api/figma/figmaTeamFoldersGet.js +48 -0
  49. package/api/figma/figmaTeamProjectsGet.js +48 -0
  50. package/api/figma/figmaTeamStylesGet.js +48 -0
  51. package/api/figma/figmaTeamWebhooksGet.js +47 -0
  52. package/api/figma/figmaVariablesLocalGet.js +48 -0
  53. package/api/figma/figmaVariablesPublishedGet.js +48 -0
  54. package/api/figma/figmaVariablesUpdate.js +50 -0
  55. package/api/figma/figmaWebhookCreate.js +47 -0
  56. package/api/figma/figmaWebhookDelete.js +48 -0
  57. package/api/figma/figmaWebhookGet.js +46 -0
  58. package/api/figma/figmaWebhookRequestsGet.js +47 -0
  59. package/api/figma/figmaWebhookUpdate.js +50 -0
  60. package/api/figma/figmaWebhooksGet.js +47 -0
  61. package/api/gorgias/gorgiasTicketCreate.js +1 -1
  62. package/api/gorgias/gorgiasTicketMessageCreate.js +1 -1
  63. package/api/gorgias/gorgiasTicketUpdate.js +1 -1
  64. package/api/linear/linearAttachmentCreate.js +1 -1
  65. package/api/linear/linearCommentCreate.js +1 -1
  66. package/api/linear/linearCommentUpdate.js +1 -1
  67. package/api/linear/linearIssueLabelCreate.js +1 -1
  68. package/api/linear/linearIssueUpdate.js +1 -1
  69. package/api/linear/linearProjectCreate.js +1 -1
  70. package/api/linear/linearProjectUpdate.js +1 -1
  71. package/api/linear/linearWebhookCreate.js +1 -1
  72. package/api/salesforce/salesforce.constants.js +13 -0
  73. package/api/salesforce/salesforce.utils.js +61 -0
  74. package/api/salesforce/salesforceAuthGet.js +115 -0
  75. package/api/salesforce/salesforceComposite.js +79 -0
  76. package/api/salesforce/salesforceCompositeBatch.js +73 -0
  77. package/api/salesforce/salesforceLimitsGet.js +55 -0
  78. package/api/salesforce/salesforceQuery.js +69 -0
  79. package/api/salesforce/salesforceQueryAll.js +62 -0
  80. package/api/salesforce/salesforceQueryMore.js +75 -0
  81. package/api/salesforce/salesforceRecentItemsGet.js +63 -0
  82. package/api/salesforce/salesforceResourcesGet.js +55 -0
  83. package/api/salesforce/salesforceSearch.js +62 -0
  84. package/api/salesforce/salesforceSobjectBasicInfoGet.js +81 -0
  85. package/api/salesforce/salesforceSobjectBlobGet.js +67 -0
  86. package/api/salesforce/salesforceSobjectCollectionCreate.js +78 -0
  87. package/api/salesforce/salesforceSobjectCollectionDelete.js +70 -0
  88. package/api/salesforce/salesforceSobjectCollectionGet.js +75 -0
  89. package/api/salesforce/salesforceSobjectCollectionUpdate.js +74 -0
  90. package/api/salesforce/salesforceSobjectCreate.js +66 -0
  91. package/api/salesforce/salesforceSobjectDelete.js +86 -0
  92. package/api/salesforce/salesforceSobjectDeleteByExternalId.js +91 -0
  93. package/api/salesforce/salesforceSobjectDeletedGet.js +71 -0
  94. package/api/salesforce/salesforceSobjectDescribe.js +81 -0
  95. package/api/salesforce/salesforceSobjectDescribeLayouts.js +64 -0
  96. package/api/salesforce/salesforceSobjectGet.js +93 -0
  97. package/api/salesforce/salesforceSobjectGetByExternalId.js +98 -0
  98. package/api/salesforce/salesforceSobjectTreeCreate.js +79 -0
  99. package/api/salesforce/salesforceSobjectUpdate.js +94 -0
  100. package/api/salesforce/salesforceSobjectUpdatedGet.js +71 -0
  101. package/api/salesforce/salesforceSobjectUpsert.js +74 -0
  102. package/api/salesforce/salesforceSobjectsDescribeGlobal.js +55 -0
  103. package/api/salesforce/salesforceVersionsGet.js +62 -0
  104. package/api/shopify/shopifyMetaobjectCreate.js +72 -0
  105. package/api/tableau/tableau.constants.js +8 -0
  106. package/api/tableau/tableau.utils.js +93 -0
  107. package/api/tableau/tableauGet.js +174 -0
  108. package/api/tableau/tableauUserAdd.js +16 -94
  109. package/api/tableau/tableauUsersGet.js +46 -134
  110. package/api/tagalys/docs.md +2 -2
  111. package/api/tagalys/tagalys.constants.js +17 -0
  112. package/api/tagalys/tagalys.utils.js +125 -0
  113. package/api/tagalys/tagalysAnalyticsEventSend.js +125 -0
  114. package/api/tagalys/tagalysCollectionGet.js +100 -0
  115. package/api/tagalys/tagalysPopularSearchesGet.js +60 -0
  116. package/api/tagalys/tagalysRecommendationGet.js +109 -0
  117. package/api/tagalys/tagalysSearch.js +82 -0
  118. package/api/tagalys/tagalysSearchSuggestionsGet.js +76 -0
  119. package/package.json +2 -1
@@ -0,0 +1,44 @@
1
+ // https://developers.figma.com/docs/rest-api/payments-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ]);
10
+
11
+ const figmaPaymentsGet = async (
12
+ credsPayload,
13
+ {
14
+ params,
15
+ fetchClient = figmaClient,
16
+ } = {},
17
+ ) => {
18
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
19
+ credsPayload
20
+ });
21
+ if (rejectResponse) {
22
+ return rejectResponse;
23
+ }
24
+
25
+ return fetchClient.fetch({
26
+ requestPayload: {
27
+ method: 'get',
28
+ url: `/v1/payments`,
29
+ params,
30
+ },
31
+ context: {
32
+ credsPayload,
33
+ },
34
+ });
35
+ };
36
+
37
+ const funcApiConfig = {
38
+ argsWarden,
39
+ };
40
+
41
+ module.exports = {
42
+ figmaPaymentsGet,
43
+ funcApiConfig,
44
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/projects-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['projectId'],
10
+ ]);
11
+
12
+ const figmaProjectFilesGet = async (
13
+ credsPayload,
14
+ projectId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ projectId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/projects/${ projectId }/files`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaProjectFilesGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/projects-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['projectId'],
10
+ ]);
11
+
12
+ const figmaProjectMetaGet = async (
13
+ credsPayload,
14
+ projectId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ projectId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/projects/${ projectId }/meta`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaProjectMetaGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/component-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['key'],
10
+ ]);
11
+
12
+ const figmaStyleGet = async (
13
+ credsPayload,
14
+ key,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ key,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/styles/${ key }`,
32
+
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaStyleGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/component-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['teamId'],
10
+ ]);
11
+
12
+ const figmaTeamComponentSetsGet = async (
13
+ credsPayload,
14
+ teamId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ teamId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/teams/${ teamId }/component_sets`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaTeamComponentSetsGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/component-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['teamId'],
10
+ ]);
11
+
12
+ const figmaTeamComponentsGet = async (
13
+ credsPayload,
14
+ teamId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ teamId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/teams/${ teamId }/components`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaTeamComponentsGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/projects-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['teamId'],
10
+ ]);
11
+
12
+ const figmaTeamFoldersGet = async (
13
+ credsPayload,
14
+ teamId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ teamId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v2/teams/${ teamId }/folders`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaTeamFoldersGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/projects-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['teamId'],
10
+ ]);
11
+
12
+ const figmaTeamProjectsGet = async (
13
+ credsPayload,
14
+ teamId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ teamId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/teams/${ teamId }/projects`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaTeamProjectsGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/component-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['teamId'],
10
+ ]);
11
+
12
+ const figmaTeamStylesGet = async (
13
+ credsPayload,
14
+ teamId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ teamId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/teams/${ teamId }/styles`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaTeamStylesGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,47 @@
1
+ // https://developers.figma.com/docs/rest-api/webhooks-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['teamId'],
10
+ ]);
11
+
12
+ const figmaTeamWebhooksGet = async (
13
+ credsPayload,
14
+ teamId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ teamId
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v2/teams/${ teamId }/webhooks`,
32
+ params,
33
+ },
34
+ context: {
35
+ credsPayload,
36
+ },
37
+ });
38
+ };
39
+
40
+ const funcApiConfig = {
41
+ argsWarden,
42
+ };
43
+
44
+ module.exports = {
45
+ figmaTeamWebhooksGet,
46
+ funcApiConfig,
47
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/variables-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['fileKey'],
10
+ ]);
11
+
12
+ const figmaVariablesLocalGet = async (
13
+ credsPayload,
14
+ fileKey,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ fileKey,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/files/${ fileKey }/variables/local`,
32
+
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaVariablesLocalGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/variables-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['fileKey'],
10
+ ]);
11
+
12
+ const figmaVariablesPublishedGet = async (
13
+ credsPayload,
14
+ fileKey,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ fileKey,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v1/files/${ fileKey }/variables/published`,
32
+
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaVariablesPublishedGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,50 @@
1
+ // https://developers.figma.com/docs/rest-api/variables-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['fileKey'],
10
+ ['variablesPayload', Boolean],
11
+ ]);
12
+
13
+ const figmaVariablesUpdate = async (
14
+ credsPayload,
15
+ fileKey,
16
+ variablesPayload,
17
+ {
18
+ params,
19
+ fetchClient = figmaClient,
20
+ } = {},
21
+ ) => {
22
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
23
+ credsPayload,
24
+ fileKey,
25
+ variablesPayload
26
+ });
27
+ if (rejectResponse) {
28
+ return rejectResponse;
29
+ }
30
+
31
+ return fetchClient.fetch({
32
+ requestPayload: {
33
+ method: 'post',
34
+ url: `/files/${ fileKey }/variables`,
35
+ body: variablesPayload,
36
+ },
37
+ context: {
38
+ credsPayload,
39
+ },
40
+ });
41
+ };
42
+
43
+ const funcApiConfig = {
44
+ argsWarden,
45
+ };
46
+
47
+ module.exports = {
48
+ figmaVariablesUpdate,
49
+ funcApiConfig,
50
+ };
@@ -0,0 +1,47 @@
1
+ // https://developers.figma.com/docs/rest-api/webhooks-endpoints/
2
+
3
+ const { ArgsWarden } = require('../utils');
4
+ const { credsValidator } = require('../validators');
5
+ const { figmaClient } = require('../figma/figma.utils');
6
+
7
+ const argsWarden = new ArgsWarden([
8
+ ['credsPayload', credsValidator],
9
+ ['webhookPayload', Boolean],
10
+ ]);
11
+
12
+ const figmaWebhookCreate = async (
13
+ credsPayload,
14
+ webhookPayload,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ webhookPayload
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'post',
31
+ url: `/v2/webhooks`,
32
+ body: webhookPayload,
33
+ },
34
+ context: {
35
+ credsPayload,
36
+ },
37
+ });
38
+ };
39
+
40
+ const funcApiConfig = {
41
+ argsWarden,
42
+ };
43
+
44
+ module.exports = {
45
+ figmaWebhookCreate,
46
+ funcApiConfig,
47
+ };