@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,48 @@
1
+ // https://developers.figma.com/docs/rest-api/file-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 figmaFileGet = 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 }`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/file-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 figmaFileImageFillsGet = 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 }/images`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileImageFillsGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/file-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 figmaFileImagesGet = 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/images/${ fileKey }`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileImagesGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/file-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 figmaFileMetaGet = 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 }/meta`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileMetaGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/file-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 figmaFileNodesGet = 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 }/nodes`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileNodesGet,
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
+ ['fileKey'],
10
+ ]);
11
+
12
+ const figmaFileStylesGet = 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 }/styles`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileStylesGet,
47
+ funcApiConfig,
48
+ };
@@ -0,0 +1,48 @@
1
+ // https://developers.figma.com/docs/rest-api/version-history-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 figmaFileVersionsGet = 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 }/versions`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFileVersionsGet,
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
+ ['folderId'],
10
+ ]);
11
+
12
+ const figmaFolderFilesGet = async (
13
+ credsPayload,
14
+ folderId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ folderId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v2/folders/${ folderId }/files`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFolderFilesGet,
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
+ ['folderId'],
10
+ ]);
11
+
12
+ const figmaFolderFoldersGet = async (
13
+ credsPayload,
14
+ folderId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ folderId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v2/folders/${ folderId }/folders`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFolderFoldersGet,
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
+ ['folderId'],
10
+ ]);
11
+
12
+ const figmaFolderMetaGet = async (
13
+ credsPayload,
14
+ folderId,
15
+ {
16
+ params,
17
+ fetchClient = figmaClient,
18
+ } = {},
19
+ ) => {
20
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
21
+ credsPayload,
22
+ folderId,
23
+ });
24
+ if (rejectResponse) {
25
+ return rejectResponse;
26
+ }
27
+
28
+ return fetchClient.fetch({
29
+ requestPayload: {
30
+ method: 'get',
31
+ url: `/v2/folders/${ folderId }/meta`,
32
+ params,
33
+
34
+ },
35
+ context: {
36
+ credsPayload,
37
+ },
38
+ });
39
+ };
40
+
41
+ const funcApiConfig = {
42
+ argsWarden,
43
+ };
44
+
45
+ module.exports = {
46
+ figmaFolderMetaGet,
47
+ funcApiConfig,
48
+ };
@@ -1,6 +1,6 @@
1
- // https://www.figma.com/developers/api#get-me-endpoint
1
+ // https://developers.figma.com/docs/rest-api/
2
2
 
3
- const { ArgsWarden, Getter } = require('../utils');
3
+ const { ArgsWarden } = require('../utils');
4
4
  const { credsValidator } = require('../validators');
5
5
  const { figmaClient } = require('../figma/figma.utils');
6
6
 
@@ -9,43 +9,14 @@ const argsWarden = new ArgsWarden([
9
9
  ['url'],
10
10
  ]);
11
11
 
12
- const figmaGetPacket = async (
13
- credsPayload,
14
- url,
15
- {
16
- params,
17
- } = {},
18
- ) => {
19
- return figmaClient.fetch({
20
- requestPayload: {
21
- url,
22
- params,
23
- },
24
- context: {
25
- credsPayload,
26
- },
27
- });
28
- };
29
-
30
- const figmaGetPaginator = async (currentParams, response) => {
31
- if (!response?.ok) {
32
- return [true];
33
- }
34
-
35
- return [true];
36
- };
37
-
38
12
  const figmaGet = async (
39
- returnGetter,
40
-
41
13
  credsPayload,
42
14
  url,
43
15
  {
44
16
  params,
45
- ...getterOptions
17
+ fetchClient = figmaClient,
46
18
  } = {},
47
19
  ) => {
48
-
49
20
  const rejectResponse = await argsWarden.responseIfRejectingArgs({
50
21
  credsPayload,
51
22
  url,
@@ -54,37 +25,19 @@ const figmaGet = async (
54
25
  return rejectResponse;
55
26
  }
56
27
 
57
- const getter = new Getter(
58
- {
59
- args: [credsPayload, url],
60
- options: {
61
- params,
62
- },
63
- },
64
- {
65
- func: figmaGetPacket,
66
- digester: (response) => {
67
- if (!response?.ok) {
68
- return [];
69
- }
28
+ const resolvedUrl = url.startsWith('/v1/') || url.startsWith('/v2/') || url.startsWith('http')
29
+ ? url
30
+ : `/v1${ url.startsWith('/') ? url : `/${ url }` }`;
70
31
 
71
- return Array.isArray(response.data) ? response.data : [];
72
- },
73
- paginator: figmaGetPaginator,
74
- ...getterOptions,
32
+ return fetchClient.fetch({
33
+ requestPayload: {
34
+ url: resolvedUrl,
35
+ params,
75
36
  },
76
- );
77
-
78
- if (returnGetter) {
79
- return getter;
80
- }
81
-
82
- const data = await getter.run({ returnAll: true });
83
-
84
- return {
85
- ok: true,
86
- data,
87
- };
37
+ context: {
38
+ credsPayload,
39
+ },
40
+ });
88
41
  };
89
42
 
90
43
  const funcApiConfig = {
@@ -92,8 +45,7 @@ const funcApiConfig = {
92
45
  };
93
46
 
94
47
  module.exports = {
95
- figmaGet: (...args) => figmaGet(false, ...args),
96
- figmaGetter: (...args) => figmaGet(true, ...args),
48
+ figmaGet,
97
49
  funcApiConfig,
98
50
  };
99
51
 
@@ -0,0 +1,53 @@
1
+ // https://developers.figma.com/docs/rest-api/users-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 figmaMeGet = async (
12
+ credsPayload,
13
+
14
+ {
15
+ params,
16
+ fetchClient = figmaClient,
17
+ } = {},
18
+ ) => {
19
+ const rejectResponse = await argsWarden.responseIfRejectingArgs({
20
+ credsPayload,
21
+
22
+ });
23
+ if (rejectResponse) {
24
+ return rejectResponse;
25
+ }
26
+
27
+ return fetchClient.fetch({
28
+ requestPayload: {
29
+ method: 'get',
30
+ url: `/v1/me`,
31
+ },
32
+ context: {
33
+ credsPayload,
34
+ },
35
+ });
36
+ };
37
+
38
+ const funcApiConfig = {
39
+ argsWarden,
40
+ };
41
+
42
+ module.exports = {
43
+ figmaMeGet,
44
+ funcApiConfig,
45
+ };
46
+
47
+ /*
48
+ curl -X GET "http://localhost:8000/figmaMeGet" \
49
+ -H "Content-Type: application/json" \
50
+ -d '{
51
+ "credsPayload": { "credsPath": "figma" }
52
+ }'
53
+ */
@@ -0,0 +1,44 @@
1
+ // https://developers.figma.com/docs/rest-api/oembed-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 figmaOembedGet = 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/oembed`,
29
+ params,
30
+ },
31
+ context: {
32
+ credsPayload,
33
+ },
34
+ });
35
+ };
36
+
37
+ const funcApiConfig = {
38
+ argsWarden,
39
+ };
40
+
41
+ module.exports = {
42
+ figmaOembedGet,
43
+ funcApiConfig,
44
+ };