@ruc-lib/screen-recorder 2.9.1 → 3.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 CHANGED
@@ -1,150 +1 @@
1
- # ruclib-screen-recorder
2
-
3
- This library provides a feature to record and download the screen with and without Audio
4
-
5
- ## RUC Library Installation Guide
6
-
7
- Users can easily install the RUC (Ruxptest Library) from npm. Additionally, they can also choose to install individual components based on their requirements.
8
- Install RUC Library.
9
-
10
- To install the entire RUC library:
11
-
12
- `npm install @uxpractice/ruc-lib`
13
-
14
- ## Install Individual Components
15
- If users only need the dialog component, they can install it separately:
16
-
17
- `npm install @ruc-lib/screen-recorder`
18
-
19
- ## Usage
20
-
21
- To use the screen recorder component in your project, follow the integration guidelines provided in the documentation.
22
-
23
- ## Using Selector
24
-
25
- 1. Import `RuclibScreenRecorderModule` from `@ruc-lib/screen-recorder` into `app.module.ts` file.
26
- 2. Use the selector in your HTML file.
27
-
28
- ```
29
- <uxp-screen-recorder
30
- [rucInputData]="recorderOptions"></uxp-screen-recorder>
31
-
32
- ```
33
-
34
-
35
- ### Component Inputs
36
-
37
- | Input | Type | Description |
38
- |----------------|-------------------------|--------------------------------------------------|
39
- | `rucInputData` | `ScreenRecorderOptions` | The main configuration object for the component. |
40
- | `customTheme` | `string` | An optional CSS class for custom theming. |
41
-
42
-
43
- ### `ScreenRecorderOptions`
44
- This is the main configuration object for the Screen recording.
45
-
46
- | Property | Type | Description |
47
- |-------------------------------|----------------------------------|------------------------------------------------------|
48
- | `position` | `'left' \| 'right'` (Optional) | Position of icon |
49
- | `displayFormat` | `'icon' \| 'text'` | Screen option format like - icpn and text |
50
- | `defaultAudioState` | `boolean` (Optional) | true for audio on, false for audio off |
51
- | `showAudioToggle` | `boolean` (Optional) | If `true`, displays audio option |
52
- | `icons` | `ScreenRecorderIcons` (Optional) | For custom icons (e.g., CSS classes for icon fonts) |
53
- | `showTimer` | `boolean` (Optional) | Show timer |
54
- | `categoryLabelStyle` | `'basic' \| 'widget'` (Optional) | The display style for category labels. |
55
- | `showCategoryLabels` | `boolean` (Optional) | If `true`, displays the category labels. |
56
- | `showPauseResume` | `boolean` | Show pause resume option. |
57
- | `downloadFileName` | `string` (Optional) | Download file name |
58
- | `showPlaybackControls` | `boolean` (Optional) | To show/hide the video player preview |
59
- | `showDownloadButton` | `boolean` | To show download button |
60
- | `useUTCForTimer` | `boolean` (Optional) | If `true`, displays the UTC time labels. |
61
- | `allowSpecificAreaSelection` | `boolean` (Optional) | Record specific screen |
62
- | `accessibilityLabels` | `accessibilityLabels`(Optional) | Accessibility related texts |
63
-
64
-
65
- ### `ScreenRecorderIcons`
66
- This values defines the configuration for screen recorder icons.
67
-
68
- | Property | Type | Description |
69
- |----------------------|-----------|--------------------------------------------------------------------|
70
- | `record` | `string` | Default: '●' (filled circle) or a material icon class |
71
- | `recordWithAudio` | `string` | Alternative if specific icon for "record with audio" is needed |
72
- | `recordWithoutAudio` | `number` | Alternative if specific icon for "record without audio" is needed |
73
- | `stop` | `string` | Default: '■ ' (filled square) or a material icon class |
74
- | `pause` | `string` | Default: '❚❚' or a material icon class |
75
- | `resume` | `string` | Default: '►' (play symbol) or a material icon class |
76
- | `play` | `string` | Default: '►' (play symbol) or a material icon class |
77
- | `download` | `number` | Default: '💾' (floppy disk) or a material icon class |
78
- | `audioOn` | `string` | Default: '🔊' (speaker high volume) or a material icon class |
79
- | `audioOff` | `string` | Default: '🔇' (muted speaker) or a material icon class |
80
-
81
- ### `accessibilityLabels`
82
- This values defines the configuration for screen recorder accessibilityLabels.
83
-
84
- | Property | Type | Description |
85
- |--------------------|-----------|-----------------|
86
- | `recordButton` | `string` | label text |
87
- | `stopButton` | `string` | label text |
88
- | `pauseButton` | `number` | label text |
89
- | `resumeButton` | `string` | label text |
90
- | `audioToggleButton`| `string` | label text |
91
- | `downloadButton` | `string` | label text |
92
- | `playbackVideo` | `string` | label text |
93
-
94
- ## Example Configuration
95
-
96
- Here's an example of how to configure the Metered Progress Bar in your component's TypeScript file.
97
-
98
- ```typescript
99
- import { Component } from '@angular/core';
100
- import { ScreenRecorderOptions, ScreenRecorderPosition, DisplayFormat } from '@ruclib/screen-recorder'; // Adjust import path
101
-
102
-
103
- @Component({
104
- selector: 'app-root',
105
- templateUrl: './app.component.html',
106
- })
107
- export class AppComponent {
108
- recorderOptions: {
109
- position: 'Left',
110
- displayFormat: 'icon',
111
- showAudioToggle: true,
112
- defaultAudioState: true,
113
- downloadFileName: 'screen-recording.webm',
114
- showTimer: true,
115
- showPauseResume: true,
116
- showPlaybackControls: true,
117
- showDownloadButton: true,
118
- useUTCForTimer: false,
119
- allowSpecificAreaSelection: true,
120
- icons: {
121
- record: 'fiber_manual_record',
122
- stop: 'stop',
123
- pause: 'pause',
124
- resume: 'play_arrow',
125
- play: 'play_circle_filled',
126
- download: 'download',
127
- audioOn: 'volume_up',
128
- audioOff: 'volume_off',
129
- },
130
- accessibilityLabels: {
131
- recordButton: 'Start Recording',
132
- stopButton: 'Stop Recording',
133
- pauseButton: 'Pause Recording',
134
- resumeButton: 'Resume Recording',
135
- audioToggleButton: 'Toggle Audio',
136
- downloadButton: 'Download Recording',
137
- playbackVideo: 'Screen Recording Playback',
138
- },
139
- };
140
- }
141
- ```
142
-
143
- ## Contribution
144
-
145
- Contributions are welcome! Feel free to open issues or pull requests for any enhancements or fixes.
146
-
147
- ## Acknowledgements
148
-
149
- Thank you for choosing the Screen Recorder Component Library. If you have any feedback or suggestions, please let us know!
150
-
1
+ utf8