@rws-framework/client 2.20.3 → 2.21.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 (48) hide show
  1. package/package.json +1 -1
  2. package/src/components/_attrs/json-attr.ts +62 -0
  3. package/src/index.ts +4 -3
  4. package/src/components/index.ts +0 -26
  5. package/src/components/rws/line-splitter/component.ts +0 -117
  6. package/src/components/rws/line-splitter/styles/_tags.scss +0 -104
  7. package/src/components/rws/line-splitter/styles/layout.scss +0 -38
  8. package/src/components/rws/line-splitter/template.html +0 -1
  9. package/src/components/rws/loader/component.ts +0 -14
  10. package/src/components/rws/loader/styles/layout.scss +0 -14
  11. package/src/components/rws/loader/template.html +0 -1
  12. package/src/components/rws/progress/component.ts +0 -54
  13. package/src/components/rws/progress/styles/layout.scss +0 -91
  14. package/src/components/rws/progress/template.html +0 -25
  15. package/src/components/rws/reformer/component.ts +0 -58
  16. package/src/components/rws/reformer/fields/boolean/component.ts +0 -20
  17. package/src/components/rws/reformer/fields/boolean/styles/layout.scss +0 -5
  18. package/src/components/rws/reformer/fields/boolean/template.html +0 -6
  19. package/src/components/rws/reformer/fields/date/component.ts +0 -20
  20. package/src/components/rws/reformer/fields/date/styles/layout.scss +0 -5
  21. package/src/components/rws/reformer/fields/date/template.html +0 -7
  22. package/src/components/rws/reformer/fields/number/component.ts +0 -20
  23. package/src/components/rws/reformer/fields/number/styles/layout.scss +0 -5
  24. package/src/components/rws/reformer/fields/number/template.html +0 -7
  25. package/src/components/rws/reformer/fields/text/component.ts +0 -20
  26. package/src/components/rws/reformer/fields/text/styles/layout.scss +0 -5
  27. package/src/components/rws/reformer/fields/text/template.html +0 -7
  28. package/src/components/rws/reformer/styles/layout.scss +0 -16
  29. package/src/components/rws/reformer/template.html +0 -19
  30. package/src/components/rws/reformer/types/IReFormerTypes.ts +0 -5
  31. package/src/components/rws/rws-api-resource/component.ts +0 -53
  32. package/src/components/rws/rws-api-resource/styles/layout.scss +0 -7
  33. package/src/components/rws/rws-api-resource/template.html +0 -29
  34. package/src/components/rws/rws-api-resource/variants/form/component.ts +0 -37
  35. package/src/components/rws/rws-api-resource/variants/form/styles/layout.scss +0 -0
  36. package/src/components/rws/rws-api-resource/variants/form/template.html +0 -3
  37. package/src/components/rws/rws-api-resource/variants/list/component.ts +0 -44
  38. package/src/components/rws/rws-api-resource/variants/list/styles/layout.scss +0 -0
  39. package/src/components/rws/rws-api-resource/variants/list/template.html +0 -11
  40. package/src/components/rws/rws-modal/component.ts +0 -20
  41. package/src/components/rws/rws-modal/styles/layout.scss +0 -47
  42. package/src/components/rws/rws-modal/template.html +0 -11
  43. package/src/components/rws/rws-table/component.ts +0 -85
  44. package/src/components/rws/rws-table/styles/layout.scss +0 -73
  45. package/src/components/rws/rws-table/template.html +0 -27
  46. package/src/components/rws/uploader/component.ts +0 -86
  47. package/src/components/rws/uploader/styles/layout.scss +0 -131
  48. package/src/components/rws/uploader/template.html +0 -17
@@ -1,86 +0,0 @@
1
- import { observable, attr } from '@microsoft/fast-element';
2
- import { RWSView } from '../../_decorator';
3
- import { RWSViewComponent } from '../../_component';
4
-
5
- @RWSView('rws-uploader')
6
- class RWSUploader extends RWSViewComponent {
7
-
8
- @observable uploadProgress: number;
9
-
10
- @observable uploadedFile: File;
11
- @observable chosenFile: File;
12
- @observable uploadParams: any;
13
-
14
- @attr onFinish: (uploadResponse: any) => void;
15
- @attr onStart: (chosenFile: File, context: any) => Promise<unknown> = async (chosenFile: File) => chosenFile;
16
- @attr onProgress: (progress: number) => void = (progress: number) => null;
17
-
18
-
19
- async onUploadStart(): Promise<void>
20
- {
21
- if(!this.uploadProgress){
22
- this.uploadProgress = 0;
23
- }
24
-
25
- const response = await this.onStart(this.chosenFile, this);
26
-
27
- if(response === null){
28
- return;
29
- }
30
-
31
- this.onFinish(response);
32
-
33
- this.uploadedFile = this.chosenFile;
34
- this.chosenFile = null;
35
- }
36
-
37
- onChoose(): void
38
- {
39
- const _self = this;
40
- const fileInput = this.createFileInput();
41
-
42
- this.triggerUpload(fileInput);
43
-
44
- fileInput.addEventListener('change', () => {
45
- _self.chosenFile = fileInput.files[0];
46
-
47
- _self.uploadedFile = null;
48
-
49
- _self.removeFileInput(fileInput);
50
- });
51
- }
52
-
53
- removeFile(){
54
- this.chosenFile = null;
55
- }
56
-
57
- private createFileInput(): HTMLInputElement
58
- {
59
- const fileInput: HTMLInputElement = document.createElement('input');
60
- fileInput.type = 'file';
61
- fileInput.style.display = 'none';
62
-
63
-
64
- this.shadowRoot.appendChild(fileInput);
65
- return fileInput;
66
- }
67
-
68
- private triggerUpload(fileInput: HTMLInputElement): void
69
- {
70
- fileInput.click();
71
- }
72
-
73
- private removeFileInput(fileInput: HTMLInputElement): void
74
- {
75
- this.shadowRoot.removeChild(fileInput);
76
- }
77
-
78
- uploadProgressChanged(oldV: any, newV: any)
79
- {
80
-
81
- }
82
- }
83
-
84
- RWSUploader.defineComponent();
85
-
86
- export { RWSUploader };
@@ -1,131 +0,0 @@
1
- @import "@rws-mixins";
2
-
3
- //vars
4
- $upl_secondary: var(--rws-uploader-secondary, #CCC);
5
- $upl_bg: var(--rws-uploader-bg, #424242);
6
- $upl_border: var(--rws-uploader-border, #FFF);
7
-
8
- $upl_primary: var(--rws-uploader-primary, #EE2375);
9
-
10
- $upl_text: var(--rws-uploader-text, #000);
11
-
12
- $upl_btn_text: var(--rws-uploader-btn-text, #000);
13
- $upl_btn_bg: var(--rws-uploader-btn-bg, #CCC);
14
- $upl_btn_border: var(--rws-uploader-btn-border, #000);
15
-
16
- rws-progress {
17
- --accent-foreground-rest: $upl_primary;
18
- }
19
-
20
- //styles
21
- .upload_area {
22
-
23
- color: $upl_text;
24
-
25
- padding: 25px;
26
-
27
-
28
- *{
29
- box-sizing: border-box;
30
- }
31
-
32
- section{
33
- &::after{
34
- content: '';
35
- display: table;
36
- clear: both;
37
- }
38
-
39
- display: block;
40
- contain: content;
41
- box-sizing: border-box;
42
- background: $upl_bg;
43
- border-radius: 10px;
44
- box-shadow: 0 0 5px rgba(0, 0, 0, 0.7);
45
-
46
- .drag-and-drop {
47
- @include grid-container();
48
- @include grid-flex-align-items(center, center);
49
-
50
- border: 4px dashed $upl_border; // Adjust color as needed
51
- width: 100%; // Adjust width as needed
52
- height: 100%; // Adjust height as needed
53
- padding: 30px;
54
-
55
- margin-bottom: 30px;
56
-
57
- text-align: center;
58
- cursor: pointer;
59
-
60
- .file-block {
61
- border: 1px solid $upl_border;
62
-
63
- font-size: 10px;
64
- padding: 15px;
65
- border-radius: 15px;
66
-
67
- .close-btn {
68
- border: 1px solid $upl_border;
69
- padding: 5px;
70
- font-weight: bold;
71
- margin-left: 10px;
72
- border-radius: 15px;
73
- }
74
- }
75
-
76
- &.hover{
77
- position: relative;
78
-
79
- &:before{
80
- content: '';
81
- background: $upl_secondary;
82
- opacity: 0.4;
83
-
84
- position: absolute;
85
-
86
- width: 100%;
87
- height: 100%;
88
- }
89
-
90
- p{
91
- font-weight: bold;
92
- }
93
- }
94
- }
95
-
96
- h3{
97
- padding: 0 15px;
98
- color: $upl_text;
99
- }
100
-
101
- article {
102
- padding: 15px;
103
- }
104
-
105
-
106
- button {
107
- background: $upl_btn_bg;
108
- color: $upl_btn_text;
109
- font-size: 14px;
110
- padding: 10px;
111
- box-shadow: none;
112
- border-radius: 5px;
113
- border-style: solid;
114
- border-color: $upl_btn_border;
115
- border-width: 1px;
116
-
117
- fill: currentcolor;
118
- cursor: pointer;
119
-
120
- &.outline{
121
- background: none;
122
- }
123
-
124
- &.next{
125
- float: right;
126
- margin-right: 10px;
127
- margin-bottom: 10px;
128
- }
129
- }
130
- }
131
- }
@@ -1,17 +0,0 @@
1
- <div class="upload_area">
2
- <section>
3
- <h3>Upload file</h3>
4
- <rws-progress :value="${x => x.uploadProgress}" min="1" max="100"></rws-progress>
5
- <article>
6
- <div class="drag-and-drop">
7
- <div @click="${x => !x.chosenFile ? x.onChoose() : (() => {})()}" class="upl-background"></div>
8
- ${T.when(x => !x.chosenFile, T.html`<p @click="${x => !x.chosenFile ? x.onChoose() : (() => {})()}" class="dropinfo">Drag and drop here to upload</p>`)}
9
- ${T.when(x => x.chosenFile, T.html`<div class="file-block">${ x => x.chosenFile.name} <span @click="${ x => x.removeFile() }" class="close-btn">X</span></div>`)}
10
- </div>
11
- <div class="upl-controls">
12
- <button @click="${ x => x.onChoose() }" class="outline">Choose file</button>
13
- </div>
14
- </article>
15
- <button @click="${ x => x.onUploadStart() }" :disabled="${ x => x.chosenFile ? false : true }" appearance="accent" class="next">Upload</button>
16
- </section>
17
- </div>