profile-pane 3.2.0 → 3.2.2-test.0

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 (256) hide show
  1. package/README.md +50 -0
  2. package/icons-png/discord.png +0 -0
  3. package/icons-png/dribbble.png +0 -0
  4. package/icons-png/facebook.png +0 -0
  5. package/icons-png/instagram.png +0 -0
  6. package/icons-png/linkedin.png +0 -0
  7. package/icons-png/pinterest.png +0 -0
  8. package/icons-png/sharechat.png +0 -0
  9. package/icons-png/signup.png +0 -0
  10. package/icons-png/snapchat.png +0 -0
  11. package/icons-png/spotify.png +0 -0
  12. package/icons-png/telegram.png +0 -0
  13. package/icons-png/tiktok.png +0 -0
  14. package/icons-png/whatsapp.png +0 -0
  15. package/icons-png/x.png +0 -0
  16. package/icons-png/youtube.png +0 -0
  17. package/lib/303.profile-pane.js +1362 -0
  18. package/lib/303.profile-pane.js.map +1 -0
  19. package/lib/303.profile-pane.min.js +2 -0
  20. package/lib/303.profile-pane.min.js.map +1 -0
  21. package/lib/ProfileView.css +1090 -0
  22. package/lib/ProfileView.d.ts +2 -1
  23. package/lib/ProfileView.d.ts.map +1 -1
  24. package/lib/ProfileView.js +64 -36
  25. package/lib/buttonsHelper.d.ts +1 -1
  26. package/lib/buttonsHelper.d.ts.map +1 -1
  27. package/lib/buttonsHelper.js +2 -1
  28. package/lib/editProfilePane/EditCVCard.js +1 -1
  29. package/lib/editProfilePane/EditCommunitiesCard.js +1 -1
  30. package/lib/editProfilePane/EditFriendsCard.js +1 -1
  31. package/lib/editProfilePane/EditProfileView.d.ts +1 -1
  32. package/lib/editProfilePane/EditProfileView.d.ts.map +1 -1
  33. package/lib/editProfilePane/EditProfileView.js +4 -5
  34. package/lib/editProfilePane/editProfilePresenter.d.ts.map +1 -1
  35. package/lib/editProfilePane/editProfilePresenter.js +5 -4
  36. package/lib/icons-svg/profileIcons.d.ts +1 -1
  37. package/lib/icons-svg/profileIcons.d.ts.map +1 -1
  38. package/lib/icons-svg/profileIcons.js +9 -17
  39. package/lib/index.d.ts +1 -8
  40. package/lib/index.d.ts.map +1 -1
  41. package/lib/index.js +74 -40
  42. package/lib/ontology/otherPreferencesForm.ttl +32 -0
  43. package/lib/ontology/resumeForm.ttl +349 -0
  44. package/lib/ontology/socialMedia.ttl +433 -0
  45. package/lib/profile-pane.js +32266 -13247
  46. package/lib/profile-pane.js.map +1 -1
  47. package/lib/profile-pane.min.js +2315 -935
  48. package/lib/profile-pane.min.js.map +1 -1
  49. package/lib/rdfFormsHelper.d.ts +13 -1
  50. package/lib/rdfFormsHelper.d.ts.map +1 -1
  51. package/lib/rdfFormsHelper.js +13 -1
  52. package/lib/sections/bio/BioEditDialog.d.ts.map +1 -1
  53. package/lib/sections/bio/BioEditDialog.js +7 -7
  54. package/lib/sections/bio/BioSection.css +300 -0
  55. package/lib/sections/bio/BioSection.d.ts +3 -2
  56. package/lib/sections/bio/BioSection.d.ts.map +1 -1
  57. package/lib/sections/bio/BioSection.js +26 -19
  58. package/lib/sections/bio/mutations.d.ts.map +1 -1
  59. package/lib/sections/bio/mutations.js +14 -3
  60. package/lib/sections/contactInfo/ContactInfoEditDialog.css +354 -0
  61. package/lib/sections/contactInfo/ContactInfoEditDialog.d.ts +3 -1
  62. package/lib/sections/contactInfo/ContactInfoEditDialog.d.ts.map +1 -1
  63. package/lib/sections/contactInfo/ContactInfoEditDialog.js +183 -98
  64. package/lib/sections/contactInfo/ContactInfoSection.css +125 -0
  65. package/lib/sections/contactInfo/ContactInfoSection.d.ts +2 -0
  66. package/lib/sections/contactInfo/ContactInfoSection.d.ts.map +1 -1
  67. package/lib/sections/contactInfo/ContactInfoSection.js +64 -41
  68. package/lib/sections/contactInfo/mutations.d.ts.map +1 -1
  69. package/lib/sections/contactInfo/mutations.js +51 -16
  70. package/lib/sections/education/EducationEditDialog.d.ts +3 -1
  71. package/lib/sections/education/EducationEditDialog.d.ts.map +1 -1
  72. package/lib/sections/education/EducationEditDialog.js +170 -92
  73. package/lib/sections/education/EducationSection.css +133 -0
  74. package/lib/sections/education/EducationSection.d.ts +3 -2
  75. package/lib/sections/education/EducationSection.d.ts.map +1 -1
  76. package/lib/sections/education/EducationSection.js +32 -25
  77. package/lib/sections/education/mutations.d.ts.map +1 -1
  78. package/lib/sections/education/mutations.js +14 -3
  79. package/lib/sections/heading/HeadingEditDialog.d.ts +4 -1
  80. package/lib/sections/heading/HeadingEditDialog.d.ts.map +1 -1
  81. package/lib/sections/heading/HeadingEditDialog.js +287 -162
  82. package/lib/sections/heading/HeadingSection.css +862 -0
  83. package/lib/sections/heading/HeadingSection.d.ts +3 -2
  84. package/lib/sections/heading/HeadingSection.d.ts.map +1 -1
  85. package/lib/sections/heading/HeadingSection.js +63 -32
  86. package/lib/sections/heading/imageHelpers.d.ts +1 -0
  87. package/lib/sections/heading/imageHelpers.d.ts.map +1 -1
  88. package/lib/sections/heading/imageHelpers.js +40 -1
  89. package/lib/sections/heading/mutations.d.ts.map +1 -1
  90. package/lib/sections/heading/mutations.js +86 -23
  91. package/lib/sections/heading/selectors.d.ts.map +1 -1
  92. package/lib/sections/heading/selectors.js +14 -3
  93. package/lib/sections/heading/types.d.ts +1 -2
  94. package/lib/sections/heading/types.d.ts.map +1 -1
  95. package/lib/sections/languages/LanguageEditDialog.d.ts +3 -1
  96. package/lib/sections/languages/LanguageEditDialog.d.ts.map +1 -1
  97. package/lib/sections/languages/LanguageEditDialog.js +202 -119
  98. package/lib/sections/languages/LanguageSection.css +53 -0
  99. package/lib/sections/languages/LanguageSection.d.ts +2 -0
  100. package/lib/sections/languages/LanguageSection.d.ts.map +1 -1
  101. package/lib/sections/languages/LanguageSection.js +42 -31
  102. package/lib/sections/languages/mutations.d.ts.map +1 -1
  103. package/lib/sections/languages/mutations.js +60 -161
  104. package/lib/sections/languages/selectors.d.ts.map +1 -1
  105. package/lib/sections/languages/selectors.js +1 -2
  106. package/lib/sections/projects/ProjectEditDialog.d.ts +2 -1
  107. package/lib/sections/projects/ProjectEditDialog.d.ts.map +1 -1
  108. package/lib/sections/projects/ProjectEditDialog.js +13 -24
  109. package/lib/sections/projects/ProjectSection.css +368 -0
  110. package/lib/sections/projects/ProjectSection.d.ts +2 -1
  111. package/lib/sections/projects/ProjectSection.d.ts.map +1 -1
  112. package/lib/sections/projects/ProjectSection.js +116 -34
  113. package/lib/sections/projects/mutations.d.ts.map +1 -1
  114. package/lib/sections/projects/mutations.js +109 -132
  115. package/lib/sections/projects/selectors.d.ts.map +1 -1
  116. package/lib/sections/projects/selectors.js +4 -45
  117. package/lib/{QRCodeCard.d.ts → sections/qrcode/QRCodeCard.d.ts} +2 -1
  118. package/lib/sections/qrcode/QRCodeCard.d.ts.map +1 -0
  119. package/lib/{QRCodeCard.js → sections/qrcode/QRCodeCard.js} +59 -11
  120. package/lib/sections/qrcode/QRCodeSection.css +108 -0
  121. package/lib/sections/qrcode/QRCodeSection.d.ts +4 -0
  122. package/lib/sections/qrcode/QRCodeSection.d.ts.map +1 -0
  123. package/lib/sections/qrcode/QRCodeSection.js +17 -0
  124. package/lib/sections/resume/ResumeEditDialog.d.ts +10 -1
  125. package/lib/sections/resume/ResumeEditDialog.d.ts.map +1 -1
  126. package/lib/sections/resume/ResumeEditDialog.js +531 -149
  127. package/lib/sections/resume/ResumeSection.css +350 -0
  128. package/lib/sections/resume/ResumeSection.d.ts +3 -2
  129. package/lib/sections/resume/ResumeSection.d.ts.map +1 -1
  130. package/lib/sections/resume/ResumeSection.js +78 -49
  131. package/lib/sections/resume/mutations.d.ts.map +1 -1
  132. package/lib/sections/resume/mutations.js +17 -3
  133. package/lib/sections/resume/selectors.d.ts.map +1 -1
  134. package/lib/sections/resume/selectors.js +1 -0
  135. package/lib/sections/resume/types.d.ts +1 -0
  136. package/lib/sections/resume/types.d.ts.map +1 -1
  137. package/lib/sections/shared/collapsibleSection.d.ts.map +1 -1
  138. package/lib/sections/shared/collapsibleSection.js +1 -0
  139. package/lib/sections/shared/phoneCountries.d.ts +1 -1
  140. package/lib/sections/shared/phoneCountries.d.ts.map +1 -1
  141. package/lib/sections/shared/phoneCountries.js +2 -2
  142. package/lib/sections/shared/projectCommunityNodes.d.ts +6 -0
  143. package/lib/sections/shared/projectCommunityNodes.d.ts.map +1 -0
  144. package/lib/sections/shared/projectCommunityNodes.js +56 -0
  145. package/lib/sections/shared/rdfMutationHelpers.d.ts +35 -2
  146. package/lib/sections/shared/rdfMutationHelpers.d.ts.map +1 -1
  147. package/lib/sections/shared/rdfMutationHelpers.js +290 -14
  148. package/lib/sections/shared/sectionCardHelpers.d.ts.map +1 -1
  149. package/lib/sections/shared/sectionCardHelpers.js +80 -11
  150. package/lib/sections/shared/types.d.ts +24 -0
  151. package/lib/sections/shared/types.d.ts.map +1 -1
  152. package/lib/sections/skills/SkillsEditDialog.d.ts +3 -1
  153. package/lib/sections/skills/SkillsEditDialog.d.ts.map +1 -1
  154. package/lib/sections/skills/SkillsEditDialog.js +136 -115
  155. package/lib/sections/skills/SkillsSection.css +173 -0
  156. package/lib/sections/skills/SkillsSection.d.ts +2 -0
  157. package/lib/sections/skills/SkillsSection.d.ts.map +1 -1
  158. package/lib/sections/skills/SkillsSection.js +107 -47
  159. package/lib/sections/skills/mutations.d.ts.map +1 -1
  160. package/lib/sections/skills/mutations.js +25 -21
  161. package/lib/sections/skills/selectors.d.ts.map +1 -1
  162. package/lib/sections/skills/selectors.js +5 -3
  163. package/lib/sections/social/SocialEditDialog.d.ts +3 -1
  164. package/lib/sections/social/SocialEditDialog.d.ts.map +1 -1
  165. package/lib/sections/social/SocialEditDialog.js +170 -62
  166. package/lib/sections/social/SocialSection.css +194 -0
  167. package/lib/sections/social/SocialSection.d.ts +4 -3
  168. package/lib/sections/social/SocialSection.d.ts.map +1 -1
  169. package/lib/sections/social/SocialSection.js +59 -43
  170. package/lib/sections/social/mutations.d.ts.map +1 -1
  171. package/lib/sections/social/mutations.js +23 -132
  172. package/lib/specialButtons/AddMeToYourFriends.css +54 -0
  173. package/lib/specialButtons/addContact/AddMeToYourContacts.css +1118 -0
  174. package/lib/specialButtons/addContact/ContactCreationDialog.d.ts +10 -0
  175. package/lib/specialButtons/addContact/ContactCreationDialog.d.ts.map +1 -0
  176. package/lib/specialButtons/addContact/ContactCreationDialog.js +1123 -0
  177. package/lib/specialButtons/addContact/addMeToYourContacts.d.ts +16 -0
  178. package/lib/specialButtons/addContact/addMeToYourContacts.d.ts.map +1 -0
  179. package/lib/specialButtons/addContact/addMeToYourContacts.js +136 -0
  180. package/lib/specialButtons/addContact/contactsErrors.d.ts +8 -0
  181. package/lib/specialButtons/addContact/contactsErrors.d.ts.map +1 -0
  182. package/lib/specialButtons/addContact/contactsErrors.js +106 -0
  183. package/lib/specialButtons/addContact/contactsTypes.d.ts +43 -0
  184. package/lib/specialButtons/addContact/contactsTypes.d.ts.map +1 -0
  185. package/lib/specialButtons/addContact/contactsTypes.js +5 -0
  186. package/lib/specialButtons/addContact/helpers.d.ts +7 -0
  187. package/lib/specialButtons/addContact/helpers.d.ts.map +1 -0
  188. package/lib/specialButtons/addContact/helpers.js +103 -0
  189. package/lib/specialButtons/addContact/mutations.d.ts +16 -0
  190. package/lib/specialButtons/addContact/mutations.d.ts.map +1 -0
  191. package/lib/specialButtons/addContact/mutations.js +300 -0
  192. package/lib/specialButtons/addContact/selectors.d.ts +10 -0
  193. package/lib/specialButtons/addContact/selectors.d.ts.map +1 -0
  194. package/lib/specialButtons/addContact/selectors.js +163 -0
  195. package/lib/{addMeToYourFriends.d.ts → specialButtons/addMeToYourFriends.d.ts} +6 -4
  196. package/lib/specialButtons/addMeToYourFriends.d.ts.map +1 -0
  197. package/lib/{addMeToYourFriends.js → specialButtons/addMeToYourFriends.js} +46 -11
  198. package/lib/styles/CollapsibleSection.css +519 -0
  199. package/lib/styles/EditDialogs.css +506 -686
  200. package/lib/styles/EditDialogs.responsive.css +989 -0
  201. package/lib/texts/buttonTexts.d.ts +9 -0
  202. package/lib/texts/buttonTexts.d.ts.map +1 -0
  203. package/lib/texts/buttonTexts.js +14 -0
  204. package/lib/texts/dialogTexts.d.ts +14 -0
  205. package/lib/texts/dialogTexts.d.ts.map +1 -0
  206. package/lib/texts/dialogTexts.js +19 -0
  207. package/lib/texts/messageTexts.d.ts +42 -0
  208. package/lib/texts/messageTexts.d.ts.map +1 -0
  209. package/lib/texts/messageTexts.js +47 -0
  210. package/lib/texts/profileTexts.d.ts +14 -0
  211. package/lib/texts/profileTexts.d.ts.map +1 -0
  212. package/lib/texts/profileTexts.js +19 -0
  213. package/lib/texts/qrCodeTexts.d.ts +2 -0
  214. package/lib/texts/qrCodeTexts.d.ts.map +1 -0
  215. package/lib/texts/qrCodeTexts.js +7 -0
  216. package/lib/texts.d.ts +5 -60
  217. package/lib/texts.d.ts.map +1 -1
  218. package/lib/texts.js +55 -70
  219. package/lib/ui/dialog.css +233 -0
  220. package/lib/ui/dialog.d.ts +15 -1
  221. package/lib/ui/dialog.d.ts.map +1 -1
  222. package/lib/ui/dialog.js +245 -45
  223. package/lib/ui/dialog.responsive.css +195 -0
  224. package/lib/ui/errors.d.ts.map +1 -1
  225. package/lib/ui/errors.js +2 -1
  226. package/lib/ui/spinner.d.ts +3 -0
  227. package/lib/ui/spinner.d.ts.map +1 -0
  228. package/lib/ui/spinner.js +13 -0
  229. package/lib/utils/debug.d.ts +5 -0
  230. package/lib/utils/debug.d.ts.map +1 -0
  231. package/lib/utils/debug.js +23 -0
  232. package/lib/utils/errorDisplay.d.ts +2 -0
  233. package/lib/utils/errorDisplay.d.ts.map +1 -0
  234. package/lib/utils/errorDisplay.js +19 -0
  235. package/package.json +34 -26
  236. package/lib/ChatWithMe.d.ts +0 -7
  237. package/lib/ChatWithMe.d.ts.map +0 -1
  238. package/lib/ChatWithMe.js +0 -90
  239. package/lib/QRCodeCard.d.ts.map +0 -1
  240. package/lib/addMeToYourFriends.d.ts.map +0 -1
  241. package/lib/sections/heading/camera.d.ts +0 -19
  242. package/lib/sections/heading/camera.d.ts.map +0 -1
  243. package/lib/sections/heading/camera.js +0 -199
  244. package/lib/styles/BioSection.css +0 -77
  245. package/lib/styles/CVCard.css +0 -142
  246. package/lib/styles/ChatWithMe.css +0 -6
  247. package/lib/styles/ContactInfoEditDialog.css +0 -153
  248. package/lib/styles/EducationCard.css +0 -103
  249. package/lib/styles/HeadingSection.css +0 -309
  250. package/lib/styles/ProfileCard.css +0 -66
  251. package/lib/styles/ProfileView.css +0 -65
  252. package/lib/styles/ProjectsCard.css +0 -206
  253. package/lib/styles/QRCodeCard.css +0 -43
  254. package/lib/styles/SocialCard.css +0 -89
  255. package/lib/styles/dialog.css +0 -209
  256. package/lib/styles/utilities.css +0 -740
@@ -0,0 +1,433 @@
1
+ @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
2
+ @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
3
+ @prefix foaf: <http://xmlns.com/foaf/0.1/>.
4
+ @prefix owl: <http://www.w3.org/2002/07/owl#>.
5
+ @prefix solid: <http://www.w3.org/ns/solid/terms#>.
6
+ @prefix ui: <http://www.w3.org/ns/ui#>.
7
+ @prefix schema: <http://schema.org/>.
8
+ @prefix vcard: <http://www.w3.org/2006/vcard/ns#>.
9
+ @prefix org: <http://www.w3.org/ns/org#>.
10
+ @prefix : <#>.
11
+
12
+ ########### ATTENTION - we cannot rename this ontology file name without migrating existing data on existing accounts
13
+
14
+ ########### Social Media - other accounts
15
+ #
16
+ # Twitter, linked In, Orkid, Mastodon, Matrix, Bluesky, Instagram, Facebook, Github,
17
+ # Snapchat, TikTok, etc
18
+ #
19
+ # NOTE: Temporary icon strategy.
20
+ # We currently use URNs like <urn:profile-pane:icon:<key>> for bundled local icons.
21
+ # These icons are planned to move to a dedicated icons project in the future.
22
+
23
+ :this
24
+ <http://purl.org/dc/elements/1.1/title> "Social media form" ;
25
+ a ui:Form ;
26
+ ui:parts (
27
+ :SocialsForm
28
+ ).
29
+
30
+ :SocialsForm a ui:Multiple;
31
+ ui:label "online account";
32
+ ui:property foaf:account; # the triple is created with the foaf:acccounts predicate
33
+ ui:ordered true; # Allow user to order occounts most important first.
34
+ ui:part :AccountsForm.
35
+
36
+ :AccountsForm a ui:Group;
37
+ ui:weight 1;
38
+ ui:parts (
39
+ :AccountField
40
+ :AccountIdField ).
41
+
42
+ :AccountField a ui:Classifier;
43
+ ui:label "Account"@en;
44
+ ui:multiple false ;
45
+ ui:category foaf:Account. # the accounts are described by the foaf:Account predicate
46
+
47
+ # this is what is needed to make a dropdown box
48
+ foaf:Account a rdfs:Class;
49
+ rdfs:label "Online Account Provider";
50
+ owl:disjointUnionOf (
51
+ :BlueSkyAccount :DribbleAccount :DiggAccount :DiscordAccount :FacebookAccount :GithubAccount :InstagramAccount
52
+ :LinkedInAccount :MastodonAccount :MatrixAccount :MediumAccount :NostrAccount
53
+ :OrcidAccount :PinterestAccount :RedditAccount :SharechatAccount :SnapchatAccount :SpotifyAccount :StravaAccount
54
+ :TelegramAccount :TiktokAccount :TumblrAccount :TwitterAccount :WhatsAppAccount :YouTubeAccount :OtherAccount) .
55
+
56
+ :AccountIdField a ui:Options;
57
+ ui:dependingOn rdf:type;
58
+ ui:case
59
+ [ ui:for :BlueSkyAccount; ui:use :BlueSkyIdField ],
60
+ [ ui:for :DribbleAccount; ui:use :DribbleIdField ],
61
+ [ ui:for :DiggAccount; ui:use :DiggIdField],
62
+ [ ui:for :FacebookAccount; ui:use :FacebookIdField ],
63
+ [ ui:for :DiscordAccount; ui:use :DiscordIdField ],
64
+ [ ui:for :GithubAccount; ui:use :GithubIdField ],
65
+ [ ui:for :InstagramAccount; ui:use :InstagramIdField ],
66
+ [ ui:for :LinkedInAccount; ui:use :LinkedInIdField ],
67
+ [ ui:for :MastodonAccount; ui:use :MastodonIdField ],
68
+ [ ui:for :MatrixAccount; ui:use :MatrixIdField ],
69
+ [ ui:for :MediumAccount; ui:use :MediumIdField ],
70
+ [ ui:for :NostrAccount; ui:use :NostrIdField ],
71
+ [ ui:for :OrcidAccount; ui:use :OrcidIdField ],
72
+ [ ui:for :PinterestAccount; ui:use :PinterestIdField ],
73
+ [ ui:for :RedditAccount; ui:use :RedditIdField ],
74
+ [ ui:for :StravaAccount; ui:use :StravaIdField ],
75
+ [ ui:for :SharechatAccount; ui:use :SharechatIdField ],
76
+ [ ui:for :SnapchatAccount; ui:use :SnapchatIdField ],
77
+ [ ui:for :SpotifyAccount; ui:use :SpotifyIdField ],
78
+ [ ui:for :TelegramAccount; ui:use :TelegramIdField ],
79
+ [ ui:for :TiktokAccount; ui:use :TiktokIdField ],
80
+ [ ui:for :TumblrAccount; ui:use :TumblrIdField ],
81
+ [ ui:for :TwitterAccount; ui:use :TwitterIdField ],
82
+ [ ui:for :WhatsAppAccount; ui:use :WhatsAppIdField ],
83
+ [ ui:for :YouTubeAccount; ui:use :YouTubeIdField ],
84
+ [ ui:for :OtherAccount; ui:use :OtherIdForm ] .
85
+
86
+ :BlueSkyAccount rdfs:subClassOf foaf:Account ;
87
+ rdfs:label "Bluesky";
88
+ foaf:userProfilePrefix "https://bsky.app/profile/";
89
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/bluesky-1.svg>;
90
+ foaf:homepage <https://bsky.app/> .
91
+
92
+ :DribbleAccount rdfs:subClassOf foaf:Account ;
93
+ rdfs:label "Dribble";
94
+ foaf:userProfilePrefix "https://dribbble.com/";
95
+ foaf:icon <urn:profile-pane:icon:dribbble>;
96
+ foaf:homepage <https://dribbble.com/> .
97
+
98
+
99
+ :DiscordAccount rdfs:subClassOf foaf:Account ;
100
+ rdfs:label "Discord";
101
+ foaf:userProfilePrefix "https://discord.com/users/";
102
+ foaf:icon <urn:profile-pane:icon:discord>;
103
+ foaf:homepage <https://discord.com/> .
104
+
105
+ :DiggAccount rdfs:subClassOf foaf:Account ;
106
+ rdfs:label "Digg";
107
+ foaf:userProfilePrefix "https://www.digg.com/";
108
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/digg-icon.svg>;
109
+ foaf:homepage <https://www.digg.com/> .
110
+
111
+ :FacebookAccount rdfs:subClassOf foaf:Account ;
112
+ rdfs:label "Facebook";
113
+ foaf:userProfilePrefix "https://www.facebook.com/";
114
+ foaf:icon <urn:profile-pane:icon:facebook>;
115
+ foaf:homepage <https://www.facebook.com/> .
116
+
117
+ :GithubAccount rdfs:subClassOf foaf:Account ;
118
+ rdfs:label "Github";
119
+ foaf:userProfilePrefix "https://www.github.com/";
120
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/github-icon.svg>;
121
+ foaf:homepage <https://github.com/> .
122
+
123
+ :InstagramAccount rdfs:subClassOf foaf:Account ;
124
+ rdfs:label "Instagram";
125
+ foaf:userProfilePrefix "https://www.instagram.com/";
126
+ foaf:icon <urn:profile-pane:icon:instagram>;
127
+ foaf:homepage <https://www.instagram.com/> .
128
+
129
+ :LinkedInAccount rdfs:subClassOf foaf:Account ;
130
+ rdfs:label "LinkedIn";
131
+ foaf:userProfilePrefix "https://www.linkedin.com/in/";
132
+ foaf:icon <urn:profile-pane:icon:linkedin>;
133
+ foaf:homepage <https://linkedin.com/> .
134
+
135
+ :MastodonAccount rdfs:subClassOf foaf:Account ;
136
+ rdfs:label "Mastodon" ;
137
+ foaf:userProfilePrefix "https://mastodon.social/";
138
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/mastodon-2.svg>;
139
+ foaf:homepage <https://joinmastodon.org/> .
140
+
141
+ :MatrixAccount rdfs:subClassOf foaf:Account ;
142
+ rdfs:label "Matrix" ;
143
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/matrix-logo-black.svg> ;
144
+ foaf:userProfilePrefix "https://matrix.to/#/" ;
145
+ foaf:homepage <https://matrix.org/> .
146
+
147
+ :MediumAccount rdfs:subClassOf foaf:Account ;
148
+ rdfs:label "Medium";
149
+ foaf:userProfilePrefix "https://medium.com/";
150
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/medium-logo-wordmark-black.svg>;
151
+ foaf:homepage <https://medium.com/> .
152
+
153
+ :NostrAccount rdfs:subClassOf foaf:Account ;
154
+ rdfs:label "Nostr";
155
+ foaf:userProfilePrefix "https://primal.net/p/";
156
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/nostr-icon-purple-on-white.svg>;
157
+ foaf:homepage <https://nostr.net/> .
158
+
159
+ :OrcidAccount rdfs:subClassOf foaf:Account ;
160
+ rdfs:label "ORCiD";
161
+ foaf:userProfilePrefix "https://orcid.org/";
162
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/ORCID-1.svg>;
163
+ foaf:homepage <https://orcid.org/> .
164
+
165
+ :PinterestAccount rdfs:subClassOf foaf:Account ;
166
+ rdfs:label "Pinterest";
167
+ foaf:userProfilePrefix "https://pin.it/";
168
+ foaf:icon <urn:profile-pane:icon:pinterest>;
169
+ foaf:homepage <https://pinterest.com/> .
170
+
171
+ :RedditAccount rdfs:subClassOf foaf:Account ;
172
+ rdfs:label "Reddit";
173
+ foaf:userProfilePrefix "https://www.reddit.com/user/";
174
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/reddit-4.svg>;
175
+ foaf:homepage <https://reddit.com/> .
176
+
177
+ :SharechatAccount rdfs:subClassOf foaf:Account ;
178
+ rdfs:label "ShareChat";
179
+ foaf:userProfilePrefix "https://www.sharechat.com/user/";
180
+ foaf:icon <urn:profile-pane:icon:sharechat>;
181
+ foaf:homepage <https://sharechat.com/> .
182
+
183
+ :SnapchatAccount rdfs:subClassOf foaf:Account ;
184
+ rdfs:label "Snapchat";
185
+ foaf:userProfilePrefix "https://www.snapchat.com/add/";
186
+ foaf:icon <urn:profile-pane:icon:snapchat>;
187
+ foaf:homepage <https://www.snapchat.com/> .
188
+
189
+ :SpotifyAccount rdfs:subClassOf foaf:Account ;
190
+ rdfs:label "Spotify";
191
+ foaf:userProfilePrefix "https://www.spotify.com/user/";
192
+ foaf:icon <urn:profile-pane:icon:spotify>;
193
+ foaf:homepage <https://www.spotify.com/> .
194
+
195
+ :StravaAccount rdfs:subClassOf foaf:Account ;
196
+ rdfs:label "Strava";
197
+ foaf:userProfilePrefix "https://www.strava.com/athletes/";
198
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/strava-2.svg>;
199
+ foaf:homepage <https://strava.com/> .
200
+
201
+ :TelegramAccount rdfs:subClassOf foaf:Account ;
202
+ rdfs:label "Telegram";
203
+ foaf:userProfilePrefix "https://t.me/";
204
+ foaf:icon <urn:profile-pane:icon:telegram>;
205
+ foaf:homepage <https://telegram.org/> .
206
+
207
+ :TiktokAccount rdfs:subClassOf foaf:Account ;
208
+ rdfs:label "TikTok";
209
+ foaf:userProfilePrefix "https://www.tiktok.com/@";
210
+ foaf:icon <urn:profile-pane:icon:tiktok>;
211
+ foaf:homepage <https://www.tiktok.com/> .
212
+
213
+ :TumblrAccount rdfs:subClassOf foaf:Account ;
214
+ rdfs:label "Tumblr";
215
+ foaf:userProfilePrefix "https://www.tumblr.com/";
216
+ foaf:icon <https://solidos.github.io/solid-ui/src/icons/social/tumblr-icon.svg>;
217
+ foaf:homepage <https://www.tumblr.com/> .
218
+
219
+ :TwitterAccount rdfs:subClassOf foaf:Account ;
220
+ rdfs:label "X";
221
+ foaf:userProfilePrefix "https://x.com/";
222
+ foaf:icon <urn:profile-pane:icon:x>;
223
+ foaf:homepage <https://x.com/> .
224
+
225
+ :WhatsAppAccount rdfs:subClassOf foaf:Account ;
226
+ rdfs:label "WhatsApp";
227
+ foaf:userProfilePrefix "https://wa.me/";
228
+ foaf:icon <urn:profile-pane:icon:whatsapp>;
229
+ foaf:homepage <https://www.whatsapp.com/> .
230
+
231
+ :YouTubeAccount rdfs:subClassOf foaf:Account ;
232
+ rdfs:label "YouTube";
233
+ foaf:userProfilePrefix "https://www.youtube.com/";
234
+ foaf:icon <urn:profile-pane:icon:youtube>;
235
+ foaf:homepage <https://www.youtube.com/> .
236
+
237
+ :OtherAccount rdfs:subClassOf foaf:Account ;
238
+ rdfs:label "Other" ;
239
+ foaf:icon <urn:profile-pane:starIcon> .
240
+
241
+ :BlueSkyIdField
242
+ a ui:SingleLineTextField ;
243
+ ui:label "Username";
244
+ ui:maxLength "200" ;
245
+ ui:property foaf:accountName ;
246
+ ui:pattern "@[a-z0-9A-Z_-](.[a-z0-9A-Z_-])*".
247
+
248
+ :DiggIdField
249
+ a ui:SingleLineTextField ;
250
+ ui:label "Username";
251
+ ui:maxLength "200" ;
252
+ ui:property foaf:accountName ;
253
+ ui:pattern "@[a-z0-9A-Z_-](.[a-z0-9A-Z_-])*".
254
+
255
+ :FacebookIdField
256
+ a ui:SingleLineTextField ;
257
+ ui:label "Username";
258
+ ui:property foaf:accountName ;
259
+ ui:pattern "[a-z0-9A-Z_-]*".
260
+
261
+ :DiscordIdField
262
+ a ui:SingleLineTextField ;
263
+ ui:label "Username";
264
+ ui:property foaf:accountName ;
265
+ ui:pattern "[a-z0-9A-Z_-]*".
266
+
267
+ :DribbleIdField
268
+ a ui:SingleLineTextField ;
269
+ ui:label "Username";
270
+ ui:property foaf:accountName ;
271
+ ui:pattern "[a-z0-9A-Z_-]*".
272
+
273
+ :GithubIdField
274
+ a ui:SingleLineTextField ;
275
+ ui:label "Username";
276
+ ui:maxLength "200" ;
277
+ ui:property foaf:accountName ;
278
+ ui:pattern "[a-z0-9A-Z_-]*".
279
+
280
+ :InstagramIdField
281
+ a ui:SingleLineTextField ;
282
+ ui:label "Username";
283
+ ui:maxLength "200" ;
284
+ ui:property foaf:accountName ;
285
+ ui:pattern "[a-z0-9A-Z_-]*".
286
+
287
+ :LinkedInIdField
288
+ a ui:SingleLineTextField ;
289
+ ui:label "Username";
290
+ ui:maxLength "200" ;
291
+ ui:property foaf:accountName ;
292
+ ui:pattern "[a-z0-9A-Z_-]*(.[a-z0-9A-Z_-])*".
293
+
294
+ :MastodonIdField
295
+ a ui:SingleLineTextField ;
296
+ ui:label "Username";
297
+ ui:maxLength "200" ;
298
+ ui:property foaf:accountName ;
299
+ ui:pattern "@[a-z0-9A-Z_-]*(.[a-z0-9A-Z_-])*".
300
+
301
+ :MatrixIdField
302
+ a ui:SingleLineTextField ;
303
+ ui:label "Username";
304
+ ui:maxLength "200" ;
305
+ ui:property foaf:accountName ;
306
+ ui:pattern "@[a-z0-9A-Z_-]*(.[a-z0-9A-Z_-])*".
307
+
308
+ :MediumIdField
309
+ a ui:SingleLineTextField ;
310
+ ui:label "Username";
311
+ ui:maxLength "200" ;
312
+ ui:property foaf:accountName ;
313
+ ui:pattern "@[a-z0-9A-Z_-]*(.[a-z0-9A-Z_-])*".
314
+
315
+ :NostrIdField
316
+ a ui:SingleLineTextField ;
317
+ ui:label "Username";
318
+ ui:maxLength "200" ;
319
+ ui:property foaf:accountName ;
320
+ ui:pattern "[a-z0-9A-Z_-]*(.[a-z0-9A-Z_-])*".
321
+
322
+ :OrcidIdField
323
+ a ui:SingleLineTextField ;
324
+ ui:label "Username";
325
+ ui:maxLength "200" ;
326
+ ui:property foaf:accountName ;
327
+ ui:pattern "[a-z0-9A-Z_-]*".
328
+
329
+ :PinterestIdField
330
+ a ui:SingleLineTextField ;
331
+ ui:label "Username";
332
+ ui:maxLength "200" ;
333
+ ui:property foaf:accountName ;
334
+ ui:pattern "[a-z0-9A-Z_-]*".
335
+
336
+ :RedditIdField
337
+ a ui:SingleLineTextField ;
338
+ ui:label "Username";
339
+ ui:maxLength "200" ;
340
+ ui:property foaf:accountName ;
341
+ ui:pattern "[a-z0-9A-Z_-]*".
342
+
343
+ :StravaIdField
344
+ a ui:SingleLineTextField ;
345
+ ui:label "Username";
346
+ ui:maxLength "200" ;
347
+ ui:property foaf:accountName ;
348
+ ui:pattern "[a-z0-9A-Z_-]*".
349
+
350
+ :SnapchatIdField
351
+ a ui:SingleLineTextField ;
352
+ ui:label "Username";
353
+ ui:maxLength "200" ;
354
+ ui:property foaf:accountName ;
355
+ ui:pattern "@[a-z0-9A-Z_-]*".
356
+
357
+ :SpotifyIdField
358
+ a ui:SingleLineTextField ;
359
+ ui:label "Username";
360
+ ui:maxLength "200" ;
361
+ ui:property foaf:accountName ;
362
+ ui:pattern "@[a-z0-9A-Z_-]*".
363
+
364
+ :TelegramIdField
365
+ a ui:SingleLineTextField ;
366
+ ui:label "Username";
367
+ ui:maxLength "200" ;
368
+ ui:property foaf:accountName ;
369
+ ui:pattern "@[a-z0-9A-Z_-]*".
370
+
371
+ :TiktokIdField
372
+ a ui:SingleLineTextField ;
373
+ ui:label "Username";
374
+ ui:maxLength "200" ;
375
+ ui:property foaf:accountName ;
376
+ ui:pattern "@[a-z0-9A-Z_-]*".
377
+
378
+ :TumblrIdField
379
+ a ui:SingleLineTextField ;
380
+ ui:label "Username";
381
+ ui:maxLength "200" ;
382
+ ui:property foaf:accountName ;
383
+ ui:pattern "@[a-z0-9A-Z_-]*".
384
+
385
+ :TwitterIdField
386
+ a ui:SingleLineTextField ;
387
+ ui:label "Username";
388
+ ui:maxLength "200" ;
389
+ ui:property foaf:accountName ;
390
+ ui:pattern "@[a-z0-9A-Z_-]*".
391
+
392
+ :WhatsAppIdField
393
+ a ui:SingleLineTextField ;
394
+ ui:label "Username";
395
+ ui:maxLength "200" ;
396
+ ui:property foaf:accountName ;
397
+ ui:pattern "@[a-z0-9A-Z_-]*".
398
+
399
+ :YouTubeIdField
400
+ a ui:SingleLineTextField ;
401
+ ui:label "Username";
402
+ ui:maxLength "200" ;
403
+ ui:property foaf:accountName ;
404
+ ui:pattern "@[a-z0-9A-Z_-]*".
405
+
406
+ # an unknown online account needs more info
407
+
408
+ :OtherIdForm a ui:Group;
409
+ ui:weight 0;
410
+ ui:parts (
411
+ :OtherIdField
412
+ :OtherIconField
413
+ :OtherLabelField ).
414
+
415
+ :OtherIdField
416
+ a ui:NamedNodeURIField ;
417
+ ui:label "Account link";
418
+ ui:maxLength "200" ;
419
+ ui:property foaf:homepage.
420
+
421
+ :OtherIconField
422
+ a ui:NamedNodeURIField ;
423
+ ui:label "Icon link";
424
+ ui:maxLength "200" ;
425
+ ui:property foaf:icon.
426
+
427
+ :OtherLabelField
428
+ a ui:SingleLineTextField ;
429
+ ui:label "Name";
430
+ ui:maxLength "200" ;
431
+ ui:property rdfs:label.
432
+
433
+ # ends