profile-pane 3.1.3 → 3.1.4
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.
- package/lib/FriendList.d.ts +0 -1
- package/lib/FriendList.d.ts.map +1 -1
- package/lib/FriendList.js +5 -33
- package/lib/SocialPresenter.js +1 -1
- package/lib/addMeToYourFriends.d.ts +4 -3
- package/lib/addMeToYourFriends.d.ts.map +1 -1
- package/lib/addMeToYourFriends.js +25 -9
- package/lib/editProfilePane/EditCVCard.d.ts.map +1 -1
- package/lib/editProfilePane/EditCVCard.js +2 -7
- package/lib/editProfilePane/EditCommunitiesCard.d.ts +3 -1
- package/lib/editProfilePane/EditCommunitiesCard.d.ts.map +1 -1
- package/lib/editProfilePane/EditCommunitiesCard.js +58 -23
- package/lib/editProfilePane/EditFriendsCard.d.ts +3 -1
- package/lib/editProfilePane/EditFriendsCard.d.ts.map +1 -1
- package/lib/editProfilePane/EditFriendsCard.js +58 -23
- package/lib/editProfilePane/EditOtherPreferences.js +1 -1
- package/lib/editProfilePane/EditProfileView.d.ts +1 -1
- package/lib/editProfilePane/EditProfileView.d.ts.map +1 -1
- package/lib/editProfilePane/EditProfileView.js +7 -3
- package/lib/editProfilePane/EditSocialCard.d.ts.map +1 -1
- package/lib/editProfilePane/EditSocialCard.js +2 -7
- package/lib/editProfilePane/editProfilePresenter.d.ts +4 -0
- package/lib/editProfilePane/editProfilePresenter.d.ts.map +1 -0
- package/lib/editProfilePane/editProfilePresenter.js +108 -0
- package/lib/profile-pane.js +1005 -340
- package/lib/profile-pane.js.map +1 -1
- package/lib/profile-pane.min.js +45 -46
- package/lib/profile-pane.min.js.map +1 -1
- package/lib/rdfFormsHelper.d.ts +1 -0
- package/lib/rdfFormsHelper.d.ts.map +1 -1
- package/lib/rdfFormsHelper.js +125 -0
- package/lib/styles/ProfileCard.css +6 -0
- package/lib/styles/ProfileView.css +3 -5
- package/lib/styles/editProfile.css +62 -0
- package/lib/styles/profileRDFFormsEnforced.css +427 -0
- package/lib/styles/utilities.css +30 -1
- package/lib/texts.d.ts +5 -5
- package/lib/texts.d.ts.map +1 -1
- package/lib/texts.js +5 -5
- package/package.json +9 -6
- package/lib/styles/rdfFormsEnforced.css +0 -186
package/lib/styles/utilities.css
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
/* Utility-first CSS classes for layout, spacing, and responsiveness */
|
|
2
2
|
|
|
3
|
+
:root {
|
|
4
|
+
--profile-image-size: 3em;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
@media (max-width: 1000px) {
|
|
8
|
+
.profile-grid,
|
|
9
|
+
.profile-grid * {
|
|
10
|
+
font-size: 2rem !important;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.profile-grid .actionButton,
|
|
14
|
+
.profile-grid .searchInput,
|
|
15
|
+
.profile-grid .flatButton,
|
|
16
|
+
.profile-grid .buttonSection button,
|
|
17
|
+
.profile-grid .groupButtonsList button {
|
|
18
|
+
min-height: calc(var(--min-touch-target) + 0.5em) !important;
|
|
19
|
+
font-size: 2rem !important;
|
|
20
|
+
padding: 1em 1em !important;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
3
24
|
.actionButton {
|
|
4
25
|
width: 100%;
|
|
5
26
|
min-width: 180px;
|
|
@@ -14,7 +35,8 @@
|
|
|
14
35
|
|
|
15
36
|
.profile-grid {
|
|
16
37
|
display: grid;
|
|
17
|
-
grid
|
|
38
|
+
/* Allow the grid to shrink below 30em on small viewports to avoid overflow */
|
|
39
|
+
grid-template-columns: repeat(auto-fit, minmax(min(100%, 30em), 1fr));
|
|
18
40
|
gap: var(--spacing-lg);
|
|
19
41
|
background: var(--color-background);
|
|
20
42
|
}
|
|
@@ -207,6 +229,13 @@
|
|
|
207
229
|
box-shadow: none;
|
|
208
230
|
}
|
|
209
231
|
|
|
232
|
+
/* Prevent labels from appearing focusable to keyboard users. */
|
|
233
|
+
label:focus,
|
|
234
|
+
label:focus-visible {
|
|
235
|
+
outline: none !important;
|
|
236
|
+
box-shadow: none !important;
|
|
237
|
+
}
|
|
238
|
+
|
|
210
239
|
/* Better focus for text elements */
|
|
211
240
|
.focusable-text:focus {
|
|
212
241
|
background-color: rgba(124, 77, 255, 0.1);
|
package/lib/texts.d.ts
CHANGED
|
@@ -9,12 +9,12 @@ export declare const logInAddMeToYourFriendsButtonText = "Login to add me to you
|
|
|
9
9
|
export declare const logInToChatWithMeButtonText = "Login to chat with me";
|
|
10
10
|
export declare const friendExistsAlreadyButtonText = "Already part of friends";
|
|
11
11
|
export declare const chatWithMeButtonText = "Chat with me";
|
|
12
|
-
export declare const yourContactInformationHeading = "
|
|
13
|
-
export declare const otherPreferencesHeadingText = "Other
|
|
14
|
-
export declare const communitiesHeadingText = "
|
|
12
|
+
export declare const yourContactInformationHeading = "Your profile";
|
|
13
|
+
export declare const otherPreferencesHeadingText = "Other preferences";
|
|
14
|
+
export declare const communitiesHeadingText = "Your communities";
|
|
15
15
|
export declare const resumeHeadingText = "Resume";
|
|
16
|
-
export declare const socialAccountsHeadingText = "Social
|
|
17
|
-
export declare const sharedItemsHeadingText = "Shared
|
|
16
|
+
export declare const socialAccountsHeadingText = "Social accounts";
|
|
17
|
+
export declare const sharedItemsHeadingText = "Shared items";
|
|
18
18
|
export declare const friendsHeadingText = "Friends";
|
|
19
19
|
export declare const contactHeadingText = "Contact";
|
|
20
20
|
//# sourceMappingURL=texts.d.ts.map
|
package/lib/texts.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"texts.d.ts","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,mBAAmB,wCAAwC,CAAA;AAGxE,eAAO,MAAM,2BAA2B,2CAA2C,CAAA;AACnF,eAAO,MAAM,oBAAoB,+BAA+B,CAAA;AAChE,eAAO,MAAM,2BAA2B,sBAAsB,CAAA;AAG9D,eAAO,MAAM,mBAAmB,0BAA0B,CAAA;AAC1D,eAAO,MAAM,cAAc,eAAe,CAAA;AAG1C,eAAO,MAAM,4BAA4B,2BAA2B,CAAA;AACpE,eAAO,MAAM,iCAAiC,oCAAoC,CAAA;AAClF,eAAO,MAAM,2BAA2B,0BAA0B,CAAA;AAClE,eAAO,MAAM,6BAA6B,4BAA4B,CAAA;AACtE,eAAO,MAAM,oBAAoB,iBAAiB,CAAA;AAGlD,eAAO,MAAM,6BAA6B,
|
|
1
|
+
{"version":3,"file":"texts.d.ts","sourceRoot":"","sources":["../src/texts.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,mBAAmB,wCAAwC,CAAA;AAGxE,eAAO,MAAM,2BAA2B,2CAA2C,CAAA;AACnF,eAAO,MAAM,oBAAoB,+BAA+B,CAAA;AAChE,eAAO,MAAM,2BAA2B,sBAAsB,CAAA;AAG9D,eAAO,MAAM,mBAAmB,0BAA0B,CAAA;AAC1D,eAAO,MAAM,cAAc,eAAe,CAAA;AAG1C,eAAO,MAAM,4BAA4B,2BAA2B,CAAA;AACpE,eAAO,MAAM,iCAAiC,oCAAoC,CAAA;AAClF,eAAO,MAAM,2BAA2B,0BAA0B,CAAA;AAClE,eAAO,MAAM,6BAA6B,4BAA4B,CAAA;AACtE,eAAO,MAAM,oBAAoB,iBAAiB,CAAA;AAGlD,eAAO,MAAM,6BAA6B,iBAAiB,CAAA;AAC3D,eAAO,MAAM,2BAA2B,sBAAsB,CAAA;AAC9D,eAAO,MAAM,sBAAsB,qBAAqB,CAAA;AACxD,eAAO,MAAM,iBAAiB,WAAW,CAAA;AACzC,eAAO,MAAM,yBAAyB,oBAAoB,CAAA;AAC1D,eAAO,MAAM,sBAAsB,iBAAiB,CAAA;AACpD,eAAO,MAAM,kBAAkB,YAAY,CAAA;AAC3C,eAAO,MAAM,kBAAkB,YAAY,CAAA"}
|
package/lib/texts.js
CHANGED
|
@@ -24,11 +24,11 @@ const friendExistsAlreadyButtonText = exports.friendExistsAlreadyButtonText = 'A
|
|
|
24
24
|
const chatWithMeButtonText = exports.chatWithMeButtonText = 'Chat with me';
|
|
25
25
|
|
|
26
26
|
// Profile & Edit profile texts
|
|
27
|
-
const yourContactInformationHeading = exports.yourContactInformationHeading = '
|
|
28
|
-
const otherPreferencesHeadingText = exports.otherPreferencesHeadingText = 'Other
|
|
29
|
-
const communitiesHeadingText = exports.communitiesHeadingText = '
|
|
27
|
+
const yourContactInformationHeading = exports.yourContactInformationHeading = 'Your profile';
|
|
28
|
+
const otherPreferencesHeadingText = exports.otherPreferencesHeadingText = 'Other preferences';
|
|
29
|
+
const communitiesHeadingText = exports.communitiesHeadingText = 'Your communities';
|
|
30
30
|
const resumeHeadingText = exports.resumeHeadingText = 'Resume';
|
|
31
|
-
const socialAccountsHeadingText = exports.socialAccountsHeadingText = 'Social
|
|
32
|
-
const sharedItemsHeadingText = exports.sharedItemsHeadingText = 'Shared
|
|
31
|
+
const socialAccountsHeadingText = exports.socialAccountsHeadingText = 'Social accounts';
|
|
32
|
+
const sharedItemsHeadingText = exports.sharedItemsHeadingText = 'Shared items';
|
|
33
33
|
const friendsHeadingText = exports.friendsHeadingText = 'Friends';
|
|
34
34
|
const contactHeadingText = exports.contactHeadingText = 'Contact';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "profile-pane",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.4",
|
|
4
4
|
"description": "A SolidOS compatible pane to display a personal profile page",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"*.css"
|
|
@@ -52,9 +52,12 @@
|
|
|
52
52
|
"validate-color": "^2.2.4"
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|
|
55
|
-
"rdflib": "^2.3.
|
|
56
|
-
"solid-logic": "^4.0.
|
|
57
|
-
"solid-ui": "^3.0.
|
|
55
|
+
"rdflib": "^2.3.6",
|
|
56
|
+
"solid-logic": "^4.0.6",
|
|
57
|
+
"solid-ui": "^3.0.5"
|
|
58
|
+
},
|
|
59
|
+
"overrides": {
|
|
60
|
+
"solid-ui": "$solid-ui"
|
|
58
61
|
},
|
|
59
62
|
"devDependencies": {
|
|
60
63
|
"@babel/cli": "^7.28.6",
|
|
@@ -71,7 +74,7 @@
|
|
|
71
74
|
"babel-loader": "^10.0.0",
|
|
72
75
|
"babel-plugin-inline-import": "^3.0.0",
|
|
73
76
|
"chat-pane": "^3.0.3",
|
|
74
|
-
"contacts-pane": "3.
|
|
77
|
+
"contacts-pane": "^3.0.3",
|
|
75
78
|
"copy-webpack-plugin": "^14.0.0",
|
|
76
79
|
"css-loader": "^7.1.4",
|
|
77
80
|
"eslint": "^9.39.2",
|
|
@@ -83,7 +86,7 @@
|
|
|
83
86
|
"node-polyfill-webpack-plugin": "^4.1.0",
|
|
84
87
|
"rdflib": "^2.3.6",
|
|
85
88
|
"solid-logic": "^4.0.6",
|
|
86
|
-
"solid-ui": "^3.0.
|
|
89
|
+
"solid-ui": "^3.0.6",
|
|
87
90
|
"style-loader": "^4.0.0",
|
|
88
91
|
"terser-webpack-plugin": "^5.3.16",
|
|
89
92
|
"ts-loader": "^9.5.4",
|
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
/* Solid-UI form sizing fixes scoped to Edit CV section */
|
|
2
|
-
.profile-form .hoverControl:not(:has(> img:first-child)) {
|
|
3
|
-
border: 0.1em solid rgb(136, 136, 136) !important;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.profile-form .hoverControl:has(> img:first-child) {
|
|
7
|
-
background-color: transparent !important;
|
|
8
|
-
border: none !important;
|
|
9
|
-
margin: 0 !important;
|
|
10
|
-
border-radius: 0 !important;
|
|
11
|
-
padding: 0.7em !important;
|
|
12
|
-
cursor: pointer;
|
|
13
|
-
display: inline-flex;
|
|
14
|
-
align-items: center;
|
|
15
|
-
justify-content: center;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
.profile-form .hoverControlHide {
|
|
19
|
-
width: 1.5em !important;
|
|
20
|
-
height: 1.5em !important;
|
|
21
|
-
display: block;
|
|
22
|
-
margin-top: 0 !important;
|
|
23
|
-
margin-left: 0 !important;
|
|
24
|
-
margin-right: 0 !important;
|
|
25
|
-
margin-bottom: 0.3em !important;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
.profile-form .hoverControl:has(> img:first-child) > span {
|
|
29
|
-
display: inline-flex;
|
|
30
|
-
align-items: center;
|
|
31
|
-
margin-left: 0.3em;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.profile-form div[style*="padding: 0.5em"]:has(> img) {
|
|
35
|
-
display: inline-flex;
|
|
36
|
-
align-items: center;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.profile-form div[style*="padding: 0.5em"]:has(> img) > span {
|
|
40
|
-
margin-left: 0.3em;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
.profile-form .hoverControl:has(> img:first-child):hover {
|
|
44
|
-
background-color: transparent !important;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.profile-form button:has(> img[src$=".svg"]) {
|
|
48
|
-
background-color: transparent !important;
|
|
49
|
-
border: none !important;
|
|
50
|
-
margin: 0 !important;
|
|
51
|
-
border-radius: 0 !important;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
.profile-form button {
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
.profile-form input:not([type="color"]),
|
|
59
|
-
.profile-form textarea,
|
|
60
|
-
.profile-form select {
|
|
61
|
-
max-width: 100%;
|
|
62
|
-
min-width: 0;
|
|
63
|
-
box-sizing: border-box ;
|
|
64
|
-
background-color: #eef !important;
|
|
65
|
-
border: .05em solid #88c
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
.profile-form input[type="url"] {
|
|
69
|
-
width: 100%;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
.profile-form .formFieldValue {
|
|
73
|
-
min-width: 0;
|
|
74
|
-
margin-bottom: var(--spacing-sm);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
.profile-form .formFieldValue table {
|
|
78
|
-
margin: 0 !important;
|
|
79
|
-
padding: 0 !important;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
.profile-form .formFieldValue td {
|
|
83
|
-
padding: 0 !important;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
.profile-form .formFieldValue input:not([type="color"]),
|
|
87
|
-
.profile-form .formFieldValue textarea,
|
|
88
|
-
.profile-form .formFieldValue select {
|
|
89
|
-
width: 100%;
|
|
90
|
-
max-width: 100%;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
.profile-form select#formSelect {
|
|
94
|
-
width: 100%;
|
|
95
|
-
max-width: 97%;
|
|
96
|
-
box-sizing: border-box;
|
|
97
|
-
margin-left: 0 !important;
|
|
98
|
-
margin-right: 0 !important;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
.profile-form span select {
|
|
102
|
-
max-width: 96% !important;
|
|
103
|
-
box-sizing: border-box;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/* Remove border/padding from the first wrapper div (and its first child wrapper). */
|
|
107
|
-
.profile-form > div:first-of-type,
|
|
108
|
-
.profile-form > div:first-of-type > div:first-of-type {
|
|
109
|
-
border: none !important;
|
|
110
|
-
padding: 0 !important;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/* Remove border/padding from the inner div of the first wrapper in the contact section. */
|
|
114
|
-
section[aria-labelledby="edit-profile-contact-heading"] .profile-form > div:first-of-type > div:first-of-type {
|
|
115
|
-
border: none !important;
|
|
116
|
-
padding: 0 !important;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
/* In contactPane, remove border/padding from all direct child divs. */
|
|
120
|
-
.contactPane > div {
|
|
121
|
-
border: none !important;
|
|
122
|
-
padding: 0 !important;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
/* Align schema.org, solid terms, FOAF, vCard, and org field labels with their input values. */
|
|
126
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://schema.org/"]),
|
|
127
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://www.w3.org/ns/solid/terms#"]),
|
|
128
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://xmlns.com/foaf/0.1/"]),
|
|
129
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://www.w3.org/2006/vcard/ns"]),
|
|
130
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://www.w3.org/ns/org#"]) {
|
|
131
|
-
display: inline-flex;
|
|
132
|
-
align-items: center;
|
|
133
|
-
vertical-align: middle;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://schema.org/"]) + .formFieldValue,
|
|
137
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://www.w3.org/ns/solid/terms#"]) + .formFieldValue,
|
|
138
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://xmlns.com/foaf/0.1/"]) + .formFieldValue,
|
|
139
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://www.w3.org/2006/vcard/ns"]) + .formFieldValue,
|
|
140
|
-
.profile-form :not(.choiceBox) > .formFieldName:has(a[href*="http://www.w3.org/ns/org#"]) + .formFieldValue {
|
|
141
|
-
display: inline-flex;
|
|
142
|
-
align-items: center;
|
|
143
|
-
vertical-align: middle;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
.profile-form textarea {
|
|
147
|
-
width: 100%;
|
|
148
|
-
box-sizing: border-box;
|
|
149
|
-
margin-top: var(--spacing-xs);
|
|
150
|
-
margin-left: 0 !important;
|
|
151
|
-
margin-right: 0 !important;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
/* Add horizontal gap between label and textarea for all label+textarea pairs. */
|
|
155
|
-
.profile-form div:has(> a) + div:has(textarea) {
|
|
156
|
-
margin-left: var(--spacing-sm);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
/* Center textarea label vertically in flex rows. */
|
|
160
|
-
.profile-form div[style*="display: flex"][style*="flex-direction: row"]:has(textarea) {
|
|
161
|
-
align-items: flex-start;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
.profile-form div[style*="display: flex"][style*="flex-direction: row"]:has(textarea) > div:has(> a) {
|
|
165
|
-
padding-top: var(--spacing-xs);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
.profile-form input:not([type="color"]) {
|
|
169
|
-
width: 100%;
|
|
170
|
-
margin-left: 0 !important;
|
|
171
|
-
margin-right: 0 !important;
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
/* Remove padding from table cells within webidControl */
|
|
175
|
-
.webidControl table td {
|
|
176
|
-
padding: 0 !important;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
/* Remove padding from contactPane divs inside webidControl table cells */
|
|
180
|
-
.webidControl table td div.contactPane.namedPane.fullWidth.individualPane {
|
|
181
|
-
padding: 0 !important;
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
.webidControl table td div.contactPane.namedPane {
|
|
185
|
-
border: none !important;
|
|
186
|
-
}
|