@genexus/genexus-ide-ui 0.0.10 → 0.0.12
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 +18 -256
- package/dist/cjs/ch-grid-row-actions.cjs.entry.js +30 -1
- package/dist/cjs/ch-grid-rowset-legend.cjs.entry.js +16 -3
- package/dist/cjs/ch-grid_9.cjs.entry.js +292 -247
- package/dist/cjs/ch-suggest.cjs.entry.js +9 -8
- package/dist/cjs/ch-tree-item.cjs.entry.js +1 -1
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +7 -7
- package/dist/cjs/gx-ide-test.cjs.entry.js +3 -2
- package/dist/cjs/gxg-combo-box_8.cjs.entry.js +69 -54
- package/dist/cjs/gxg-form-text.cjs.entry.js +23 -13
- package/dist/cjs/gxg-form-textarea.cjs.entry.js +1 -1
- package/dist/cjs/gxg-list-box-item.cjs.entry.js +5 -2
- package/dist/cjs/gxg-list-box.cjs.entry.js +1 -1
- package/dist/cjs/gxg-test.cjs.entry.js +5 -3
- package/dist/cjs/gxg-tree-item.cjs.entry.js +1 -1
- package/dist/cjs/gxg-tree.cjs.entry.js +2 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/common/render-tree.js +2 -1
- package/dist/collection/components/_test/test.js +1 -1
- package/dist/collection/components/new-kb/new-kb.js +10 -10
- package/dist/components/ch-grid-row-actions.js +52 -4
- package/dist/components/ch-grid-rowset-legend.js +32 -1
- package/dist/components/ch-grid2.js +295 -249
- package/dist/components/ch-suggest.js +10 -9
- package/dist/components/ch-tree-item.js +1 -1
- package/dist/components/combo-box-item.js +18 -18
- package/dist/components/combo-box.js +51 -36
- package/dist/components/form-text.js +25 -13
- package/dist/components/gx-ide-new-kb.js +9 -9
- package/dist/components/gx-ide-test.js +3 -2
- package/dist/components/gxg-form-textarea.js +1 -1
- package/dist/components/gxg-list-box-item.js +5 -2
- package/dist/components/gxg-list-box.js +1 -1
- package/dist/components/gxg-test.js +5 -3
- package/dist/components/gxg-tree-item2.js +1 -2
- package/dist/components/gxg-tree2.js +2 -1
- package/dist/esm/ch-grid-row-actions.entry.js +31 -2
- package/dist/esm/ch-grid-rowset-legend.entry.js +19 -2
- package/dist/esm/ch-grid_9.entry.js +292 -247
- package/dist/esm/ch-suggest.entry.js +9 -8
- package/dist/esm/ch-tree-item.entry.js +1 -1
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +7 -7
- package/dist/esm/gx-ide-test.entry.js +3 -2
- package/dist/esm/gxg-combo-box_8.entry.js +69 -54
- package/dist/esm/gxg-form-text.entry.js +23 -13
- package/dist/esm/gxg-form-textarea.entry.js +1 -1
- package/dist/esm/gxg-list-box-item.entry.js +5 -2
- package/dist/esm/gxg-list-box.entry.js +1 -1
- package/dist/esm/gxg-test.entry.js +5 -3
- package/dist/esm/gxg-tree-item.entry.js +1 -1
- package/dist/esm/gxg-tree.entry.js +2 -1
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.css +2 -2
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/p-01795e05.entry.js +1 -0
- package/dist/genexus-ide-ui/p-1367be09.entry.js +1 -0
- package/dist/genexus-ide-ui/p-18c86754.entry.js +1 -0
- package/dist/genexus-ide-ui/p-26b1d9c2.entry.js +1 -0
- package/dist/genexus-ide-ui/p-3c6099ff.entry.js +1 -0
- package/dist/genexus-ide-ui/p-4144fe18.entry.js +1 -0
- package/dist/genexus-ide-ui/p-421bd2fb.entry.js +1 -0
- package/dist/genexus-ide-ui/p-5faaf0e5.entry.js +1 -0
- package/dist/genexus-ide-ui/{p-45bf6aaf.entry.js → p-7b79281c.entry.js} +1 -1
- package/dist/genexus-ide-ui/p-7dead490.entry.js +1 -0
- package/dist/genexus-ide-ui/p-8f89e354.entry.js +1 -0
- package/dist/genexus-ide-ui/{p-bb9e6db0.entry.js → p-a04ce551.entry.js} +1 -1
- package/dist/genexus-ide-ui/p-b31a9621.entry.js +1 -0
- package/dist/genexus-ide-ui/{p-3546b5f7.entry.js → p-c0360787.entry.js} +1 -1
- package/dist/genexus-ide-ui/{p-4c6b4be3.entry.js → p-f23610f0.entry.js} +1 -1
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/grid/ch-grid.css +0 -9
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/grid/grid-row-actions/ch-grid-row-actions.css +3 -0
- package/dist/node_modules/@genexus/gemini/dist/collection/components/combo-box-item/combo-box-item.css +14 -14
- package/dist/node_modules/@genexus/gemini/dist/collection/components/form-text/form-text.css +1 -1
- package/dist/node_modules/@genexus/gemini/dist/collection/components/form-textarea/form-textarea.css +1 -1
- package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box/list-box.css +1 -1
- package/dist/node_modules/@genexus/gemini/dist/collection/components/list-box-item/list-box-item.css +12 -9
- package/dist/types/common/render-tree.d.ts +1 -1
- package/dist/types/components/new-kb/new-kb.d.ts +2 -2
- package/dist/types/components.d.ts +20 -16
- package/package.json +2 -2
- package/dist/cjs/ch-grid-rowset-legend-d29e1c7d.js +0 -22
- package/dist/components/ch-grid-rowset-legend2.js +0 -35
- package/dist/esm/ch-grid-rowset-legend-d6a0dd68.js +0 -20
- package/dist/genexus-ide-ui/p-17827fd8.js +0 -1
- package/dist/genexus-ide-ui/p-4298cd04.entry.js +0 -1
- package/dist/genexus-ide-ui/p-5aa4d5cc.entry.js +0 -1
- package/dist/genexus-ide-ui/p-715bf2d4.entry.js +0 -1
- package/dist/genexus-ide-ui/p-761e8fa3.entry.js +0 -1
- package/dist/genexus-ide-ui/p-93f9f73b.entry.js +0 -1
- package/dist/genexus-ide-ui/p-b218be5e.entry.js +0 -1
- package/dist/genexus-ide-ui/p-c0a96223.entry.js +0 -1
- package/dist/genexus-ide-ui/p-c132ce73.entry.js +0 -1
- package/dist/genexus-ide-ui/p-d3e6590c.entry.js +0 -1
- package/dist/genexus-ide-ui/p-d57c8f13.entry.js +0 -1
- package/dist/genexus-ide-ui/p-d5cf33f2.entry.js +0 -1
package/README.md
CHANGED
|
@@ -1,272 +1,34 @@
|
|
|
1
1
|
# GeneXus Ide Ui
|
|
2
2
|
|
|
3
|
-
**GeneXus Ide Ui**
|
|
4
|
-
|
|
5
|
-
- [Participantes](#participantes)
|
|
6
|
-
- [Specs. y Status](#specs-status)
|
|
7
|
-
- [Estructura 'src' folder](#estructura-src-folder)
|
|
8
|
-
- [Buenas prácticas](#buenas-practicas)
|
|
9
|
-
- [Gxg-container](#gxg-container)
|
|
10
|
-
- [Grillas](#grillas)
|
|
11
|
-
- [Gemini](#gemini)
|
|
12
|
-
- [Flujo de trabajo](#flujo-de-trabajo)
|
|
13
|
-
- [Consideraciones](#consideraciones)
|
|
14
|
-
- [Readme StencilJs](#readme-stenciljs)
|
|
15
|
-
- [Links de interés](#links-de-interes)
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## Participantes <a id="participantes"></a>
|
|
20
|
-
|
|
21
|
-
- **Andrés Laplace** | Lead Product Designer
|
|
22
|
-
- **Bruno Sastre** | Front End Developer
|
|
23
|
-
- **Daniel Mariño** | Code & Quality Reviewer
|
|
24
|
-
- **Diego Scaffo** | (Falta)
|
|
25
|
-
- **Germán Asiz** | GeneXus Web es Engineering Leader
|
|
26
|
-
- **Mauro Canziani** | Head of Design
|
|
27
|
-
- **Natalia Rudomín** | Product Designer
|
|
28
|
-
- **Nicolás Cámera** | Code & Quality Reviewer
|
|
29
|
-
- **Orlando Pantoja** | Front End Developer
|
|
30
|
-
- **Daniel Piad** | Front End Developer
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
|
|
34
|
-
## Specs. y Status <a id="specs"></a>
|
|
35
|
-
|
|
36
|
-
Las specs. de los componentes se encuentran en esta carpeta [doc](https://drive.google.com/drive/u/1/folders/1dngu6QaTojqJn3pYr7eFh2OcCVDuY2Zt). <br>
|
|
37
|
-
El estado de los componentes se encuentra [en esta planilla ](https://docs.google.com/spreadsheets/d/1i_SlSbtceX0oCNuNUSrhiO3UJJbD6u9h36dc4NJEnRs/edit#gid=0)
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## Estructura 'src' folder <a id="estructura-src-folder"></a>
|
|
42
|
-
|
|
43
|
-
### 📁 common
|
|
44
|
-
|
|
45
|
-
Aquí van archivos comunes a todo el proyecto. Pueden agregarse mas si es necesario.
|
|
46
|
-
|
|
47
|
-
#### `helper-functions.tsx`
|
|
48
|
-
|
|
49
|
-
Funciones auxiliadoras.
|
|
50
|
-
|
|
51
|
-
#### `interfaces.ts`
|
|
52
|
-
|
|
53
|
-
Interfaces. Se solicita usar el prefijo **Gx** : `GxInterfaceName`
|
|
54
|
-
|
|
55
|
-
#### `locale.ts`
|
|
56
|
-
|
|
57
|
-
Este archivo se encarga de manejar la lógica relacionada a las traducciones. En principio no debería modificarse.
|
|
58
|
-
|
|
59
|
-
#### `types.ts`
|
|
60
|
-
|
|
61
|
-
Definicion de tipos.
|
|
62
|
-
|
|
63
|
-
### 📁 components
|
|
64
|
-
|
|
65
|
-
Aquí van los componentes. `_template` es un componente vacío, que solo tiene la estructura básica para comenzar el desarrollo de un componente nuevo. Por favor, duplicar esta carpeta y cambiar los nombres cuando haya que crear un nuevo componente.
|
|
66
|
-
|
|
67
|
-
### 📁 global
|
|
68
|
-
|
|
69
|
-
Aquí van las hojas de estilos .scss. Se sugiere ser organizado, y crear una hoja por cada 'asunto'.
|
|
70
|
-
|
|
71
|
-
### 📁 pages
|
|
72
|
-
|
|
73
|
-
Aquí van las paginas html para probar y mostrar los componentes. Hay que crear una pagina por cada componente. El nombre de la pagina debe ser `[nombre-del-componente].html` sin el prefijo:
|
|
74
|
-
|
|
75
|
-
```
|
|
76
|
-
✅ new-kb.html
|
|
77
|
-
❌ gx-ide-new-kb.html
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
Cuando se vaya a crear una nueva pagina.html para un componente nuevo, hay que duplicar `_template.html` y modificarlo. La razón, es que ya hay una estructura definida, y queremos respetarla.
|
|
81
|
-
|
|
82
|
-
- Cada pagina tiene un sidebar, con un conjunto de botones que permiten probar funcionalidades comunes a todos los componentes: dark-mode, rtl, validación, etc.
|
|
83
|
-
- Cada pagina tiene asociada una hoja de estilos (`dev-styles.css`) que es necesaria para la correcta visualización de la pagina.
|
|
84
|
-
|
|
85
|
-
### 📃 index.html
|
|
86
|
-
|
|
87
|
-
Index.html se abre al ejecutar `npm start`.<br>
|
|
88
|
-
Muestra dos listas de componentes: 'completed' | 'in progress'.<br>
|
|
89
|
-
Para agregar un componente a cualquiera de esas dos listas, solo es necesario agregar el nombre del item (sin el prefijo) al array correspondiente. Ej.:
|
|
90
|
-
|
|
91
|
-
```
|
|
92
|
-
✅
|
|
93
|
-
const completed = ["new-kb"];
|
|
94
|
-
const inProgress = ["my-new-component"];
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
```
|
|
98
|
-
❌
|
|
99
|
-
const completed = ["gx-ide-new-kb"];
|
|
100
|
-
const inProgress = ["gx-ide-my-new-component"];
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
---
|
|
104
|
-
|
|
105
|
-
## Buenas prácticas <a id="buenas-practicas"></a>
|
|
106
|
-
|
|
107
|
-
Seguir durante el desarrollo el [documento de buenas prácticas](https://iwiki.genexus.com/wiki.aspx?31673,C%C3%B3mo+hacer+buenos+Web+Components+con+alta+mantenibilidad+y+siguiendo+buenas+pr%C3%A1cticas) (Se requiere acceso a la vpn de Genexus).
|
|
108
|
-
|
|
109
|
-
1. Intentar desarrollar los Web Components usando Shadow DOM.
|
|
110
|
-
2. Si dan los tiempos y la experiencia, evitar implementar los controles usando una liberaría.
|
|
111
|
-
3. Siempre pensar en la accesibilidad de los componentes.
|
|
112
|
-
4. Aprovechar al máximo posible el componente funcional `<Host>`.
|
|
113
|
-
5. Diseñar el estilizado de los componentes pensando en el soporte para RTL.
|
|
114
|
-
6. Evitar el colisionamiento de nombres de clases lo mejor que se pueda. Escribir nombres de clases bien específicos.
|
|
115
|
-
7. Evitar el colisionamiento de nombres de variables CSS lo mejor que se pueda. Escribir nombres de variables bien específicos.
|
|
116
|
-
8. Escribir los selectores CSS de modo que terminen en un .class siempre que sea posible.
|
|
117
|
-
9. Evitar usar !important en las propiedades CSS.
|
|
118
|
-
10. Evitar estilizar los componentes usando clases predefinidas por otra dependencia.
|
|
119
|
-
11. Documentar siempre las propiedades, eventos y métodos.
|
|
120
|
-
12. Incluir un ejemplo de uso de los componentes y una descripción de la utilidad.
|
|
121
|
-
13. Documentación para las parts y slots de los componentes siempre útil.
|
|
122
|
-
14. Documentación para las variables CSS (custom vars) de los componentes siempre útil.
|
|
123
|
-
15. Ordenar el código siguiendo los patrones recomendados.
|
|
124
|
-
16. Las funciones no deberían hacer muchas cosas.
|
|
125
|
-
17. Definir las variables y funciones con private tanto como sea posible.
|
|
126
|
-
18. Tipar todas las variables y parámetros de funciones siempre que sea posible.
|
|
127
|
-
19. Usar siempre nombres de variables y funciones mnemotécnicos, sin importar el largo de las mismas.
|
|
128
|
-
20. No incluir estilos fijos en el render de los componentes.
|
|
129
|
-
21. Documentar siempre las funciones que sean muy avanzadas.
|
|
130
|
-
22. Evitar los strings y números mágicos.
|
|
131
|
-
23. Crear interfaces para tipar la estructura de objetos sin tipo.
|
|
132
|
-
24. Utilizar template literals y funciones de JavaScript para crear strings complejos.
|
|
133
|
-
25. Utilizar cláusulas guarda para evitar las sentencias if anidadas.
|
|
134
|
-
26. Evitar chequear la existencia de un objeto comprobando con null o undefined.
|
|
135
|
-
27. Evitar ifs de una sola línea (sin brackets).
|
|
136
|
-
28. Evitar implementar los Switch Case funcionales de manera imperativa. Usar objetos con lookups en cambio.
|
|
137
|
-
29. Los comentarios no sobran. Hacen falta.
|
|
138
|
-
30. Agregar tests unitarios para los componentes :)
|
|
139
|
-
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
## Gxg-container <a id="gxg-container"></a>
|
|
143
|
-
|
|
144
|
-
En cualquier componente del ide web, es probable que sea necesario maquetar "cajas" que contengan el contenido. Estas cajas podrán además tener o no un título, y/o un footer. Para mantener la consistencia de estas cajas a lo largo de todos los componentes, se creó el componente auxiliar gxg-container. Por favor, usarlo siempre que sea necesario. Hay una página donde se puede ver el uso del componente con sus diferentes estados, y al final se muestra una tabla con las properties disponibles.
|
|
145
|
-
|
|
146
|
-
Esa página está disponible en: `http://localhost:3333/pages/gxg-container.html`
|
|
3
|
+
**GeneXus Ide Ui** is the component library designed for the GeneXus Web IDE.
|
|
147
4
|
|
|
148
5
|
---
|
|
149
6
|
|
|
150
|
-
##
|
|
151
|
-
|
|
152
|
-
Se sugiere el uso de grillas siempre que sea posible. La configuración de la grilla es distinta en cada caso, por lo que es responsabilidad del desarrollador definirla en cada caso. Sin embargo, toda grilla deberá tener presente la clase auxiliar `grid`, que además de definir al contenedor como `display:grid` ya define el valor del gap. El fin es mantener la consistencia del gap entre todas las grillas de todos los componentes.
|
|
153
|
-
|
|
154
|
-
---
|
|
155
|
-
|
|
156
|
-
## Gemini <a id="gemini"></a>
|
|
157
|
-
|
|
158
|
-
Esta biblioteca va a estar basada en componentes de Gemini. Para ver los componentes disponibles y sus propiedades y eventos hay dos fuentes: El showcase de Storybook, o el repositorio.
|
|
159
|
-
|
|
160
|
-
#### [Showcase Gemini](https://gx-gemini.netlify.app/?path=/story/other-accordion--classical)
|
|
161
|
-
|
|
162
|
-
En la pestaña **Notes** se pueden ver las properties
|
|
163
|
-
|
|
164
|
-
#### [Repositorio Gemini](https://github.com/genexuslabs/gemini)
|
|
165
|
-
|
|
166
|
-
1. npm install
|
|
167
|
-
2. npm start
|
|
168
|
-
|
|
169
|
-
Se abrirá la página principal, con un listado de links a todos los componentes disponibles. Cada componente tiene su propia página html. Siéntanse libres de modificar y probar, habiendo hecho previamente una rama para tales fines, para no modificar master.
|
|
170
|
-
|
|
171
|
-
Si llegaran a necesitar modificar algún componente de Gemini, o precisaran algún componente nuevo que no exsita, por favor avisar a Bruno Sastre.
|
|
172
|
-
|
|
173
|
-
---
|
|
174
|
-
|
|
175
|
-
## Flujo de trabajo <a id="flujo-de-trabajo"></a>
|
|
176
|
-
|
|
177
|
-
Se sugiere el siguiente flujo de trabajo para la creación de un nuevo componente:
|
|
178
|
-
|
|
179
|
-
#### 1. Crear branch
|
|
180
|
-
|
|
181
|
-
Parado en master, hacer pull y crear una nueva branch, usando el nombre del componente (sin el prefijo):
|
|
182
|
-
|
|
183
|
-
```
|
|
184
|
-
✅new-kb
|
|
185
|
-
❌gx-ide-new-kb
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
#### 2. Duplicar el 'starter template'
|
|
189
|
-
|
|
190
|
-
`./src/_template`.
|
|
191
|
-
|
|
192
|
-
#### 3. Renombrar 'template'
|
|
193
|
-
|
|
194
|
-
Renombrar 'template' en todos los casos donde sea necesario, usando el nombre del nuevo componente. En algunos casos hay que usar el prefijo 'gx-ide-' y en otros no. Por favor, prestar atención.
|
|
195
|
-
|
|
196
|
-
- carpeta `_template` -> `my-new-component`
|
|
197
|
-
- carpeta `_template/gx-ide-assets/template` -> `my-new-component/gx-ide-assets/my-new-component`
|
|
198
|
-
- archivo `template.tsx` -> `my-new-component`
|
|
199
|
-
- nombre de tag `gx-ide-template` -> `gx-ide-my-new-component`
|
|
200
|
-
- nombre de class `Template` -> `MyNewComponent`
|
|
201
|
-
|
|
202
|
-
#### 4.A Desarrollo del componente
|
|
203
|
-
|
|
204
|
-
Desarrollar el componente teniendo en cuenta el documento de **buenas practicas**
|
|
205
|
-
|
|
206
|
-
#### 4.B Revisar traducciones
|
|
207
|
-
|
|
208
|
-
Revisar que todos los textos son traducibles.
|
|
209
|
-
|
|
210
|
-
#### 4.C Tests
|
|
211
|
-
|
|
212
|
-
Este punto es necesario, pero opcional de momento, ya que en este momento, es mas importante desarrollar que hacer tests. Consultar este punto con **German Azís**.<br>
|
|
213
|
-
**Nota:** Antes de hacer los tests, definir la _base URL_ como '/build'. De lo contrario, van a aparecer errores porque no se van a encontrar los assets"
|
|
7
|
+
## Using this library
|
|
214
8
|
|
|
9
|
+
```bash
|
|
10
|
+
npm install
|
|
11
|
+
npm start
|
|
215
12
|
```
|
|
216
|
-
const page = await newE2EPage();
|
|
217
|
-
const head = await page.find("head");
|
|
218
|
-
head.innerHTML = '<base href="/build/" />';
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
#### 4.D Revisar lista de buenas prácticas
|
|
222
|
-
|
|
223
|
-
La lista de buenas prácticas debe tenerse presente durante el desarrollo, pero no esta de mas verificarla luego.
|
|
224
|
-
|
|
225
|
-
#### 5. Crear una página html
|
|
226
|
-
|
|
227
|
-
Crear una pagina en `./src/pages` para probar, y eventualmente mostrar el nuevo componente. Para eso, duplicar `./src/pages/template.html` y modificar en ella lo necesario.
|
|
228
|
-
|
|
229
|
-
#### 6. Netlify
|
|
230
13
|
|
|
231
|
-
|
|
14
|
+
### Building the project
|
|
232
15
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
Compartir con los involucrados del proyecto, la URL de netlify del nuevo componente, y aguardar feedback. Ej.:
|
|
236
|
-
|
|
237
|
-
```
|
|
238
|
-
https://649414c3255641072f165111--fascinating-cactus-daaa46.netlify.app/pages/my-new-component.html
|
|
16
|
+
```bash
|
|
17
|
+
npm run build
|
|
239
18
|
```
|
|
240
19
|
|
|
241
|
-
**Nota:** Se solicita no cambiar la url que netlify provee por defecto. No queremos que sea de fácil acceso.
|
|
242
|
-
|
|
243
|
-
#### 8. Pull Request
|
|
244
|
-
|
|
245
|
-
Una vez aprobado hacer un pull request solicitando el review de **Daniel Mariño**
|
|
246
|
-
|
|
247
20
|
---
|
|
248
21
|
|
|
249
|
-
##
|
|
22
|
+
## License
|
|
250
23
|
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
**feature/new-kb** (si es para una feature de un componente que ya se pasó a main).
|
|
255
|
-
Usar el nombre que quieran si ninguna de las anteriores aplica. Solo tratar de usar nombres coherentes/descriptivos.
|
|
256
|
-
- Luego de hacer el merge a main, la rama se elimina automáticamente.
|
|
257
|
-
|
|
258
|
-
---
|
|
259
|
-
|
|
260
|
-
## Readme StencilJs <a id="readme-stenciljs"></a>
|
|
261
|
-
|
|
262
|
-
[Leer el readme que viene con StencilJs](https://github.com/genexuslabs/genexus-ide-ui/blob/main/readme-stenciljs.md)
|
|
263
|
-
|
|
264
|
-
---
|
|
24
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
25
|
+
you may not use this file except in compliance with the License.
|
|
26
|
+
You may obtain a copy of the License at
|
|
265
27
|
|
|
266
|
-
|
|
28
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
267
29
|
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
30
|
+
Unless required by applicable law or agreed to in writing, software
|
|
31
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
32
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
33
|
+
See the License for the specific language governing permissions and
|
|
34
|
+
limitations under the License.
|
|
@@ -4,12 +4,41 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const index = require('./index-93a6a7e0.js');
|
|
6
6
|
|
|
7
|
-
const chGridRowActionsCss = "";
|
|
7
|
+
const chGridRowActionsCss = ":host{display:contents}";
|
|
8
8
|
|
|
9
9
|
const ChGridRowActions = class {
|
|
10
10
|
constructor(hostRef) {
|
|
11
11
|
index.registerInstance(this, hostRef);
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Opens the row actions on row hover.
|
|
15
|
+
*/
|
|
16
|
+
async openRowHover(row) {
|
|
17
|
+
this.window.container = row;
|
|
18
|
+
this.window.xAlign = "inside-end";
|
|
19
|
+
this.window.yAlign = "center";
|
|
20
|
+
this.window.closeOnOutsideClick = false;
|
|
21
|
+
this.window.hidden = false;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Opens the row actions on the row-actions-button cell.
|
|
25
|
+
*/
|
|
26
|
+
async openRowActions(cell) {
|
|
27
|
+
this.window.container = cell;
|
|
28
|
+
this.window.xAlign = "outside-start";
|
|
29
|
+
this.window.yAlign = "outside-end";
|
|
30
|
+
this.window.closeOnOutsideClick = true;
|
|
31
|
+
this.window.hidden = false;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Closes the row actions window.
|
|
35
|
+
*/
|
|
36
|
+
async close() {
|
|
37
|
+
this.window.hidden = true;
|
|
38
|
+
}
|
|
39
|
+
render() {
|
|
40
|
+
return (index.h(index.Host, { slot: "row-actions" }, index.h("ch-window", { ref: el => (this.window = el), xAlign: "inside-end", modal: false, showHeader: false, showFooter: false, exportparts: "main:box" }, index.h("slot", null))));
|
|
41
|
+
}
|
|
13
42
|
};
|
|
14
43
|
ChGridRowActions.style = chGridRowActionsCss;
|
|
15
44
|
|
|
@@ -2,9 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const
|
|
6
|
-
require('./index-93a6a7e0.js');
|
|
5
|
+
const index = require('./index-93a6a7e0.js');
|
|
7
6
|
|
|
7
|
+
const chGridRowsetLegendCss = ":host{display:flex;grid-column-start:1;grid-column-end:-1;margin-inline-start:calc(var(--indent) * (var(--level) - 1))}:host::part(selector-label){display:none}";
|
|
8
8
|
|
|
9
|
+
const ChGridRowsetLegend = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
this.rowsetLegendClicked = index.createEvent(this, "rowsetLegendClicked", 7);
|
|
13
|
+
}
|
|
14
|
+
clickHandler() {
|
|
15
|
+
this.rowsetLegendClicked.emit();
|
|
16
|
+
}
|
|
17
|
+
render() {
|
|
18
|
+
return (index.h(index.Host, null, index.h("div", { part: "caret" }), index.h("label", { part: "selector-label" }, index.h("input", { type: "checkbox", part: "selector" })), index.h("div", { part: "icon" }), index.h("slot", null)));
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
ChGridRowsetLegend.style = chGridRowsetLegendCss;
|
|
9
22
|
|
|
10
|
-
exports.ch_grid_rowset_legend =
|
|
23
|
+
exports.ch_grid_rowset_legend = ChGridRowsetLegend;
|