@duplicati/ngclient 0.0.1 → 0.0.6

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 (197) hide show
  1. package/chunk-22HCWJS5.js +1 -0
  2. package/chunk-24PLBY6C.js +1 -0
  3. package/chunk-3MM4GLBS.js +1 -0
  4. package/chunk-3MTW6FJP.js +1 -0
  5. package/chunk-4FK75Z4C.js +1 -0
  6. package/chunk-4MMHXTNF.js +1 -0
  7. package/chunk-57M4MADC.js +1 -0
  8. package/chunk-6XUWDRDE.js +1 -0
  9. package/chunk-77NTMJCT.js +1 -0
  10. package/chunk-7X6SBNMU.js +1 -0
  11. package/chunk-A66Z6362.js +1 -0
  12. package/chunk-AC6VDRLC.js +1 -0
  13. package/chunk-BNNZKRIC.js +1 -0
  14. package/chunk-CKPPU3GS.js +2 -0
  15. package/chunk-DYANEO5K.js +1 -0
  16. package/chunk-GJTW7UUU.js +1 -0
  17. package/chunk-GMANGOGH.js +1 -0
  18. package/chunk-I6QIKK6M.js +1 -0
  19. package/chunk-IOWSWUHM.js +1 -0
  20. package/chunk-IQSBPGVL.js +1 -0
  21. package/chunk-L47VTK2X.js +1 -0
  22. package/chunk-LVLU6MPQ.js +1 -0
  23. package/chunk-N5US3SKW.js +1 -0
  24. package/chunk-NIMPOFJV.js +1 -0
  25. package/chunk-ORDBF5MR.js +8 -0
  26. package/chunk-PH6AAOK4.js +1 -0
  27. package/chunk-PY5HJ5U2.js +1 -0
  28. package/chunk-QQDSFTZV.js +1 -0
  29. package/chunk-RANWFSNY.js +1 -0
  30. package/chunk-RLJJFBQ2.js +1 -0
  31. package/chunk-S76TN27U.js +1 -0
  32. package/chunk-UTPCUNNU.js +1 -0
  33. package/chunk-VPEVWKGB.js +1 -0
  34. package/chunk-VVUYO7E4.js +1 -0
  35. package/chunk-WLI4RZYL.js +1 -0
  36. package/chunk-X2NZ4CJ5.js +2 -0
  37. package/chunk-XU7PNEZO.js +1 -0
  38. package/chunk-XYJYUMYL.js +1 -0
  39. package/chunk-YRXI477O.js +1 -0
  40. package/chunk-ZD3JEKWI.js +1 -0
  41. package/index.html +15 -0
  42. package/main-5KJRELCN.js +1 -0
  43. package/package.json +3 -40
  44. package/sparkle-ui-assets/fonts/InterTight-VariableFont_wght.ttf +0 -0
  45. package/sparkle-ui-assets/fonts/InterTight-VariableFont_wght.woff2 +0 -0
  46. package/styles-6W7ZCKNM.css +1 -0
  47. package/.dockerignore +0 -13
  48. package/.github/workflows/npm-publish.yml +0 -59
  49. package/.prettierignore +0 -13
  50. package/.prettierrc +0 -12
  51. package/.vscode/extensions.json +0 -4
  52. package/.vscode/launch.json +0 -13
  53. package/.vscode/settings.json +0 -8
  54. package/.vscode/tasks.json +0 -24
  55. package/Dockerfile +0 -38
  56. package/LICENSE +0 -21
  57. package/README.md +0 -27
  58. package/angular.json +0 -98
  59. package/bun.lockb +0 -0
  60. package/openapi-ts.config.ts +0 -13
  61. package/scripts/generate-package-json.ts +0 -15
  62. package/src/app/about/about.component.html +0 -15
  63. package/src/app/about/about.component.scss +0 -19
  64. package/src/app/about/about.component.ts +0 -13
  65. package/src/app/about/changelog/changelog.component.html +0 -3
  66. package/src/app/about/changelog/changelog.component.scss +0 -7
  67. package/src/app/about/changelog/changelog.component.ts +0 -18
  68. package/src/app/about/general/general.component.html +0 -9
  69. package/src/app/about/general/general.component.scss +0 -23
  70. package/src/app/about/general/general.component.ts +0 -30
  71. package/src/app/about/libraries/libraries.component.html +0 -3
  72. package/src/app/about/libraries/libraries.component.scss +0 -7
  73. package/src/app/about/libraries/libraries.component.ts +0 -18
  74. package/src/app/about/logs/logs.component.html +0 -5
  75. package/src/app/about/logs/logs.component.scss +0 -7
  76. package/src/app/about/logs/logs.component.ts +0 -18
  77. package/src/app/about/system-info/system-info.component.html +0 -3
  78. package/src/app/about/system-info/system-info.component.scss +0 -7
  79. package/src/app/about/system-info/system-info.component.ts +0 -17
  80. package/src/app/add-backup/add-backup.component.html +0 -29
  81. package/src/app/add-backup/add-backup.component.scss +0 -38
  82. package/src/app/add-backup/add-backup.component.ts +0 -14
  83. package/src/app/app.component.ts +0 -35
  84. package/src/app/app.config.ts +0 -23
  85. package/src/app/app.routes.ts +0 -121
  86. package/src/app/core/components/file-tree/file-tree.component.html +0 -87
  87. package/src/app/core/components/file-tree/file-tree.component.scss +0 -80
  88. package/src/app/core/components/file-tree/file-tree.component.ts +0 -485
  89. package/src/app/core/components/logo/logo.component.html +0 -22
  90. package/src/app/core/components/logo/logo.component.scss +0 -12
  91. package/src/app/core/components/logo/logo.component.ts +0 -11
  92. package/src/app/core/components/status-bar/status-bar.component.html +0 -38
  93. package/src/app/core/components/status-bar/status-bar.component.scss +0 -27
  94. package/src/app/core/components/status-bar/status-bar.component.ts +0 -33
  95. package/src/app/core/components/status-bar/status-bar.state.ts +0 -182
  96. package/src/app/core/components/toggle-card/toggle-card.component.html +0 -11
  97. package/src/app/core/components/toggle-card/toggle-card.component.scss +0 -49
  98. package/src/app/core/components/toggle-card/toggle-card.component.ts +0 -28
  99. package/src/app/core/interceptors/http.interceptor.ts +0 -69
  100. package/src/app/core/interceptors/websocket.interceptor.ts +0 -66
  101. package/src/app/core/openapi/core/ApiError.ts +0 -21
  102. package/src/app/core/openapi/core/ApiRequestOptions.ts +0 -21
  103. package/src/app/core/openapi/core/ApiResult.ts +0 -7
  104. package/src/app/core/openapi/core/OpenAPI.ts +0 -55
  105. package/src/app/core/openapi/core/request.ts +0 -337
  106. package/src/app/core/openapi/index.ts +0 -6
  107. package/src/app/core/openapi/schemas.gen.ts +0 -3611
  108. package/src/app/core/openapi/services.gen.ts +0 -1460
  109. package/src/app/core/openapi/types.gen.ts +0 -1510
  110. package/src/app/core/pipes/duration.pipe.ts +0 -27
  111. package/src/app/core/pipes/relative-time.pipe.ts +0 -14
  112. package/src/app/core/providers/dayjs.ts +0 -16
  113. package/src/app/core/services/dict.en.ts +0 -0
  114. package/src/app/core/services/dictionary.service.ts +0 -12
  115. package/src/app/core/services/localstorage.token.ts +0 -82
  116. package/src/app/core/services/password-generator.service.ts +0 -39
  117. package/src/app/core/services/relay-websocket.service.ts +0 -268
  118. package/src/app/core/services/timespan-literals.service.ts +0 -25
  119. package/src/app/core/states/app-auth.state.ts +0 -87
  120. package/src/app/core/states/backups.state.ts +0 -71
  121. package/src/app/core/states/relayconfig.state.ts +0 -23
  122. package/src/app/core/states/sysinfo.state.ts +0 -31
  123. package/src/app/core/states/tasks.state.ts +0 -34
  124. package/src/app/core/types/subscribed.ts +0 -7
  125. package/src/app/core/validators/custom.validators.ts +0 -120
  126. package/src/app/create-edit-backup/create-edit-backup.component.html +0 -28
  127. package/src/app/create-edit-backup/create-edit-backup.component.scss +0 -15
  128. package/src/app/create-edit-backup/create-edit-backup.component.ts +0 -33
  129. package/src/app/create-edit-backup/create-edit-backup.state.ts +0 -582
  130. package/src/app/create-edit-backup/destination/destination.component.html +0 -367
  131. package/src/app/create-edit-backup/destination/destination.component.scss +0 -85
  132. package/src/app/create-edit-backup/destination/destination.component.ts +0 -249
  133. package/src/app/create-edit-backup/destination/destination.config.ts +0 -103
  134. package/src/app/create-edit-backup/destination/destination.mapper.ts +0 -177
  135. package/src/app/create-edit-backup/general/general.component.html +0 -108
  136. package/src/app/create-edit-backup/general/general.component.scss +0 -34
  137. package/src/app/create-edit-backup/general/general.component.ts +0 -136
  138. package/src/app/create-edit-backup/options/options.component.html +0 -95
  139. package/src/app/create-edit-backup/options/options.component.scss +0 -42
  140. package/src/app/create-edit-backup/options/options.component.ts +0 -113
  141. package/src/app/create-edit-backup/schedule/schedule.component.html +0 -102
  142. package/src/app/create-edit-backup/schedule/schedule.component.scss +0 -38
  143. package/src/app/create-edit-backup/schedule/schedule.component.ts +0 -137
  144. package/src/app/create-edit-backup/source-data/source-data.component.html +0 -93
  145. package/src/app/create-edit-backup/source-data/source-data.component.scss +0 -41
  146. package/src/app/create-edit-backup/source-data/source-data.component.ts +0 -114
  147. package/src/app/home/backup.const.ts +0 -167
  148. package/src/app/home/home.component.html +0 -98
  149. package/src/app/home/home.component.scss +0 -88
  150. package/src/app/home/home.component.ts +0 -54
  151. package/src/app/layout/layout.component.html +0 -64
  152. package/src/app/layout/layout.component.scss +0 -24
  153. package/src/app/layout/layout.component.ts +0 -51
  154. package/src/app/layout/layout.state.ts +0 -70
  155. package/src/app/login/login.component.html +0 -12
  156. package/src/app/login/login.component.scss +0 -25
  157. package/src/app/login/login.component.ts +0 -34
  158. package/src/app/logout/logout.component.html +0 -1
  159. package/src/app/logout/logout.component.scss +0 -3
  160. package/src/app/logout/logout.component.ts +0 -18
  161. package/src/app/restore/restore.component.html +0 -56
  162. package/src/app/restore/restore.component.scss +0 -37
  163. package/src/app/restore/restore.component.ts +0 -55
  164. package/src/app/restore-flow/options/options.component.html +0 -57
  165. package/src/app/restore-flow/options/options.component.scss +0 -16
  166. package/src/app/restore-flow/options/options.component.ts +0 -58
  167. package/src/app/restore-flow/restore-flow.component.html +0 -14
  168. package/src/app/restore-flow/restore-flow.component.scss +0 -15
  169. package/src/app/restore-flow/restore-flow.component.ts +0 -23
  170. package/src/app/restore-flow/restore-flow.state.ts +0 -120
  171. package/src/app/restore-flow/select-files/select-files.component.html +0 -42
  172. package/src/app/restore-flow/select-files/select-files.component.scss +0 -16
  173. package/src/app/restore-flow/select-files/select-files.component.ts +0 -129
  174. package/src/app/settings/settings.component.html +0 -256
  175. package/src/app/settings/settings.component.scss +0 -106
  176. package/src/app/settings/settings.component.ts +0 -475
  177. package/src/environments/environment-token.ts +0 -4
  178. package/src/environments/environment.prod.ts +0 -6
  179. package/src/environments/environment.ts +0 -6
  180. package/src/index.html +0 -15
  181. package/src/main.ts +0 -6
  182. package/src/proxy.conf.mjs +0 -6
  183. package/src/styles.scss +0 -41
  184. package/tsconfig.app.json +0 -15
  185. package/tsconfig.json +0 -30
  186. /package/{src/assets → assets}/duplicati-logo.png +0 -0
  187. /package/{src/assets → assets}/duplicati-logo.svg +0 -0
  188. /package/{src/assets → assets}/favicon.ico +0 -0
  189. /package/{src/assets → assets}/images/backup.png +0 -0
  190. /package/{src/assets → assets}/images/dark-theme.png +0 -0
  191. /package/{src/assets → assets}/images/folder.png +0 -0
  192. /package/{src/assets → assets}/images/light-theme.png +0 -0
  193. /package/{src/assets → assets}/images/new-backup.png +0 -0
  194. /package/{src/assets → assets}/images/restore.png +0 -0
  195. /package/{src/assets → assets}/images/system-theme.png +0 -0
  196. /package/{src/assets → assets}/spk.css +0 -0
  197. /package/{src/assets → assets}/spk.woff2 +0 -0
@@ -1,256 +0,0 @@
1
- <app-status-bar />
2
-
3
- <form [formGroup]="settingsForm" class="content" (submit)="submit()">
4
- <header>
5
- <div class="title">
6
- <h2>Settings</h2>
7
- <p>Configure your backup settings.</p>
8
- </div>
9
-
10
- <button type="submit" spk-button class="raised primary">Save changes</button>
11
- </header>
12
-
13
- <section>
14
- <div class="left">
15
- <h3>Remote access control</h3>
16
- <p>{{ getRemoteControlStatusText() }}</p>
17
- </div>
18
-
19
- <div class="right remote-control">
20
- @if (remoteControlState() !== 'unknown') {
21
- <div class="field-row">
22
- @if (remoteControlState() === 'inactive') {
23
- <spk-form-field label="Registration URL" for="remoteControlRegisterUrl">
24
- <input
25
- type="text"
26
- spk-input
27
- id="remoteControlRegisterUrl"
28
- name="remoteControlRegisterUrl"
29
- formControlName="remoteControlRegisterUrl" />
30
- </spk-form-field>
31
-
32
- <button type="button" spk-button class="raised" (click)="beginRemoteRegistration()">
33
- Register for remote control
34
- </button>
35
- }
36
-
37
- @if (remoteControlState() === 'registered') {
38
- <div class="field-col">
39
- <label>Machine is now registered, open this link to add it to your account:</label>
40
- <a href="{{ remoteControlClaimUrl() }}" target="_blank">{{ remoteControlClaimUrl() }}</a>
41
- </div>
42
- }
43
-
44
- @if (remoteControlState() === 'registering') {
45
- <div class="field-col">
46
- <label>Registering, please wait...</label>
47
- </div>
48
- }
49
-
50
- @if (
51
- remoteControlState() === 'registering' ||
52
- remoteControlState() === 'registeringfaulted' ||
53
- remoteControlState() === 'registered'
54
- ) {
55
- <button type="button" spk-button class="raised" (click)="cancelRemoteRegistration()">
56
- Cancel registration
57
- </button>
58
- }
59
-
60
- @if (remoteControlState() === 'connected' || remoteControlState() === 'enabled') {
61
- <button type="button" spk-button class="raised" (click)="disableRemoteControl()">
62
- Disable remote control
63
- </button>
64
- }
65
- @if (remoteControlState() === 'disabled') {
66
- <button type="button" spk-button class="raised" (click)="enableRemoteControl()">
67
- Enable remote control
68
- </button>
69
-
70
- <button type="button" spk-button class="raised warn" (click)="deleteRemoteControl()">
71
- Delete remote control setup
72
- </button>
73
- }
74
- </div>
75
- }
76
- </div>
77
- </section>
78
-
79
- <section>
80
- <div class="left">
81
- <h3>Pause after startup or hibernation</h3>
82
- <p>
83
- Duplicati will run when started, but will remain in paused state for the duration. Duplicati will occupy minimal
84
- system resources and no backups will be run.
85
- </p>
86
- </div>
87
-
88
- <div class="right">
89
- <div class="field-row" formGroupName="pauseSettings">
90
- <spk-select [displayValue]="typeDisplay(settingsForm.value.pauseSettings?.timeType)">
91
- <input type="text" formControlName="timeType" />
92
-
93
- <ng-container options>
94
- @for (x of timeTypeOptions(); track $index) {
95
- <option [value]="x.value" (click)="pauseSettings.controls.timeType.setValue(x.value)">
96
- {{ x.label }}
97
- </option>
98
- }
99
- </ng-container>
100
- </spk-select>
101
-
102
- <spk-select>
103
- <input type="search" formControlName="time" />
104
-
105
- <ng-container options>
106
- @for (x of timeOptions(); track $index) {
107
- <option [value]="x" (click)="pauseSettings.controls.time.setValue(x)">{{ x }}</option>
108
- }
109
- </ng-container>
110
- </spk-select>
111
- </div>
112
- </div>
113
- </section>
114
-
115
- <section>
116
- <div class="left">
117
- <h3>Color theme</h3>
118
- <p>Customize your application theme</p>
119
- </div>
120
-
121
- <div class="right">
122
- <div class="themes">
123
- <img
124
- src="/assets/images/light-theme.png"
125
- [class.active]="!isDarkMode()"
126
- alt="light theme"
127
- (click)="setLightMode()" />
128
-
129
- <img
130
- src="/assets/images/dark-theme.png"
131
- [class.active]="isDarkMode()"
132
- alt="dark theme"
133
- (click)="setDarkMode()" />
134
- <!-- <img src="/assets/images/system-theme.png" alt="system theme" /> -->
135
- </div>
136
- </div>
137
- </section>
138
-
139
- <!-- <section>
140
- <div class="left">
141
- <h3>Language</h3>
142
- <p>Select a language for the platform</p>
143
- </div>
144
-
145
- <div class="right">
146
- <spk-select [displayValue]="languageDisplay(settingsForm.controls.language.value)">
147
- <input type="search" formControlName="language" />
148
-
149
- @for (x of languageOptions(); track $index) {
150
- <option option [value]="x.value" (click)="settingsForm.controls.language.setValue(x.value)">
151
- {{ x.label }}
152
- </option>
153
- }
154
- </spk-select>
155
- </div>
156
- </section> -->
157
-
158
- <section>
159
- <div class="left">
160
- <h3>Update channel</h3>
161
- <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
162
- </div>
163
-
164
- <div class="right radios">
165
- <div class="radio-option" (click)="settingsForm.controls.updateChannel.setValue('')">
166
- <spk-radio class="outlined primary">
167
- Default ({{ sysinfo()?.DefaultUpdateChannel }})
168
- <input type="radio" name="updateChannel" value="" formControlName="updateChannel" />
169
- </spk-radio>
170
-
171
- <p>Same as the base install version: {{ sysinfo()?.ServerVersionType }}</p>
172
- </div>
173
-
174
- <div class="radio-option" (click)="settingsForm.controls.updateChannel.setValue('stable')">
175
- <spk-radio class="outlined primary">
176
- Stable
177
- <input type="radio" name="updateChannel" value="stable" formControlName="updateChannel" />
178
- </spk-radio>
179
-
180
- <p>Official releases</p>
181
- </div>
182
-
183
- <div class="radio-option" (click)="settingsForm.controls.updateChannel.setValue('beta')">
184
- <spk-radio class="outlined primary">
185
- Beta
186
- <input type="radio" name="updateChannel" value="beta" formControlName="updateChannel" />
187
- </spk-radio>
188
-
189
- <p>
190
- Try out the new features that we are working on. Currently the most stable version available. Test Restore
191
- data before using this in production environments.
192
- </p>
193
- </div>
194
-
195
- <div class="radio-option" (click)="settingsForm.controls.updateChannel.setValue('experimental')">
196
- <spk-radio class="outlined primary">
197
- Experimental
198
- <input type="radio" name="updateChannel" value="experimental" formControlName="updateChannel" />
199
- </spk-radio>
200
-
201
- <p>Specific builds for developers only. Not for use with important data.</p>
202
- </div>
203
-
204
- <div class="radio-option" (click)="settingsForm.controls.updateChannel.setValue('canary')">
205
- <spk-radio class="outlined primary">
206
- Canary
207
- <input type="radio" name="updateChannel" value="canary" formControlName="updateChannel" />
208
- </spk-radio>
209
-
210
- <p>Individual builds for developers only. Not for use with important data.</p>
211
- </div>
212
- </div>
213
- </section>
214
-
215
- <section>
216
- <div class="left">
217
- <h3>Usage statistics</h3>
218
- <p>
219
- Usage reports help us improve the user experience and evaluate impact of new features. We use them to generate
220
- <a href="#">public usage statistics.</a>
221
- <br />
222
- <br />
223
- All usage reports are sent anonymously and do not contain any personal information. They contain information
224
- about hardware and operating system, the type of backend, backup duration, overall size of source data and
225
- similar data. They do not contain paths, filenames, usernames, passwords or similar sensitive information.
226
- </p>
227
- </div>
228
-
229
- <div class="right">
230
- <spk-select [displayValue]="usageDisplay(settingsForm.controls.usageStatistics.value)">
231
- <input type="text" formControlName="usageStatistics" />
232
-
233
- <ng-container options>
234
- @for (x of usageStatisticsOptions(); track $index) {
235
- <option [value]="x.value" (click)="settingsForm.controls.usageStatistics.setValue(x.value)">
236
- {{ x.label }}
237
- </option>
238
- }
239
- </ng-container>
240
- </spk-select>
241
- </div>
242
- </section>
243
-
244
- <!-- <section>
245
- <div class="left">
246
- <h3>Add advanced options</h3>
247
- <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
248
- <spk-button-group>
249
- <button type="button" [class.active]="editAs() === 'list'" (click)="editAs.set('list')">Edit as list</button>
250
- <button type="button" [class.active]="editAs() === 'text'" (click)="editAs.set('text')">Edit as text</button>
251
- </spk-button-group>
252
- </div>
253
-
254
- <div class="right">Empty for now</div>
255
- </section> -->
256
- </form>
@@ -1,106 +0,0 @@
1
- @use '@sparkle-ui/core/styles/helpers' as *;
2
-
3
- :host {
4
- display: block;
5
- }
6
-
7
- .content {
8
- display: flex;
9
- flex-direction: column;
10
- padding: p2r(0 32 32);
11
- }
12
-
13
- header {
14
- display: flex;
15
- align-items: center;
16
- justify-content: space-between;
17
- padding: p2r(32 0);
18
-
19
- .title {
20
- display: flex;
21
- flex-direction: column;
22
- gap: p2r(4);
23
- }
24
- }
25
-
26
- section {
27
- display: grid;
28
- grid-template-columns: 1fr 1fr;
29
- gap: p2r(16);
30
- padding: p2r(32 0);
31
- border-top: 1px solid var(--base-level-40);
32
-
33
- .left {
34
- display: flex;
35
- flex-direction: column;
36
- gap: p2r(4);
37
- align-items: flex-start;
38
-
39
- spk-button-group {
40
- margin-top: p2r(4);
41
- }
42
-
43
- p {
44
- text-wrap: balance;
45
- width: 50%;
46
- }
47
- }
48
- }
49
-
50
- .themes {
51
- display: flex;
52
- gap: p2r(8);
53
-
54
- img {
55
- max-width: 240px;
56
- border-radius: var(--shape-3);
57
- cursor: pointer;
58
-
59
- &.active {
60
- border: 2px solid var(--primary-500);
61
- }
62
- }
63
- }
64
-
65
- .radios {
66
- display: flex;
67
- flex-direction: column;
68
- gap: p2r(16);
69
- }
70
-
71
- .radio-option {
72
- cursor: pointer;
73
-
74
- spk-radio {
75
- color: var(--base-level-60);
76
- margin-bottom: p2r(4);
77
- }
78
-
79
- p {
80
- text-wrap: balance;
81
- color: var(--base-level-60R);
82
- }
83
- }
84
-
85
- .field-col {
86
- display: flex;
87
- flex-direction: column;
88
- gap: p2r(8);
89
- }
90
-
91
- .field-row {
92
- display: flex;
93
- gap: p2r(8);
94
- width: 100%;
95
-
96
- spk-form-field,
97
- spk-select {
98
- flex: 1 0;
99
- }
100
- }
101
-
102
- .remote-control {
103
- button {
104
- white-space: nowrap;
105
- }
106
- }