profoundjs 7.14.1 → 7.15.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 (26) hide show
  1. package/htdocs/profoundui/proddata/js/designer.js +3658 -3656
  2. package/htdocs/profoundui/proddata/js/key_management.js +2 -0
  3. package/htdocs/profoundui/proddata/js/rich-display-react-component.js +1 -0
  4. package/htdocs/profoundui/proddata/js/runtime.js +1486 -1486
  5. package/htdocs/profoundui/userdata/custom/themes/enhanced.js +15 -18
  6. package/htdocs/profoundui/userdata/custom/themes/hybrid.js +14 -17
  7. package/htdocs/profoundui/userdata/custom/themes/standard.js +12 -15
  8. package/htdocs/profoundui/userdata/custom/widgets/googlemaps.js +26 -42
  9. package/htdocs/profoundui/userdata/custom/widgets/listbox.js +6 -10
  10. package/htdocs/profoundui/userdata/custom/widgets/panel.js +20 -29
  11. package/htdocs/profoundui/userdata/custom/widgets/styled_button.js +19 -26
  12. package/htdocs/profoundui/userdata/custom/widgets/tabpanel.js +23 -30
  13. package/htdocs/profoundui/userdata/genie skins/Classic/custom.js +3 -3
  14. package/htdocs/profoundui/userdata/genie skins/Gradient/adjusted columns custom.js +57 -57
  15. package/htdocs/profoundui/userdata/genie skins/Gradient/custom.js +57 -57
  16. package/htdocs/profoundui/userdata/genie skins/Hybrid/custom.js +135 -143
  17. package/htdocs/profoundui/userdata/genie skins/Plain/custom.js +1 -3
  18. package/htdocs/profoundui/userdata/genie skins/Skyline/adjusted columns custom.js +70 -70
  19. package/htdocs/profoundui/userdata/genie skins/Skyline/custom.js +69 -69
  20. package/htdocs/profoundui/userdata/genie skins/Tablet/custom.js +20 -56
  21. package/htdocs/profoundui/userdata/samples/ordentry/OrdEntry.js +26 -27
  22. package/htdocs/vlog/rpglog.js +47 -46
  23. package/htdocs/vlog/vlog.js +50 -50
  24. package/package.json +1 -2
  25. package/profound.jse +1 -1
  26. package/setup/pjsdist.savf +0 -0
@@ -1,23 +1,21 @@
1
-
2
-
3
1
  pui.cnv.themes.add({
4
2
  "name": "Enhanced",
5
-
3
+
6
4
  "input css class": "enhanced-input",
7
5
  "constant css class": "enhanced-constant",
8
6
  "output field css class": "enhanced-output-field",
9
-
7
+
10
8
  "css class prefix": "",
11
-
9
+
12
10
  "default locale": "en_US",
13
-
11
+
14
12
  "left offset": 150,
15
13
  "top offset": 0,
16
14
  "column width": 8,
17
15
  "row height": 20,
18
-
16
+
19
17
  "extra textbox width": 4,
20
-
18
+
21
19
  "button type": "styled button",
22
20
  "button style": "Ice Blue",
23
21
  "button width": 100,
@@ -27,13 +25,13 @@ pui.cnv.themes.add({
27
25
  "buttons per row": 1,
28
26
  "add submit button": true,
29
27
  "buttons start at the top": true,
30
-
28
+
31
29
  "show fkey name": false,
32
30
  "show fkey text": true,
33
31
  "page down text": "Next Page",
34
32
  "page up text": "Previous Page",
35
33
  "allow field exit": false,
36
-
34
+
37
35
  "grid": {
38
36
  "properties": {
39
37
  "header height": "20",
@@ -43,19 +41,19 @@ pui.cnv.themes.add({
43
41
  "top offset": 1,
44
42
  "left offset": 5,
45
43
  "extra width": 35,
46
- "header rows": "auto", // can be a numeric value or "auto"
44
+ "header rows": "auto", // can be a numeric value or "auto"
47
45
  "merge headings": false,
48
46
  "set heading font": true,
49
47
  "show options as dropdown": true,
50
48
  "single row zoom": true,
51
49
  "header field class": "enhanced-subfile-heading"
52
50
  },
53
-
51
+
54
52
  "remove option labels": true,
55
53
  "remove fkey labels": true,
56
-
54
+
57
55
  "top line class": "top-line",
58
-
56
+
59
57
  "items": [
60
58
  {
61
59
  "id": "ActionsPanel",
@@ -85,7 +83,7 @@ pui.cnv.themes.add({
85
83
  "locked in place": "true"
86
84
  }
87
85
  ],
88
-
86
+
89
87
  "windows": {
90
88
  "panel style": "Modern Dialog",
91
89
  "title text align": "center",
@@ -97,8 +95,7 @@ pui.cnv.themes.add({
97
95
  "button width": 80,
98
96
  "horizontal button spacing": 10,
99
97
  "vertical button spacing": 10,
100
- "buttons per row": "auto" // determined automatically based on the width of the window
98
+ "buttons per row": "auto" // determined automatically based on the width of the window
101
99
  }
102
-
103
- });
104
100
 
101
+ });
@@ -1,23 +1,21 @@
1
-
2
-
3
1
  pui.cnv.themes.add({
4
2
  "name": "Hybrid",
5
-
3
+
6
4
  "input css class": "hybrid-input",
7
5
  "constant css class": "hybrid-constant",
8
6
  "output field css class": "hybrid-output-field",
9
-
7
+
10
8
  "css class prefix": "",
11
-
9
+
12
10
  "default locale": "en_US",
13
-
11
+
14
12
  "left offset": 190,
15
13
  "top offset": -15,
16
14
  "column width": 8,
17
15
  "row height": 20,
18
-
16
+
19
17
  "extra textbox width": 4,
20
-
18
+
21
19
  "button type": "hyperlink",
22
20
  "button css class": "hybrid-link",
23
21
  "button top": 70,
@@ -36,7 +34,7 @@ pui.cnv.themes.add({
36
34
  "page down text": "Next Page",
37
35
  "page up text": "Previous Page",
38
36
  "allow field exit": false,
39
-
37
+
40
38
  "grid": {
41
39
  "properties": {
42
40
  "header height": "20",
@@ -46,19 +44,19 @@ pui.cnv.themes.add({
46
44
  "top offset": 1,
47
45
  "left offset": 5,
48
46
  "extra width": 35,
49
- "header rows": "auto", // can be a numeric value or "auto"
47
+ "header rows": "auto", // can be a numeric value or "auto"
50
48
  "merge headings": true,
51
49
  "set heading font": true,
52
50
  "show options as dropdown": false,
53
51
  "single row zoom": true,
54
52
  "header field class": "hybrid-subfile-heading"
55
53
  },
56
-
54
+
57
55
  "remove option labels": true,
58
56
  "remove fkey labels": true,
59
-
57
+
60
58
  "top line class": "top-line",
61
-
59
+
62
60
  "items": [
63
61
  {
64
62
  "id": "ActionsPanel",
@@ -88,7 +86,7 @@ pui.cnv.themes.add({
88
86
  "css class 2": "stationary"
89
87
  }
90
88
  ],
91
-
89
+
92
90
  "windows": {
93
91
  "panel style": "Sapphire",
94
92
  "title text align": "center",
@@ -102,8 +100,7 @@ pui.cnv.themes.add({
102
100
  "button width": 80,
103
101
  "horizontal button spacing": 10,
104
102
  "vertical button spacing": 10,
105
- "buttons per row": "auto" // determined automatically based on the width of the window
103
+ "buttons per row": "auto" // determined automatically based on the width of the window
106
104
  }
107
-
108
- });
109
105
 
106
+ });
@@ -1,21 +1,19 @@
1
-
2
-
3
1
  pui.cnv.themes.add({
4
2
  "name": "Standard",
5
-
3
+
6
4
  "css class prefix": "",
7
-
5
+
8
6
  "default locale": "en_US",
9
-
7
+
10
8
  "left offset": 120,
11
9
  "top offset": 0,
12
10
  "column width": 8,
13
11
  "row height": 20,
14
-
12
+
15
13
  "extra textbox width": 4,
16
-
14
+
17
15
  "default font family": "Consolas,Monospace",
18
-
16
+
19
17
  "button type": "button",
20
18
  "button width": 100,
21
19
  "button css class": "button",
@@ -24,13 +22,13 @@ pui.cnv.themes.add({
24
22
  "buttons per row": 1,
25
23
  "add submit button": true,
26
24
  "buttons start at the top": true,
27
-
25
+
28
26
  "show fkey name": false,
29
27
  "show fkey text": true,
30
28
  "page down text": "Next Page",
31
29
  "page up text": "Previous Page",
32
30
  "allow field exit": false,
33
-
31
+
34
32
  "grid": {
35
33
  "properties": {
36
34
  "header height": "20",
@@ -40,16 +38,16 @@ pui.cnv.themes.add({
40
38
  "top offset": 1,
41
39
  "left offset": 5,
42
40
  "extra width": 35,
43
- "header rows": 0, // can be a numeric value or "auto"
41
+ "header rows": 0, // can be a numeric value or "auto"
44
42
  "merge headings": false,
45
43
  "set heading font": false,
46
44
  "show options as dropdown": false,
47
45
  "single row zoom": true
48
46
  },
49
-
47
+
50
48
  "remove option labels": true,
51
49
  "remove fkey labels": true,
52
-
50
+
53
51
  "windows": {
54
52
  "panel style": "Classic Dialog",
55
53
  "title text align": "left",
@@ -61,8 +59,7 @@ pui.cnv.themes.add({
61
59
  "button width": 80,
62
60
  "horizontal button spacing": 10,
63
61
  "vertical button spacing": 10,
64
- "buttons per row": "auto" // determined automatically based on the width of the window
62
+ "buttons per row": "auto" // determined automatically based on the width of the window
65
63
  }
66
64
 
67
65
  });
68
-
@@ -1,17 +1,15 @@
1
-
2
-
3
1
  // Example - creating a custom widget
4
2
 
5
3
  pui.widgets.add({
6
4
  // widget name - this is placed into the standard "field type" property
7
5
  name: "google maps",
8
-
6
+
9
7
  // the default id prefix - used to assign id's when the element is first created
10
8
  newId: "Map",
11
-
9
+
12
10
  // pull-down menu name
13
11
  menuName: "Google Maps Widget",
14
-
12
+
15
13
  // default properties for the widget
16
14
  defaults: {
17
15
  "width": "400px",
@@ -19,23 +17,23 @@ pui.widgets.add({
19
17
  "z index": "25",
20
18
  "background color": "#FFFFFF"
21
19
  },
22
-
20
+
23
21
  // property setter functions
24
22
  propertySetters: {
25
-
26
- // this will fire when the field type property is set to "google maps"
23
+
24
+ // this will fire when the field type property is set to "google maps"
27
25
  // initialization code for the element should go here
28
26
  "field type": function(parms) {
29
27
  if (parms.design) {
30
28
  // design mode content creation code goes here
31
29
  // add preview image
32
- var img = document.createElement("img");
30
+ const img = document.createElement("img");
33
31
  img.src = "/profoundui/proddata/images/GoogleMaps.jpg";
34
32
  img.style.position = "absolute";
35
33
  img.style.left = "0px";
36
34
  img.style.top = "0px";
37
- //img.style.width = parms.dom.style.width;
38
- //img.style.height = parms.dom.style.height;
35
+ // img.style.width = parms.dom.style.width;
36
+ // img.style.height = parms.dom.style.height;
39
37
  img.style.width = "100%";
40
38
  img.style.height = "100%";
41
39
  parms.dom.appendChild(img);
@@ -47,93 +45,79 @@ pui.widgets.add({
47
45
  parms.dom.innerHTML = "";
48
46
  // get url property - evalProperty will evaluate any js expressions that may have been used to build the property
49
47
  address = parms.evalProperty("google maps address");
50
- // populate the widget's dom element
48
+ // populate the widget's dom element
51
49
  if (address == null || address == "") {
52
50
  parms.dom.innerHTML = "Google Maps Address property not specified.";
53
51
  }
54
52
  else {
55
53
  // here, we build an iframe element and put it into the dom
56
- var url = document.location.protocol + "//maps.google.com/maps?hl=enl&q=" + encodeURIComponent(address) + "&ie=UTF8&hq=&hnear=" + encodeURIComponent(address) + "&output=embed";
57
- var html = '<iframe src="' + url;
54
+ const url = document.location.protocol + "//maps.google.com/maps?hl=enl&amp;q=" + encodeURIComponent(address) + "&amp;ie=UTF8&amp;hq=&amp;hnear=" + encodeURIComponent(address) + "&amp;output=embed";
55
+ let html = '<iframe src="' + url;
58
56
  html += '" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"" width="100%" height="100%">';
59
57
  parms.dom.innerHTML = html;
60
58
  }
61
59
  }
62
60
  },
63
61
  "visibility": function(parms) {
64
-
65
62
  if (!parms.design) {
66
-
67
- var iframe = parms.dom.getElementsByTagName("iframe");
63
+ let iframe = parms.dom.getElementsByTagName("iframe");
68
64
  if (iframe && iframe.length == 1) {
69
-
70
65
  iframe = iframe[0];
71
66
  if (parms.value == "hidden") {
72
-
73
67
  iframe.style.visibility = "hidden";
74
68
  iframe.style.display = "none";
75
-
76
69
  }
77
70
  else {
78
-
79
71
  iframe.style.visibility = "";
80
72
  iframe.style.display = "";
81
-
82
73
  }
83
-
84
74
  }
85
-
86
75
  }
87
- }
76
+ }
88
77
  }
89
-
90
- });
91
78
 
79
+ });
92
80
 
93
81
  // the widget will already have prebuilt standard properties relating to css attributes, js events, etc.
94
82
  // here, we can add additional custom properties
95
83
  pui.addCustomProperty({
96
84
  // property name
97
- name: "google maps address",
98
-
85
+ name: "google maps address",
86
+
99
87
  // optional type of input
100
88
  // "long" specifies that the text can be long, and an exta text area prompt box is added
101
89
  // other types include: "color", "boolean", "image", "list", "js", "file", and "field"
102
- type: "long",
103
-
90
+ type: "long",
91
+
104
92
  // help text appears at the bottom of the properties window
105
- help: "Specifies the full address to be mapped within Google Maps.",
106
-
93
+ help: "Specifies the full address to be mapped within Google Maps.",
94
+
107
95
  // array of widget elements that this property is applicable to
108
96
  controls: ["google maps"],
109
-
97
+
110
98
  // properties are categorized in the properties window
111
99
  // if the specified category doesn't already exist, it will be created
112
100
  category: "Field Settings"
113
101
  });
114
102
 
115
-
116
103
  // Now, we add an entry to the left-hand side Widgets Toolbox
117
104
  // More than one entry can be added for the same base widget - this would makes sense if we vary default properties
118
105
  pui.toolbox.add({
119
106
  // specifies category - this can be an existing category or a new one
120
107
  // if the category does not exist, it is created on the fly
121
108
  category: "Custom Widgets",
122
-
109
+
123
110
  widget: "google maps",
124
111
  text: "Google Maps Widget",
125
112
  icon: "/profoundui/proddata/images/icons/google_maps.png",
126
-
113
+
127
114
  // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
128
115
  proxyHeight: 302,
129
116
  proxyWidth: 402,
130
117
  proxyHTML: '<img src="/profoundui/proddata/images/GoogleMaps.jpg" style="width: 400px; height: 300px;">',
131
118
 
132
-
133
119
  // additional default property values can be specified here
134
120
  defaults: {
135
- }
136
-
137
- });
138
-
121
+ }
139
122
 
123
+ });
@@ -1,27 +1,24 @@
1
-
2
-
3
1
  // Example - creating a custom widget based on an existing one
4
2
  // In this example, we create a list box ("select box" field type) with modified default properties
5
3
 
6
-
7
4
  // Add an entry to the Widgets Toolbox
8
5
  pui.toolbox.add({
9
6
  // specifies category - this can be an existing category or a new one
10
7
  // if the category does not exist, it is created on the fly
11
8
  category: "Custom Widgets",
12
-
9
+
13
10
  // the widget parameter determines the "field type" property of an element
14
11
  widget: "select box",
15
-
12
+
16
13
  text: "Custom List Box",
17
14
  icon: "/profoundui/proddata/images/icons/list_box.png",
18
-
15
+
19
16
  // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
20
17
  // in this case, an image of the tab panel is used
21
18
  proxyHeight: 86,
22
19
  proxyWidth: 150,
23
20
  proxyHTML: '<select size="5" style="font-family: Sans-Serif; width: 150px; color: #666666; background-color: #FAE4AA; font-size: 12px"><option>Choice 1</option><option>Choice 2</option><option>Choice 3</option><option>Choice 4</option><option>Choice 5</option></select>',
24
-
21
+
25
22
  // any property of a "select box" can be specified here
26
23
  defaults: {
27
24
  "select box height": "5",
@@ -31,7 +28,6 @@ pui.toolbox.add({
31
28
  "choices": "Choice 1,Choice 2,Choice 3,Choice 4,Choice 5",
32
29
  "font family": "Sans-Serif",
33
30
  "font size": "12px"
34
- }
35
-
36
- });
31
+ }
37
32
 
33
+ });
@@ -1,74 +1,65 @@
1
-
2
-
3
1
  // Example - creating a custom panel or dialog
4
2
 
5
3
  // Note: panels and dialogs are the same type of element
6
4
  // dialogs use a different set of corner/border images to make them look like a dialog
7
5
 
8
-
9
6
  // Add a new panel style
10
7
  // This will appear as an option in the "tab panel style" property of a panel
11
8
  pui.widgets.panelStyles["Custom Panel"] = {
12
9
  // width of the left side of the panel (should match the width of the images provided in the /images/panels/ folder)
13
10
  left: 10,
14
-
11
+
15
12
  // width of the right side of the panel (should match the width of the images provided in the /images/panels/ folder)
16
13
  right: 10,
17
-
14
+
18
15
  // height of the top side of the panel, including title bar if this is a dialog (should match the height of the images provided in the /images/panels/ folder)
19
16
  top: 33,
20
-
17
+
21
18
  // height of the bottom side of the panel (should match the height of the images provided in the /images/panels/ folder)
22
19
  bottom: 9,
23
-
20
+
24
21
  // panel's background color
25
22
  background: "#f0b310",
26
-
23
+
27
24
  // panel title font color
28
25
  textColor: "#000000",
29
-
26
+
30
27
  // background color of the panel title edit box in the designer
31
28
  textBackground: "#f6d47a",
32
-
29
+
33
30
  // top padding in pixels for the panel title
34
31
  textTopPadding: "7px"
35
-
36
-
37
- // optional parameters...
38
- //textAlign: // title alignment
39
- //fontSize: // title font size
40
- //noTitle: // true or false
41
- //width: // override default width
42
- //height: // override default height
43
- //dialog: // true or false
44
- }
45
-
46
-
47
32
 
33
+ // optional parameters...
34
+ // textAlign: // title alignment
35
+ // fontSize: // title font size
36
+ // noTitle: // true or false
37
+ // width: // override default width
38
+ // height: // override default height
39
+ // dialog: // true or false
40
+ };
48
41
 
49
42
  // Now, add an entry to the Widgets Toolbox
50
43
  pui.toolbox.add({
51
44
  // specifies category - this can be an existing category or a new one
52
45
  // if the category does not exist, it is created on the fly
53
46
  category: "Custom Widgets",
54
-
47
+
55
48
  widget: "panel",
56
49
  text: "Custom Panel",
57
50
  icon: "/profoundui/proddata/images/panels/Custom Panel/icon.png",
58
-
51
+
59
52
  // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
60
53
  proxyHeight: 100,
61
54
  proxyWidth: 200,
62
55
  proxyHTML: function(defaults) {
63
56
  return pui.widgets.getPanelProxy(defaults);
64
57
  },
65
-
58
+
66
59
  // additional default property values can be specified here
67
60
  defaults: {
68
61
  "panel style": "Custom Panel",
69
62
  "color": "#000000"
70
- }
71
-
72
- });
73
-
63
+ }
74
64
 
65
+ });
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  // Example - creating a gradient / styled button
4
2
 
5
3
  // Add a new button style
@@ -9,63 +7,58 @@ pui.widgets.buttonStyles["Custom Button"] = {
9
7
 
10
8
  // width of the left side of the button (should match the width of the images provided in the /images/buttons/ folder)
11
9
  left: 23,
12
-
13
- // width of the right side of the button (should match the width of the images provided in the /images/buttons/ folder)
10
+
11
+ // width of the right side of the button (should match the width of the images provided in the /images/buttons/ folder)
14
12
  right: 23,
15
-
13
+
16
14
  // height of the top side of the button (should match the height of the images provided in the /images/buttons/ folder)
17
15
  top: 10,
18
-
16
+
19
17
  // height of the bottom side of the button (should match the height of the images provided in the /images/buttons/ folder)
20
18
  bottom: 10,
21
-
19
+
22
20
  // determines if the button has a separate set of images for when the user hovers the mouse over it
23
21
  hasOverState: false,
24
-
22
+
25
23
  // determines if the button has a separate set of images for when the user clicks it
26
24
  hasClickState: false,
27
-
25
+
28
26
  // color of text within the button
29
27
  textColor: "#000000",
30
-
31
- // edit box background color used in inline editing within the visual designer
28
+
29
+ // edit box background color used in inline editing within the visual designer
32
30
  editBackgroundColor: "#eca430",
33
-
31
+
34
32
  // default button width
35
33
  width: 125
36
-
37
- // optional parameters...
38
- //clickStateIsNormalState: // set to true if the click state images are the same as the normal state images
39
- //hiColor: // highlight color
40
- }
41
-
42
-
43
34
 
35
+ // optional parameters...
36
+ // clickStateIsNormalState: // set to true if the click state images are the same as the normal state images
37
+ // hiColor: // highlight color
38
+ };
44
39
 
45
40
  // Now, add an entry to the Widgets Toolbox
46
41
  pui.toolbox.add({
47
42
  // specifies category - this can be an existing category or a new one
48
43
  // if the category does not exist, it is created on the fly
49
44
  category: "Custom Widgets",
50
-
45
+
51
46
  widget: "styled button",
52
47
  text: "Custom Styled Button",
53
48
  icon: "/profoundui/proddata/images/buttons/Custom Button/icon.png",
54
-
49
+
55
50
  // this determines the look of the drag/drop proxy as we drag the widget element off the toolbox
56
51
  proxyHeight: 23,
57
52
  proxyWidth: 125,
58
53
  proxyHTML: function(defaults) {
59
54
  return pui.widgets.getStyledButtonProxy(defaults);
60
55
  },
61
-
56
+
62
57
  // additional default property values can be specified here
63
58
  defaults: {
64
59
  "button style": "Custom Button",
65
60
  "width": "125px",
66
61
  "color": "#000000"
67
- }
68
-
69
- });
70
-
62
+ }
71
63
 
64
+ });