Преглед на файлове

Remove table styles transform

master
Igor_Budimski преди 4 години
родител
ревизия
e56c062e82

+ 13
- 17
src/core.js Целия файл

@@ -9,20 +9,21 @@ function core(){
const parametars = parameters();
// Izvlacenje targets iz DOM strane
// atribute parameters
// 1 atribut:
// code = ' '
// code = ' '
for(let i = 0; i < parametars.length; i++){
const param = parametars[i];
param.targets = $(`[code=${param.code}]`);
parametars[i].targets = $(`[code*="${parametars[i].code}"]`);
// console.log("Results for " + `[code*="${parametars[i].code}"]`)
// console.log(parametars[i].targets);
}

// br-removecolumn-15
// br-removecolumn-2
// TODO regex find by attr


// css class parameters
// TODO
// TODO Igor
// for (let i = 0; i < parametars.length; i++) {
// const param = parametars[i];
// param.targets = $(`.${param.code}`);

// inicijalizacija transformacija
let transforms = [];
@@ -31,22 +32,17 @@ function core(){
for(let i=0;i<par.targets.length;i++)
{
const transformFactory = new TransformsFactory();
const selector = (par.targets[i]).tagName;
const value = (par.targets[i]).getAttribute("val");
par.value = value;
// Provera da li selector odgovara listi selektora za taj code
if(par.checkSelector(selector))
{
const transform = transformFactory.produce(par.code, par.targets[i], par.value);
transforms.push(transform);
}
const transform = transformFactory.produce(par.code,par.targets[i],par.selectors);
transforms.push(transform);
}
});

// perform transform
for(let i = 0; i < transforms.length; i++){
const transform = transforms[i];
if(transform.validate()){
transform.execute();
}
}
// print
// prepare print (optioning)

+ 7
- 9
src/parameters/parameter.js Целия файл

@@ -3,17 +3,15 @@ export class Param
{
constructor(code,selectors)
{
// br-removecolumn
this.code = code;
// br-removecolumn-2
this.codeFull='';
// true
this.codeHaveVars;
// table
this.selectors = selectors;
// <table></table>,<table></table>...]
this.targets = [];
this.value = null;
}
// Check for selector exists in array of selectors
// If exists return true, else return false
checkSelector(selector) {
return (this.selectors.indexOf(selector.toLowerCase()) > -1);
}
calculateValue(value){
this.value = value;
}
}

+ 2
- 0
src/parameters/parameters.js Целия файл

@@ -3,6 +3,8 @@ import { Param } from "./parameter";

const parameters = () =>
{
// var parametarsFiles = readeFiles('/parameters');
// parametarsFiles.map(p => new Param(p));
return [
new Param("br-size",["p","span"]),
new Param("br-shownumberrows",["table"]),

+ 2
- 5
src/transformations/border-color-transformation/border-color-transformation.js Целия файл

@@ -3,15 +3,12 @@ import {Transform} from "../transform";
import $ from "jquery";

export class BorderColorTransform extends Transform {
constructor(object){
super();
this.object = object;
constructor(param){
super(param);
}

execute(){
$(this.object).addClass("border-red");
}

rolback(){
$(this.object).removeClass("border-red");
}

+ 2
- 4
src/transformations/color-transformation/color-transforamtion.js Целия файл

@@ -3,11 +3,9 @@ import {Transform} from "../transform";
import $ from "jquery";

export class ColorTransform extends Transform {
constructor(object){
super();
this.object = object;
constructor(param){
super(param);
}

execute(){
$(this.object).addClass("color-transform");
}

+ 2
- 2
src/transformations/color-transformation/color-transformation.css Целия файл

@@ -1,5 +1,5 @@
/* @media print { */
@media print {
.color-transform{
color: blue;
}
/* } */
}

+ 2
- 5
src/transformations/hide-transform.js Целия файл

@@ -2,17 +2,14 @@ import {Transform} from "./transform";
import $ from "jquery";

export class HideTransform extends Transform {
constructor(object){
super();
this.object = object;
constructor(param){
super(param);
}

execute(){
// Zbog !important u CSS React app morali smo odraditi na ovaj nacin
$(this.object).attr("style", "display: none !important");
// $(this.object).hide();
}

rolback(){
$(this.object).show();
}

+ 3
- 5
src/transformations/remove-table-column-transform.js Целия файл

@@ -3,14 +3,12 @@ import $ from 'jquery';

export class RemoveTableColumnTransform extends Transform
{
constructor(object,column)
constructor(param)
{
super();
this.object = object;
this.column = column;
super(param);
}
execute(){
const column = this.column;
const column = this.value;
// (`${this.object}`).find("tbody").find("tr").each(function () {
(($(this.object).find("thead")).find("tr")).find("th").eq(column).remove();
($(this.object).find("tbody")).find("tr").each(function () {

+ 2
- 3
src/transformations/remove-table-header-transform.js Целия файл

@@ -3,10 +3,9 @@ import $ from 'jquery';

export class RemoveTableHeaderTransform extends Transform
{
constructor(object)
constructor(param)
{
super();
this.object = object;
super(param);
}
execute(){
// ($(this.object).find("tbody")).find("tr").eq(this.row).remove();

+ 3
- 5
src/transformations/remove-table-row-transform.js Целия файл

@@ -3,14 +3,12 @@ import $ from 'jquery';

export class RemoveTableRowTransform extends Transform
{
constructor(object,row)
constructor(param)
{
super();
this.object = object;
this.row = row;
super(param);
}
execute(){
const row = this.row;
const row = this.value;
// ($(this.object).find("tbody")).find("tr").eq(this.row).remove();
$(this.object).find("tbody").each(function () {
$(this).find('tr').eq(row).remove();

+ 20
- 0
src/transformations/remove-table-styles.js Целия файл

@@ -0,0 +1,20 @@
import {Transform} from "./transform";
import $ from "jquery";

export class RemoveTableStylesTransform extends Transform {
constructor(param){
super(param);
this.object = param.object;
this.class = this.object.attributes.class.value;
}

execute(){
$(this.object).removeClass();
//$(this.object).removeAttr( 'style' );
}

rolback(){
$(this.object).addClass(this.class);
//$(this.object).addAttr( 'style' );
}
}

+ 4
- 6
src/transformations/show-number-rows-transformation.js Целия файл

@@ -3,14 +3,12 @@ import $ from 'jquery';

export class ShowNumberRowsTransformation extends Transform
{
constructor(object,rows)
constructor(param)
{
super();
this.object = object;
this.rows = rows;
super(param);
}
execute(){
const rows = this.rows;
const rows = this.value;
const count = ($(this.object).find("tbody")).children('tr').length;
$this.object.find("tbody").each(function () {
for(let i=rows;i<count;i++)
@@ -20,7 +18,7 @@ export class ShowNumberRowsTransformation extends Transform
});
};
rolback(){
const rows = this.rows;
const rows = this.value;
const count = ($(this.object).find("tbody")).children('tr').length;
$this.object.find("tbody").each(function () {
for(let i=rows;i<count;i++)

+ 14
- 0
src/transformations/transform.js Целия файл

@@ -1,4 +1,18 @@
export class Transform{
constructor(param)
{
this.object = param.object;
this.selectors = param.selectors;
this.selector = this.object.tagName;
const arrayCode = this.object.getAttribute("code").split('-');
if(arrayCode.length > 2)
{
this.value = arrayCode[2];
}
}
validate(){
return (this.selectors.indexOf(this.selector.toLowerCase()) > -1);
};
execute(){};
rolback(){};
}

+ 13
- 12
src/transforms-factory.js Целия файл

@@ -5,31 +5,32 @@ import { RemoveTableColumnTransform } from "./transformations/remove-table-colum
import { RemoveTableRowTransform } from "./transformations/remove-table-row-transform";
import { ShowNumberRowsTransformation } from "./transformations/show-number-rows-transformation";
import { BorderColorTransform } from "./transformations/border-color-transformation/border-color-transformation";
import { RemoveTableStylesTransform } from "./transformations/remove-table-style";
import { RemoveTableHeaderTransform } from "./transformations/remove-table-header-transform";
import { RemoveTableStylesTransform } from "./transformations/remove-table-styles";
export class TransformsFactory{
produce(code,object,value)
produce(code,object,selectors)
{
if(code == null){
if(code == null){
return null;
}
const param = {code: code, object: object, selectors: selectors};
if(code === ("br-hide")){
// Ovo ne sme nikako preko atributa
return new HideTransform(object);
return new HideTransform(param);
} else if(code === ("br-color")){
return new ColorTransform(object);
return new ColorTransform(param);
} else if(code === ("br-removecolumn")){
return new RemoveTableColumnTransform(object,value);
return new RemoveTableColumnTransform(param);
} else if(code === ("br-removerow")){
return new RemoveTableRowTransform(object,value);
return new RemoveTableRowTransform(param);
} else if(code === ("br-removeheader")){
return new RemoveTableRowTransform(object,0);
return new RemoveTableHeaderTransform(param);
} else if(code === ("br-removetablestyles")){
return new RemoveTableStylesTransform(object,value);
return new RemoveTableStylesTransform(param);
} else if(code === ("br-shownumberrows")){
return new ShowNumberRowsTransformation(object,value);
return new ShowNumberRowsTransformation(param);
} else if(code === ("br-bordercolor")){
return new BorderColorTransform(object);
return new BorderColorTransform(param);
}
return null;
}

Loading…
Отказ
Запис