@isoftdata/svelte-user-configuration 2.0.4 → 2.1.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.
- package/README.md +162 -161
- package/dist/DeactivateUserModal.svelte +59 -59
- package/dist/PasswordRecoveryModal.svelte +83 -83
- package/dist/PasswordSetModal.svelte +127 -127
- package/dist/PermissionList.svelte +282 -282
- package/dist/UserAccountInfo.svelte +439 -439
- package/dist/UserConfiguration.svelte +30 -25
- package/dist/UserConfiguration.svelte.d.ts +6 -4
- package/dist/UserGroupMembership.svelte +64 -64
- package/dist/UserGroupMembership.svelte.d.ts +2 -1
- package/dist/UserSiteAccess.svelte +65 -65
- package/package.json +80 -81
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
+
import { type Snippet } from 'svelte'
|
|
2
3
|
import type {
|
|
3
4
|
ErrorFn,
|
|
4
5
|
IconName,
|
|
@@ -56,6 +57,7 @@
|
|
|
56
57
|
generateNewActivationPIN?: GenerateNewActivationPINFn
|
|
57
58
|
userSites: UserSites
|
|
58
59
|
canEditSiteAccess?: CanEditSiteAccess
|
|
60
|
+
showSiteAccess?: boolean
|
|
59
61
|
siteAccessChange?: SiteAccessChangeFn
|
|
60
62
|
groupMembership: GroupMembership
|
|
61
63
|
canEditGroupMembership?: CanEditGroupMembership
|
|
@@ -64,10 +66,10 @@
|
|
|
64
66
|
permissionValueMap?: PermissionValueMap
|
|
65
67
|
groupPermissionValueMap?: GroupPermissionValueMap
|
|
66
68
|
permissionValueChange?: PermissionValueChangeFn
|
|
67
|
-
userAccountInfo?:
|
|
68
|
-
siteAccess?:
|
|
69
|
-
userGroupMembership?:
|
|
70
|
-
permissionList?:
|
|
69
|
+
userAccountInfo?: Snippet
|
|
70
|
+
siteAccess?: Snippet
|
|
71
|
+
userGroupMembership?: Snippet
|
|
72
|
+
permissionList?: Snippet
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
let {
|
|
@@ -91,8 +93,9 @@
|
|
|
91
93
|
accountInfoChanged = undefined,
|
|
92
94
|
sendPasswordRecoveryToken = undefined,
|
|
93
95
|
generateNewActivationPIN = () => Promise.resolve(),
|
|
94
|
-
userSites,
|
|
96
|
+
userSites = [],
|
|
95
97
|
canEditSiteAccess = true,
|
|
98
|
+
showSiteAccess = true,
|
|
96
99
|
siteAccessChange = undefined,
|
|
97
100
|
groupMembership,
|
|
98
101
|
canEditGroupMembership = true,
|
|
@@ -113,14 +116,15 @@
|
|
|
113
116
|
<div class="row">
|
|
114
117
|
<div class="col-12 col-lg-4 mb-2">
|
|
115
118
|
<UserAccountInfo
|
|
116
|
-
bind:userAccount
|
|
117
|
-
bind:usernameInput
|
|
118
|
-
bind:doSendPasswordRecoveryToken
|
|
119
|
-
bind:cardHeight
|
|
120
119
|
{canToggleActive}
|
|
121
120
|
{canEditAccountInfo}
|
|
122
121
|
{passwordValidationRules}
|
|
123
122
|
{hasPermissionToChangePassword}
|
|
123
|
+
icon={userAccountInfoIcon}
|
|
124
|
+
bind:userAccount
|
|
125
|
+
bind:usernameInput
|
|
126
|
+
bind:doSendPasswordRecoveryToken
|
|
127
|
+
bind:cardHeight
|
|
124
128
|
{error}
|
|
125
129
|
{success}
|
|
126
130
|
{deactivateUser}
|
|
@@ -128,30 +132,31 @@
|
|
|
128
132
|
{confirmPasswordSet}
|
|
129
133
|
{generateNewActivationPIN}
|
|
130
134
|
{sendPasswordRecoveryToken}
|
|
131
|
-
icon={userAccountInfoIcon}
|
|
132
135
|
>
|
|
133
136
|
{@render userAccountInfo?.()}
|
|
134
137
|
</UserAccountInfo>
|
|
135
138
|
</div>
|
|
136
|
-
|
|
137
|
-
<
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
139
|
+
{#if showSiteAccess}
|
|
140
|
+
<div class="col-12 col-lg-4 mb-2">
|
|
141
|
+
<UserSiteAccess
|
|
142
|
+
{siteLabel}
|
|
143
|
+
{userSites}
|
|
144
|
+
{canEditSiteAccess}
|
|
145
|
+
style="height: {cardHeight}px;"
|
|
146
|
+
icon={userSiteAccessIcon}
|
|
147
|
+
{siteAccessChange}
|
|
148
|
+
>
|
|
149
|
+
{@render siteAccess?.()}
|
|
150
|
+
</UserSiteAccess>
|
|
151
|
+
</div>
|
|
152
|
+
{/if}
|
|
148
153
|
<div class="col-12 col-lg-4 mb-2">
|
|
149
154
|
<UserGroupMembership
|
|
150
155
|
{groupMembership}
|
|
151
156
|
{canEditGroupMembership}
|
|
152
|
-
{groupMembershipChange}
|
|
153
|
-
icon={groupMembershipIcon}
|
|
154
157
|
style="height: {cardHeight}px;"
|
|
158
|
+
icon={groupMembershipIcon}
|
|
159
|
+
{groupMembershipChange}
|
|
155
160
|
>
|
|
156
161
|
{@render userGroupMembership?.()}
|
|
157
162
|
</UserGroupMembership>
|
|
@@ -164,9 +169,9 @@
|
|
|
164
169
|
{permissions}
|
|
165
170
|
{permissionValueMap}
|
|
166
171
|
{groupPermissionValueMap}
|
|
167
|
-
{permissionValueChange}
|
|
168
172
|
icon={permissionListIcon}
|
|
169
173
|
cardHeaderTitle={permissionListCardHeaderTitle}
|
|
174
|
+
{permissionValueChange}
|
|
170
175
|
>
|
|
171
176
|
{@render permissionList?.()}
|
|
172
177
|
</PermissionList>
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type Snippet } from 'svelte';
|
|
1
2
|
import type { ErrorFn, IconName, UserSites, SuccessFn, SiteLabel, UserAccount, Permissions, GroupMembership, CanToggleActive, DeactivateUserFn, CanEditSiteAccess, SiteAccessChangeFn, PermissionValueMap, CanEditAccountInfo, ConfirmPasswordSetFn, AccountInfoChangedFn, CanEditGroupMembership, PasswordValidationRules, GroupMembershipChangeFn, PermissionValueChangeFn, GroupPermissionValueMap, GenerateNewActivationPINFn, DoSendPasswordRecoveryToken, SendPasswordRecoveryTokenFn, HasPermissionToChangePassword, PermissionListCardHeaderTitle } from './util';
|
|
2
3
|
interface Props {
|
|
3
4
|
siteLabel?: SiteLabel;
|
|
@@ -22,6 +23,7 @@ interface Props {
|
|
|
22
23
|
generateNewActivationPIN?: GenerateNewActivationPINFn;
|
|
23
24
|
userSites: UserSites;
|
|
24
25
|
canEditSiteAccess?: CanEditSiteAccess;
|
|
26
|
+
showSiteAccess?: boolean;
|
|
25
27
|
siteAccessChange?: SiteAccessChangeFn;
|
|
26
28
|
groupMembership: GroupMembership;
|
|
27
29
|
canEditGroupMembership?: CanEditGroupMembership;
|
|
@@ -30,10 +32,10 @@ interface Props {
|
|
|
30
32
|
permissionValueMap?: PermissionValueMap;
|
|
31
33
|
groupPermissionValueMap?: GroupPermissionValueMap;
|
|
32
34
|
permissionValueChange?: PermissionValueChangeFn;
|
|
33
|
-
userAccountInfo?:
|
|
34
|
-
siteAccess?:
|
|
35
|
-
userGroupMembership?:
|
|
36
|
-
permissionList?:
|
|
35
|
+
userAccountInfo?: Snippet;
|
|
36
|
+
siteAccess?: Snippet;
|
|
37
|
+
userGroupMembership?: Snippet;
|
|
38
|
+
permissionList?: Snippet;
|
|
37
39
|
}
|
|
38
40
|
declare const UserConfiguration: import("svelte").Component<Props, {}, "doSendPasswordRecoveryToken" | "userAccount" | "usernameInput">;
|
|
39
41
|
type UserConfiguration = ReturnType<typeof UserConfiguration>;
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import type { i18n } from 'i18next'
|
|
3
|
-
import type { IconName, HTMLDivAttributes } from './'
|
|
4
|
-
|
|
5
|
-
import { getContext } from 'svelte'
|
|
6
|
-
import Icon from '@isoftdata/svelte-icon'
|
|
7
|
-
import Checkbox from '@isoftdata/svelte-checkbox'
|
|
8
|
-
import { translate as defaultTranslate } from '@isoftdata/utility-string'
|
|
9
|
-
|
|
10
|
-
const { t: translate } = getContext<i18n>('i18next') || { t: defaultTranslate }
|
|
11
|
-
|
|
12
|
-
interface GroupMembership {
|
|
13
|
-
id: number
|
|
14
|
-
name: string
|
|
15
|
-
isMember: boolean
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
interface Props extends HTMLDivAttributes {
|
|
19
|
-
groupMembership: Array<GroupMembership>
|
|
20
|
-
canEditGroupMembership?: boolean
|
|
21
|
-
groupMembershipChange?: ((groupMembership: GroupMembership) => void | Promise<void>) | undefined
|
|
22
|
-
icon?: IconName
|
|
23
|
-
children?:
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
let {
|
|
27
|
-
groupMembership,
|
|
28
|
-
canEditGroupMembership = true,
|
|
29
|
-
groupMembershipChange = undefined,
|
|
30
|
-
icon = 'users',
|
|
31
|
-
children,
|
|
32
|
-
...rest
|
|
33
|
-
}: Props = $props()
|
|
34
|
-
</script>
|
|
35
|
-
|
|
36
|
-
<div
|
|
37
|
-
class="card"
|
|
38
|
-
{...rest}
|
|
39
|
-
>
|
|
40
|
-
<div class="card-header">
|
|
41
|
-
<h5 class="mb-0">
|
|
42
|
-
<Icon {icon} />
|
|
43
|
-
{translate('configuration.user.groupMembership', 'Group Membership')}
|
|
44
|
-
</h5>
|
|
45
|
-
</div>
|
|
46
|
-
<ul
|
|
47
|
-
class="list-group list-group-flush h-100"
|
|
48
|
-
style="overflow-y: auto;"
|
|
49
|
-
>
|
|
50
|
-
{#each groupMembership as { id, name, isMember }, index (id)}
|
|
51
|
-
<li class="list-group-item">
|
|
52
|
-
<Checkbox
|
|
53
|
-
label={name}
|
|
54
|
-
bind:checked={groupMembership[index].isMember}
|
|
55
|
-
disabled={!canEditGroupMembership}
|
|
56
|
-
onchange={async () => {
|
|
57
|
-
await groupMembershipChange?.({ id, name, isMember })
|
|
58
|
-
}}
|
|
59
|
-
/>
|
|
60
|
-
</li>
|
|
61
|
-
{/each}
|
|
62
|
-
</ul>
|
|
63
|
-
{@render children?.()}
|
|
64
|
-
</div>
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { i18n } from 'i18next'
|
|
3
|
+
import type { IconName, HTMLDivAttributes } from './'
|
|
4
|
+
|
|
5
|
+
import { getContext, type Snippet } from 'svelte'
|
|
6
|
+
import Icon from '@isoftdata/svelte-icon'
|
|
7
|
+
import Checkbox from '@isoftdata/svelte-checkbox'
|
|
8
|
+
import { translate as defaultTranslate } from '@isoftdata/utility-string'
|
|
9
|
+
|
|
10
|
+
const { t: translate } = getContext<i18n>('i18next') || { t: defaultTranslate }
|
|
11
|
+
|
|
12
|
+
interface GroupMembership {
|
|
13
|
+
id: number
|
|
14
|
+
name: string
|
|
15
|
+
isMember: boolean
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
interface Props extends HTMLDivAttributes {
|
|
19
|
+
groupMembership: Array<GroupMembership>
|
|
20
|
+
canEditGroupMembership?: boolean
|
|
21
|
+
groupMembershipChange?: ((groupMembership: GroupMembership) => void | Promise<void>) | undefined
|
|
22
|
+
icon?: IconName
|
|
23
|
+
children?: Snippet
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
let {
|
|
27
|
+
groupMembership,
|
|
28
|
+
canEditGroupMembership = true,
|
|
29
|
+
groupMembershipChange = undefined,
|
|
30
|
+
icon = 'users',
|
|
31
|
+
children,
|
|
32
|
+
...rest
|
|
33
|
+
}: Props = $props()
|
|
34
|
+
</script>
|
|
35
|
+
|
|
36
|
+
<div
|
|
37
|
+
class="card"
|
|
38
|
+
{...rest}
|
|
39
|
+
>
|
|
40
|
+
<div class="card-header">
|
|
41
|
+
<h5 class="mb-0">
|
|
42
|
+
<Icon {icon} />
|
|
43
|
+
{translate('configuration.user.groupMembership', 'Group Membership')}
|
|
44
|
+
</h5>
|
|
45
|
+
</div>
|
|
46
|
+
<ul
|
|
47
|
+
class="list-group list-group-flush h-100"
|
|
48
|
+
style="overflow-y: auto;"
|
|
49
|
+
>
|
|
50
|
+
{#each groupMembership as { id, name, isMember }, index (id)}
|
|
51
|
+
<li class="list-group-item">
|
|
52
|
+
<Checkbox
|
|
53
|
+
label={name}
|
|
54
|
+
bind:checked={groupMembership[index].isMember}
|
|
55
|
+
disabled={!canEditGroupMembership}
|
|
56
|
+
onchange={async () => {
|
|
57
|
+
await groupMembershipChange?.({ id, name, isMember })
|
|
58
|
+
}}
|
|
59
|
+
/>
|
|
60
|
+
</li>
|
|
61
|
+
{/each}
|
|
62
|
+
</ul>
|
|
63
|
+
{@render children?.()}
|
|
64
|
+
</div>
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { IconName, HTMLDivAttributes } from './';
|
|
2
|
+
import { type Snippet } from 'svelte';
|
|
2
3
|
interface GroupMembership {
|
|
3
4
|
id: number;
|
|
4
5
|
name: string;
|
|
@@ -9,7 +10,7 @@ interface Props extends HTMLDivAttributes {
|
|
|
9
10
|
canEditGroupMembership?: boolean;
|
|
10
11
|
groupMembershipChange?: ((groupMembership: GroupMembership) => void | Promise<void>) | undefined;
|
|
11
12
|
icon?: IconName;
|
|
12
|
-
children?:
|
|
13
|
+
children?: Snippet;
|
|
13
14
|
}
|
|
14
15
|
declare const UserGroupMembership: import("svelte").Component<Props, {}, "">;
|
|
15
16
|
type UserGroupMembership = ReturnType<typeof UserGroupMembership>;
|
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import type { Snippet } from 'svelte'
|
|
3
|
-
import type { i18n } from 'i18next'
|
|
4
|
-
import type { IconName, HTMLDivAttributes, SiteLabel } from './'
|
|
5
|
-
|
|
6
|
-
import { getContext } from 'svelte'
|
|
7
|
-
import Icon from '@isoftdata/svelte-icon'
|
|
8
|
-
import Checkbox from '@isoftdata/svelte-checkbox'
|
|
9
|
-
import { translate as defaultTranslate } from '@isoftdata/utility-string'
|
|
10
|
-
|
|
11
|
-
const { t: translate } = getContext<i18n>('i18next') || { t: defaultTranslate }
|
|
12
|
-
|
|
13
|
-
interface SiteAccess {
|
|
14
|
-
id: number
|
|
15
|
-
code: string
|
|
16
|
-
name: string
|
|
17
|
-
isAuthorized: boolean
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
interface Props extends HTMLDivAttributes {
|
|
21
|
-
userSites: Array<SiteAccess>
|
|
22
|
-
siteLabel?: SiteLabel
|
|
23
|
-
canEditSiteAccess?: boolean
|
|
24
|
-
siteAccessChange?: ((siteAccess: SiteAccess) => void | Promise<void>) | undefined
|
|
25
|
-
icon?: IconName
|
|
26
|
-
children?: Snippet
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
let {
|
|
30
|
-
userSites = $bindable(),
|
|
31
|
-
siteLabel = 'Site',
|
|
32
|
-
canEditSiteAccess = true,
|
|
33
|
-
siteAccessChange = undefined,
|
|
34
|
-
icon = 'industry-windows',
|
|
35
|
-
children,
|
|
36
|
-
...rest
|
|
37
|
-
}: Props = $props()
|
|
38
|
-
</script>
|
|
39
|
-
|
|
40
|
-
<div
|
|
41
|
-
class="card"
|
|
42
|
-
{...rest}
|
|
43
|
-
>
|
|
44
|
-
<div class="card-header">
|
|
45
|
-
<h5 class="mb-0"><Icon {icon} /> {translate(`user.configuration.${siteLabel}Access`, `${siteLabel} Access`)}</h5>
|
|
46
|
-
</div>
|
|
47
|
-
<ul
|
|
48
|
-
class="list-group list-group-flush h-100"
|
|
49
|
-
style="overflow-y: auto"
|
|
50
|
-
>
|
|
51
|
-
{#each userSites as { code, name }, i (code)}
|
|
52
|
-
<li class="list-group-item">
|
|
53
|
-
<Checkbox
|
|
54
|
-
label="{code} - {name}"
|
|
55
|
-
bind:checked={userSites[i].isAuthorized}
|
|
56
|
-
disabled={!canEditSiteAccess}
|
|
57
|
-
onchange={async () => {
|
|
58
|
-
await siteAccessChange?.(userSites[i])
|
|
59
|
-
}}
|
|
60
|
-
/>
|
|
61
|
-
</li>
|
|
62
|
-
{/each}
|
|
63
|
-
</ul>
|
|
64
|
-
{@render children?.()}
|
|
65
|
-
</div>
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from 'svelte'
|
|
3
|
+
import type { i18n } from 'i18next'
|
|
4
|
+
import type { IconName, HTMLDivAttributes, SiteLabel } from './'
|
|
5
|
+
|
|
6
|
+
import { getContext } from 'svelte'
|
|
7
|
+
import Icon from '@isoftdata/svelte-icon'
|
|
8
|
+
import Checkbox from '@isoftdata/svelte-checkbox'
|
|
9
|
+
import { translate as defaultTranslate } from '@isoftdata/utility-string'
|
|
10
|
+
|
|
11
|
+
const { t: translate } = getContext<i18n>('i18next') || { t: defaultTranslate }
|
|
12
|
+
|
|
13
|
+
interface SiteAccess {
|
|
14
|
+
id: number
|
|
15
|
+
code: string
|
|
16
|
+
name: string
|
|
17
|
+
isAuthorized: boolean
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
interface Props extends HTMLDivAttributes {
|
|
21
|
+
userSites: Array<SiteAccess>
|
|
22
|
+
siteLabel?: SiteLabel
|
|
23
|
+
canEditSiteAccess?: boolean
|
|
24
|
+
siteAccessChange?: ((siteAccess: SiteAccess) => void | Promise<void>) | undefined
|
|
25
|
+
icon?: IconName
|
|
26
|
+
children?: Snippet
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
let {
|
|
30
|
+
userSites = $bindable(),
|
|
31
|
+
siteLabel = 'Site',
|
|
32
|
+
canEditSiteAccess = true,
|
|
33
|
+
siteAccessChange = undefined,
|
|
34
|
+
icon = 'industry-windows',
|
|
35
|
+
children,
|
|
36
|
+
...rest
|
|
37
|
+
}: Props = $props()
|
|
38
|
+
</script>
|
|
39
|
+
|
|
40
|
+
<div
|
|
41
|
+
class="card"
|
|
42
|
+
{...rest}
|
|
43
|
+
>
|
|
44
|
+
<div class="card-header">
|
|
45
|
+
<h5 class="mb-0"><Icon {icon} /> {translate(`user.configuration.${siteLabel}Access`, `${siteLabel} Access`)}</h5>
|
|
46
|
+
</div>
|
|
47
|
+
<ul
|
|
48
|
+
class="list-group list-group-flush h-100"
|
|
49
|
+
style="overflow-y: auto"
|
|
50
|
+
>
|
|
51
|
+
{#each userSites as { code, name }, i (code)}
|
|
52
|
+
<li class="list-group-item">
|
|
53
|
+
<Checkbox
|
|
54
|
+
label="{code} - {name}"
|
|
55
|
+
bind:checked={userSites[i].isAuthorized}
|
|
56
|
+
disabled={!canEditSiteAccess}
|
|
57
|
+
onchange={async () => {
|
|
58
|
+
await siteAccessChange?.(userSites[i])
|
|
59
|
+
}}
|
|
60
|
+
/>
|
|
61
|
+
</li>
|
|
62
|
+
{/each}
|
|
63
|
+
</ul>
|
|
64
|
+
{@render children?.()}
|
|
65
|
+
</div>
|
package/package.json
CHANGED
|
@@ -1,81 +1,80 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@isoftdata/svelte-user-configuration",
|
|
3
|
-
"version": "2.0
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
"
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
},
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"eslint
|
|
43
|
-
"
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
"@isoftdata/
|
|
62
|
-
"@isoftdata/
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
"
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@isoftdata/svelte-user-configuration",
|
|
3
|
+
"version": "2.1.0",
|
|
4
|
+
"exports": {
|
|
5
|
+
".": {
|
|
6
|
+
"types": "./dist/index.d.ts",
|
|
7
|
+
"svelte": "./dist/index.js"
|
|
8
|
+
}
|
|
9
|
+
},
|
|
10
|
+
"sideEffects": [
|
|
11
|
+
"**/*.css"
|
|
12
|
+
],
|
|
13
|
+
"files": [
|
|
14
|
+
"dist",
|
|
15
|
+
"!dist/**/*.test.*",
|
|
16
|
+
"!dist/**/*.spec.*"
|
|
17
|
+
],
|
|
18
|
+
"peerDependencies": {
|
|
19
|
+
"svelte": "^5.23.2"
|
|
20
|
+
},
|
|
21
|
+
"devDependencies": {
|
|
22
|
+
"@fortawesome/fontawesome-common-types": "^7.1.0",
|
|
23
|
+
"@isoftdata/prettier-config": "^2.0.4",
|
|
24
|
+
"@isoftdata/svelte-bootstrap-version-switcher": "^1.1.0",
|
|
25
|
+
"@sveltejs/adapter-auto": "^6.0.0",
|
|
26
|
+
"@sveltejs/kit": "^2.5.27",
|
|
27
|
+
"@sveltejs/package": "^2.3.7",
|
|
28
|
+
"@sveltejs/vite-plugin-svelte": "^5.0.3",
|
|
29
|
+
"@types/eslint": "^9.6.0",
|
|
30
|
+
"eslint": "^9.0.0",
|
|
31
|
+
"eslint-config-prettier": "^9.1.0",
|
|
32
|
+
"eslint-plugin-svelte": "^2.45.1",
|
|
33
|
+
"globals": "^15.0.0",
|
|
34
|
+
"i18next": "^24.2.1",
|
|
35
|
+
"prettier": "^3.1.1",
|
|
36
|
+
"prettier-plugin-svelte": "^3.2.6",
|
|
37
|
+
"publint": "^0.2.0",
|
|
38
|
+
"svelte": "^5.0.0",
|
|
39
|
+
"svelte-check": "^4.0.0",
|
|
40
|
+
"type-fest": "^4.33.0",
|
|
41
|
+
"typescript": "^5.5.0",
|
|
42
|
+
"typescript-eslint": "^8.0.0",
|
|
43
|
+
"vite": "^6.2.5"
|
|
44
|
+
},
|
|
45
|
+
"svelte": "./dist/index.js",
|
|
46
|
+
"types": "./dist/index.d.ts",
|
|
47
|
+
"type": "module",
|
|
48
|
+
"prettier": "@isoftdata/prettier-config",
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"@isoftdata/browser-event": "^2.3.2",
|
|
51
|
+
"@isoftdata/svelte-badge": "^1.0.0",
|
|
52
|
+
"@isoftdata/svelte-button": "^2.1.0",
|
|
53
|
+
"@isoftdata/svelte-checkbox": "^2.6.1",
|
|
54
|
+
"@isoftdata/svelte-icon": "^2.0.0",
|
|
55
|
+
"@isoftdata/svelte-input": "^2.0.1",
|
|
56
|
+
"@isoftdata/svelte-modal": "^2.0.4",
|
|
57
|
+
"@isoftdata/svelte-password-fields": "^1.5.0",
|
|
58
|
+
"@isoftdata/svelte-select": "^2.0.1",
|
|
59
|
+
"@isoftdata/svelte-table": "^2.8.0",
|
|
60
|
+
"@isoftdata/svelte-textarea": "^2.0.0",
|
|
61
|
+
"@isoftdata/utility-bootstrap": "^2.2.1",
|
|
62
|
+
"@isoftdata/utility-string": "^2.1.0",
|
|
63
|
+
"just-camel-case": "^6.2.0",
|
|
64
|
+
"klona": "^2.0.6",
|
|
65
|
+
"svelte": "^5.23.2"
|
|
66
|
+
},
|
|
67
|
+
"engines": {
|
|
68
|
+
"pnpm": "10.x"
|
|
69
|
+
},
|
|
70
|
+
"scripts": {
|
|
71
|
+
"dev": "vite dev",
|
|
72
|
+
"build": "vite build && npm run package",
|
|
73
|
+
"preview": "vite preview",
|
|
74
|
+
"package": "svelte-kit sync && svelte-package && publint",
|
|
75
|
+
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
76
|
+
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
|
77
|
+
"lint": "prettier --check . && eslint .",
|
|
78
|
+
"format": "prettier --write ."
|
|
79
|
+
}
|
|
80
|
+
}
|