Skip to content

Commit 06919e3

Browse files
committed
Add commit id datum for data supplier
1 parent c6a592e commit 06919e3

File tree

5 files changed

+277
-13
lines changed

5 files changed

+277
-13
lines changed

assets/data/commit-id.json

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
{
2+
"name": "commit id",
3+
"items": [
4+
"aaae6766c2c7cf5c6fcc5fe742a2ad6b52e0d11c",
5+
"c60bc92b88eb4a8a13e98acb9e1e42d33fe4f449",
6+
"1c2dcdd2a97db10a2d6f1a3be9d43196c832602b",
7+
"da102a6334118c053b6940536b8d263e610c5af1",
8+
"224abff6cabf8a8699c92d3cf213a6be43937da6",
9+
"ef15f48c9654b85784a3d96bfb98df6dd403db1c",
10+
"bce54671f2b621559c24ed8179d288da57846063",
11+
"0b9a626f8462612aa96492a79e7ffa6b37493a3d",
12+
"19838c2681eade26141dbfda764a32457b15fa89",
13+
"84d9e164320eb33afcfcdfcb3db746a715320db2",
14+
"e9d80dcf8dde2255958aa064f48a5397b190964a",
15+
"a5ce398541af42f3aceeb2909947583f870a1560",
16+
"f2007924222924f17501eaa409e493052583c532",
17+
"5015b23ae6b4a477479bde727a574cbb362d8256",
18+
"ed94be868bf26ca8364f866ddb70b5c6217239d0",
19+
"fd5d3aff9c507fda6f1bc39a99339c3515b520ea",
20+
"3e7a5031e027a7d04e4a157e457b7744d3f722f0",
21+
"426e7e8be27afdee8f5c47a61faff019030d8ad4",
22+
"c6e84b66a212dc482439dc530e58664ec259e51b",
23+
"d15d30261fa0553fd700621bbde58f1fa55b297b",
24+
"650138ffad49d6e48aa0771a2223b8ca20a3e316",
25+
"b62ece12997a19380834f776567e07731a8e4661",
26+
"7a16df96a0aa2300c863970ca6c17f59e882a9f8",
27+
"7169188213fe32927b435e2776fc39215e7533b4",
28+
"e027e57610f85225767aafbbf23fed7457e55828",
29+
"258d87fe6a515280850e2420dac2c649010b9690",
30+
"ef686179ff10579cdae0f0158207633bfe41a95d",
31+
"e3e074a39180666687bcb62aa45d1ab3d731c3a7",
32+
"af4ba1c5f5988217ffbc3c4bf71542fd96f4f946",
33+
"8132dda85dcbf6acbb4eb6dcd5dc31151785f120",
34+
"0d34076fc15db1b7c7a0943045699eba6f186ec1",
35+
"97a651b1627e0a06c71a2b4fcadc4fa84c5d25bf",
36+
"91c98f9921b0b0fac2458fb9bc86511ed5fbb7ec",
37+
"2723c8ab7b0bea02519794459729a1ba8e773d9f",
38+
"4e7a716c8dccd6ae28ea1695cc66ccc0e04d702f",
39+
"c448180f25af018ccdbeff9b69c2a15cb80badfa",
40+
"b13dfe546062ed1e6df44b4da4fa238b6c5de944",
41+
"c69fc21687b604f46c1a852e59f0d7cb86b2701e",
42+
"ca85b25e7743581fa6b7a8076878f3bab6cc5b7d",
43+
"856228dc47b0db9d5d7cb5df52d844a25b722f0d",
44+
"c803e426188665bba2782603d52380477195e21b",
45+
"1418f5814708d18dfeb55b6c97a050a637a48b16",
46+
"b42c1a3d5213856b10e8e2ef333368d118c97b95",
47+
"a0cab9f0742e1f6ac92d959d03e9d06e5a35ba4e",
48+
"f987b02a8db337419995db1cd141118038a0ab5b",
49+
"6cd528f49334047877e5f19913f913af38260170",
50+
"eb69f7c268a62d59a353df80b6f3ce5149ffdac8",
51+
"85387c5fe91bbb26e82b00c0323b22771e723571",
52+
"629fcd9628c9f45cbe00dde500839972f714b3ca",
53+
"2d9b5decf429f12a72da14380988a7c209c6c3bd",
54+
"3b8d43a9c7c8a28e339fba1c3f2c87e2388e8804",
55+
"388943e51b4cf0e92322890e504d7c029ccb12b4",
56+
"8b4bdd272e98f970b8dd90423e7269623ed1cf1e",
57+
"b2727909f50df339f1645b8f2f74aff73754c4f1",
58+
"e9cc319c0288a34c7e481758a34a309c2523f39a",
59+
"62f5ac5fb310b1daf1ab921e922c3888e3b45250",
60+
"416ae3ec906d46fda8fdbf140be82021a6c60e3a",
61+
"f2aee716a0d463207b6d59ad5f0e81e850b499e5",
62+
"2d6b801f2c6e82ea1a7450873019e9548e19829d",
63+
"23a53b4c522420973c919aaae5503ed8547cb438",
64+
"a620303dbb2f2b68f910a27d7d3625de2892b087",
65+
"2fe605e74b3649b72d7803c9c3ea7de44b7c0474",
66+
"bef45157a43c9e5f469d188810814a4a8ab9f2ed",
67+
"e89061ac9cdc1d2f619916bd1541171682d23408",
68+
"aaec0969b8f77b8d63bc43a1352e675e9c865ebd",
69+
"c2644dae7d55e71fb02de6b5806af32cd7d7cb41",
70+
"47bf44c0ec908654f16bacf131107a5aac3ae7b4",
71+
"864d414023094dc9ee5c89e9d5623e3e2824eb17",
72+
"b14e4fa743814cb78d2013a8a08c1738924ae712",
73+
"eea19d4cce28c77d2a0c1449a508d6290d00f9dd",
74+
"61a4f51eb85a16603bd63347ef7cc8b7779b5963",
75+
"8796e8c3b923eaf23667b6fb26156d4404f564f6",
76+
"b5d0c80a5b51a16fa01926ced446c5abf49f17ae",
77+
"3007fd7dab13d1cc6ff9fa6e4c4d08d1206fb619",
78+
"087e39e8182bb0890182b4c4cf6210dab78a1a4b",
79+
"bcb68c8fe85a25156fa664cc56dfc77488356996",
80+
"74a09e037e296ec0552ef5836ed3590a1329206f",
81+
"5721383939ec8331ae6f760b8ac418aeb906943a",
82+
"4fe7ad5baa9285142b21efb414c5eefc21da194b",
83+
"f59973b77a3f013501c9a64e37547a051545be9f",
84+
"b0d51b9ff91b623cc42b17c529b7c21c2ab57fb4",
85+
"00c843f7c737dc0938c763677342711e213acca7",
86+
"1dd0dc67fe7be64fe5b22d7b01b35870225d0a40",
87+
"5eeaf18ee3761d2e660d8b018bf4f71f4c5efae8",
88+
"abb4c57de20284908890086e03906503d039b0b2",
89+
"2732ce19e12e54aa12a39c364c6fd4b95f847eb6",
90+
"f6af5aca126482a279bc37816301966be82eb730",
91+
"eb0adaae70e00f62425e51724ed57917c1ad1ce3",
92+
"03e0258dc8944177022334f2afb035b810a24dd8",
93+
"7056a4030ef33ae854c99656b7df47bf3e4aca5d",
94+
"724cf3a4e8c2db036f118b30dce697117b717f53",
95+
"0c8207b92779c0a42507a293a23106814cc381e1",
96+
"ce4c27a647592d81b31aef6e16b6de1f267f83e1",
97+
"0806f3cbb7ba72a868e4d81efeeac5abe405b40c",
98+
"68b3ab5f7810a9984bd8f46d53de0abf35f613f9",
99+
"3161ad582191640df5e5e10d3a6ee3f6faa8ba82",
100+
"17317601156aaf8f813ccd08a1c794d6c1858b25",
101+
"7b45eb74eec2c3e77091bbdc0375b2a379c010cd",
102+
"c81269ae161552203480cf6b9792002c0e728622",
103+
"0e15f8789b9d62fe90d1f1b0b6a7e32f13b99b19",
104+
"56473fa6552c6da1d24f191b11f0890540f116b0",
105+
"93fe87626f7b88f17bf93c8c3188bbb690d6a487",
106+
"d8c08003763697f805686b2f1beb6e6c42f4cba7",
107+
"343c2776249556bf76df44d42795dd5921fb1b6c",
108+
"040feba8916aa351c77a979dec67272018f28fa5",
109+
"4ad77be54d0038fe4c308916766f82c5194c7c5e",
110+
"b1b8f6f594d0d9b15903e5fe2a28862d5f0f7efa",
111+
"1d45fc6dbbdfd0fbaabd88df81df72fdc2dcb714",
112+
"ce7501007f04a6529e650f1f1b3fc0586d1d94eb",
113+
"cf779aa55608bfd450cae37c61a3ab7a48df495e",
114+
"a0514ba819e7dde233eabea1922576835a574268",
115+
"60c00f6091c51252b9e0e11c7bb387774b33aee3",
116+
"bcb658236db3c90f56295763b2ee90be182ee5bf",
117+
"a771802fd566bcb3820b90fb34642a0e78015cec",
118+
"b15355b24ee46680adf4a63c5fb4550e28cd4040",
119+
"d4b5a704caa199f24edee1e4f33484d906a5e226",
120+
"cd3bad0d4e0619a465f586ee2b4a277f72803141",
121+
"9a7a2a9a463948ad84f93272710933e4f7221a5a",
122+
"94ff136f5cbd4daacec96f08de13bfcc99d771a1",
123+
"e6c7215ca925769bb87d98f710a36a20eed91947"
124+
]
125+
}
126+

assets/data/data.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
const dataProjectName = require('./project-name.json')
2+
const dataCommitId = require('./commit-id.json')
23

34
const dataCollection = [
4-
dataProjectName
5+
dataProjectName,
6+
dataCommitId,
57
]
68

7-
export default dataCollection
9+
export { dataCollection }

assets/data/project-name.json

Lines changed: 121 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,125 @@
22
"name": "project name",
33
"items": [
44
"Coding Web",
5-
"Design Center",
6-
"Coding Dev",
7-
"示例项目"
5+
"Design-Center",
6+
"coding-dev",
7+
"COIDNG 示例项目",
8+
"Coding",
9+
"feedback",
10+
"Coding-Marketing",
11+
"cloud-studio",
12+
"CODING产品文档",
13+
"coding-artifacts",
14+
"CodingUIKit",
15+
"coding-frontend",
16+
"serverless-tencent-scf",
17+
"coding-sketch-toolkit",
18+
"Abstract SDK",
19+
"design-tokens",
20+
"tencent-egg",
21+
"serverless-components",
22+
"serverlesscloud.cn",
23+
"webpack-virtual-modules",
24+
"ALAE",
25+
"bashtop",
26+
"eladmin",
27+
"Beef",
28+
"Java",
29+
"Qv2ray",
30+
"InstaPy",
31+
"leetcode",
32+
"opentelemetry-java",
33+
"ml-agents",
34+
"alpine",
35+
"flink-learning",
36+
"JavaGuide",
37+
"flink",
38+
"manim",
39+
"Tasmota",
40+
"hutool",
41+
"svelte",
42+
"opentrace-android",
43+
"421pdf",
44+
"weekly",
45+
"minetest",
46+
"gin-vue-admin",
47+
"Flutter-Course-Resources",
48+
"theia",
49+
"free-programming-books",
50+
"first-order-model",
51+
"vue-next",
52+
"spring-boot-demo",
53+
"spring-boot-api-project-seed",
54+
"developer-roadmap",
55+
"toBeTopJavaer",
56+
"coding-interview-university",
57+
"bigbluebutton",
58+
"obs-studio",
59+
"PowerToys",
60+
"CPlusPlusThings",
61+
"javascript-algorithms",
62+
"AnimeGAN",
63+
"Real-Time-Voice-Cloning",
64+
"arthas",
65+
"SpringBoot-Labs",
66+
"ansible",
67+
"streisand",
68+
"algo",
69+
"kubespray",
70+
"awx",
71+
"devops-exercises",
72+
"kubeasz",
73+
"rundeck",
74+
"semaphore",
75+
"ansible-for-devops",
76+
"molecule",
77+
"mac-dev-playbook",
78+
"OpsManage",
79+
"KubeOperator",
80+
"trellis",
81+
"opendevops",
82+
"netboot.xyz",
83+
"openshift-ansible",
84+
"deploy",
85+
"ansible-vagrant-examples",
86+
"ansible-tuto",
87+
"ansible-cmdb",
88+
"testinfra",
89+
"werf",
90+
"ansible-os-hardening",
91+
"infrastructure-as-code-tutorial",
92+
"PlexGuide.com",
93+
"chrome-aws-lambda",
94+
"terraform-inventory",
95+
"infer",
96+
"static-analysis",
97+
"checkstyle",
98+
"sonarqube",
99+
"simplecov",
100+
"pyre-check",
101+
"grumphp",
102+
"pmd",
103+
"pylint",
104+
"HTMLHint",
105+
"codeclimate",
106+
"reviewdog",
107+
"jscpd",
108+
"mutant",
109+
"cross-platform-node-guide",
110+
"wemake-python-styleguide",
111+
"typewiz",
112+
"unused",
113+
"state-of-the-art-shitcode",
114+
"android-guidelines",
115+
"SonarTS",
116+
"phpqa",
117+
"feflow",
118+
"piranha",
119+
"pdepend",
120+
"Imgbot",
121+
"vim-disapprove-deep-indentation",
122+
"SonarJS",
123+
"undercover"
8124
]
9-
}
125+
}
126+

src/data-supplier.js

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,41 @@
11
const util = require('util')
22
const sketch = require('sketch/dom')
33
const DataSupplier = require('sketch/data-supplier')
4-
const dataCollection = require('../assets/data/data.js')
4+
const { dataCollection } = require('../assets/data/data.js')
55
const _ = require('lodash')
66

7+
const getDataByName = dataName => _.shuffle(dataCollection.find(data => data.name == dataName).items)
8+
79
export function onStartup() {
810
DataSupplier.registerDataSupplier("public.text", "Project Name", "SupplyProjectName")
11+
DataSupplier.registerDataSupplier("public.text", "Commit Id", "SupplyCommitId")
12+
DataSupplier.registerDataSupplier("public.text", "Commit Id Sort", "SupplyCommitIdSort")
913
}
1014

1115
export function onShutdown() {
1216
DataSupplier.deregisterDataSuppliers()
1317
}
1418

1519
export function onSupplyProjectName(context) {
20+
supplyData(context, 'project name')
21+
}
22+
23+
export function onSupplyCommitId(context) {
24+
supplyData(context, 'commit id')
25+
}
26+
27+
export function onSupplyCommitIdSort(context) {
28+
let handleData = data => data.slice(0, 7)
29+
supplyData(context, 'commit id', handleData)
30+
}
31+
32+
function supplyData(context, dataName, handleData = data => data) {
1633
let key = context.data.key
1734
let items = util.toArray(context.data.items).map(sketch.fromNative)
18-
let dataItems = _.shuffle(dataCollection.default.find(data => data.name == 'project name').items)
19-
console.log(dataItems)
35+
let dataItems = getDataByName(dataName)
2036
items.map((item, i) => {
21-
console.log(item)
22-
DataSupplier.supplyDataAtIndex(key, dataItems[i % dataItems.length], i)
37+
console.log(`${i} - ${item.symbolInstance.name}`)
38+
let dataValue = handleData(dataItems[i % dataItems.length])
39+
DataSupplier.supplyDataAtIndex(key, dataValue, i)
2340
})
24-
}
41+
}

src/manifest.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@
2424
"actions": {
2525
"Startup": "onStartup",
2626
"Shutdown": "onShutdown",
27-
"SupplyProjectName": "onSupplyProjectName"
27+
"SupplyProjectName": "onSupplyProjectName",
28+
"SupplyCommitId": "onSupplyCommitId",
29+
"SupplyCommitIdSort": "onSupplyCommitIdSort"
2830
}
2931
}
3032
}

0 commit comments

Comments
 (0)