lesli_assets 0.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.
Files changed (114) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +3 -0
  3. data/app/assets/config/lesli_assets_manifest.js +9 -0
  4. data/app/assets/fonts/lesli_assets/Domine/Domine-Variable.ttf +0 -0
  5. data/app/assets/fonts/lesli_assets/Domine/OFL.txt +97 -0
  6. data/app/assets/fonts/lesli_assets/MaterialDesign/icons.woff2 +0 -0
  7. data/app/assets/fonts/lesli_assets/Montserrat/Montserrat-Variable.ttf +0 -0
  8. data/app/assets/fonts/lesli_assets/OpenSans/OpenSans-Variable.ttf +0 -0
  9. data/app/assets/fonts/lesli_assets/Remix/remixicon.eot +0 -0
  10. data/app/assets/fonts/lesli_assets/Remix/remixicon.glyph.json +1 -0
  11. data/app/assets/fonts/lesli_assets/Remix/remixicon.svg +9196 -0
  12. data/app/assets/fonts/lesli_assets/Remix/remixicon.symbol.svg +11 -0
  13. data/app/assets/fonts/lesli_assets/Remix/remixicon.ttf +0 -0
  14. data/app/assets/fonts/lesli_assets/Remix/remixicon.woff +0 -0
  15. data/app/assets/fonts/lesli_assets/Remix/remixicon.woff2 +0 -0
  16. data/app/assets/fonts/lesli_assets/Roboto/LICENSE.txt +202 -0
  17. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Black.ttf +0 -0
  18. data/app/assets/fonts/lesli_assets/Roboto/Roboto-BlackItalic.ttf +0 -0
  19. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Bold.ttf +0 -0
  20. data/app/assets/fonts/lesli_assets/Roboto/Roboto-BoldItalic.ttf +0 -0
  21. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Italic.ttf +0 -0
  22. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Light.ttf +0 -0
  23. data/app/assets/fonts/lesli_assets/Roboto/Roboto-LightItalic.ttf +0 -0
  24. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Medium.ttf +0 -0
  25. data/app/assets/fonts/lesli_assets/Roboto/Roboto-MediumItalic.ttf +0 -0
  26. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Regular.ttf +0 -0
  27. data/app/assets/fonts/lesli_assets/Roboto/Roboto-Thin.ttf +0 -0
  28. data/app/assets/fonts/lesli_assets/Roboto/Roboto-ThinItalic.ttf +0 -0
  29. data/app/assets/icons/lesli_assets/engine-admin.svg +1 -0
  30. data/app/assets/icons/lesli_assets/engine-audit.svg +1 -0
  31. data/app/assets/icons/lesli_assets/engine-babel.svg +1 -0
  32. data/app/assets/icons/lesli_assets/engine-bell.svg +1 -0
  33. data/app/assets/icons/lesli_assets/engine-books.svg +1 -0
  34. data/app/assets/icons/lesli_assets/engine-calendar.svg +1 -0
  35. data/app/assets/icons/lesli_assets/engine-dashboard.svg +1 -0
  36. data/app/assets/icons/lesli_assets/engine-dispatcher.svg +1 -0
  37. data/app/assets/icons/lesli_assets/engine-focus.svg +1 -0
  38. data/app/assets/icons/lesli_assets/engine-kb.svg +1 -0
  39. data/app/assets/icons/lesli_assets/engine-leaf.svg +1 -0
  40. data/app/assets/icons/lesli_assets/engine-lesli.svg +1 -0
  41. data/app/assets/icons/lesli_assets/engine-letter.svg +1 -0
  42. data/app/assets/icons/lesli_assets/engine-mailer.svg +1 -0
  43. data/app/assets/icons/lesli_assets/engine-one.svg +1 -0
  44. data/app/assets/icons/lesli_assets/engine-papers.svg +1 -0
  45. data/app/assets/icons/lesli_assets/engine-profile.svg +1 -0
  46. data/app/assets/icons/lesli_assets/engine-proposal.svg +1 -0
  47. data/app/assets/icons/lesli_assets/engine-scraper.svg +1 -0
  48. data/app/assets/icons/lesli_assets/engine-security.svg +1 -0
  49. data/app/assets/icons/lesli_assets/engine-shared.svg +1 -0
  50. data/app/assets/icons/lesli_assets/engine-shield.svg +1 -0
  51. data/app/assets/icons/lesli_assets/engine-storage.svg +1 -0
  52. data/app/assets/icons/lesli_assets/engine-support.svg +1 -0
  53. data/app/assets/icons/lesli_assets/engine-talk.svg +1 -0
  54. data/app/assets/icons/lesli_assets/engine-team.svg +1 -0
  55. data/app/assets/icons/lesli_assets/engine-time.svg +1 -0
  56. data/app/assets/icons/lesli_assets/gem-assets.svg +1 -0
  57. data/app/assets/icons/lesli_assets/gem-css.svg +1 -0
  58. data/app/assets/icons/lesli_assets/gem-date.svg +1 -0
  59. data/app/assets/icons/lesli_assets/gem-system.svg +1 -0
  60. data/app/assets/icons/lesli_assets/gem-view.svg +1 -0
  61. data/app/assets/icons/lesli_assets/locale-en.svg +1 -0
  62. data/app/assets/icons/lesli_assets/locale-es.svg +1 -0
  63. data/app/assets/icons/lesli_assets/locale-fr.svg +1 -0
  64. data/app/assets/icons/lesli_assets/locale-it.svg +1 -0
  65. data/app/assets/icons/lesli_assets/locale-pt.svg +1 -0
  66. data/app/assets/icons/readme.md +15 -0
  67. data/app/assets/images/assets-logo.svg +1 -0
  68. data/app/assets/javascripts/lesli_assets/application.js +1111 -0
  69. data/app/assets/stylesheets/lesli_assets/templates/application.css +28819 -0
  70. data/app/assets/stylesheets/lesli_assets/templates/public.css +15578 -0
  71. data/app/assets/stylesheets/lesli_assets/templates/start.css +5634 -0
  72. data/app/views/lesli_assets/partials/_application-lesli-icons.html.erb +1 -0
  73. data/lib/lesli_assets/engine.rb +9 -0
  74. data/lib/lesli_assets/version.rb +4 -0
  75. data/lib/lesli_assets.rb +6 -0
  76. data/lib/lesli_assets_alpine/application.js +60 -0
  77. data/lib/lesli_assets_alpine/debug.js +198 -0
  78. data/lib/lesli_assets_bulma/fonts/families.scss +47 -0
  79. data/lib/lesli_assets_bulma/fonts/mdicons.scss +82 -0
  80. data/lib/lesli_assets_bulma/fonts/remixicons.scss +3083 -0
  81. data/lib/lesli_assets_bulma/helpers/display.scss +44 -0
  82. data/lib/lesli_assets_bulma/helpers/tooltip.scss +91 -0
  83. data/lib/lesli_assets_bulma/layouts/application-app.scss +36 -0
  84. data/lib/lesli_assets_bulma/layouts/application-component.scss +39 -0
  85. data/lib/lesli_assets_bulma/layouts/application-container.scss +36 -0
  86. data/lib/lesli_assets_bulma/layouts/application-engines.scss +108 -0
  87. data/lib/lesli_assets_bulma/layouts/application-header.scss +94 -0
  88. data/lib/lesli_assets_bulma/layouts/application-navigation.scss +93 -0
  89. data/lib/lesli_assets_bulma/layouts/application-notification.scss +24 -0
  90. data/lib/lesli_assets_bulma/layouts/application-sidebar.scss +93 -0
  91. data/lib/lesli_assets_bulma/pages/devise-simple.scss +89 -0
  92. data/lib/lesli_assets_bulma/pages/devise.scss +164 -0
  93. data/lib/lesli_assets_bulma/pages/invites.scss +81 -0
  94. data/lib/lesli_assets_bulma/panels/panel-announcements.scss +56 -0
  95. data/lib/lesli_assets_bulma/panels/panel-notification.scss +67 -0
  96. data/lib/lesli_assets_bulma/panels/panel-profile.scss +62 -0
  97. data/lib/lesli_assets_bulma/panels/panel-support-ticket.scss +56 -0
  98. data/lib/lesli_assets_bulma/panels/panel-tasks.scss +41 -0
  99. data/lib/lesli_assets_bulma/settings/variables.scss +150 -0
  100. data/lib/lesli_assets_bulma/shared/workflow-status-progress.scss +135 -0
  101. data/lib/lesli_assets_bulma/templates/application.scss +88 -0
  102. data/lib/lesli_assets_bulma/templates/component.scss +39 -0
  103. data/lib/lesli_assets_bulma/templates/dashboards.scss +51 -0
  104. data/lib/lesli_assets_bulma/templates/empty.scss +42 -0
  105. data/lib/lesli_assets_bulma/templates/pdf.scss +45 -0
  106. data/lib/lesli_assets_bulma/templates/public.scss +53 -0
  107. data/lib/lesli_assets_bulma/templates/start.scss +53 -0
  108. data/lib/lesli_assets_tailwind/tailwind.app.css +11 -0
  109. data/lib/lesli_assets_tailwind/tailwind.config.js +10 -0
  110. data/lib/lesli_assets_tailwind/tailwind.test.html +19 -0
  111. data/lib/tasks/lesli_assets_tasks.rake +4 -0
  112. data/license +674 -0
  113. data/readme.md +69 -0
  114. metadata +161 -0
@@ -0,0 +1,198 @@
1
+ // ·
2
+
3
+ import dayjs from "dayjs";
4
+
5
+ class LesliDebug {
6
+
7
+ m(message, modulo=null, level=null) {
8
+ return this.#buildMessage(message, modulo, level)
9
+ }
10
+
11
+ // · write information message
12
+ log(message, modulo = null) {
13
+ console.log(this.#buildMessage(message, modulo, "log"))
14
+ }
15
+
16
+ // · write information message
17
+ msg(message, modulo = null) {
18
+ console.log(this.#buildMessage(message, modulo, "msg"))
19
+ }
20
+
21
+ // · write informatie message
22
+ info(message, modulo = null) {
23
+ console.info("%c"+this.#buildMessage(message, modulo, "info"), this.#stylesForBrowser("info"))
24
+ }
25
+
26
+ // · write success message
27
+ success(message, modulo = null) {
28
+ console.log(this.#buildMessage(message, modulo, "msg"))
29
+ }
30
+
31
+ // · write warning message
32
+ warn(message, modulo = null) {
33
+ console.warn("%c"+this.#buildMessage(message, modulo, "warn"), this.#stylesForBrowser("warn"))
34
+ }
35
+
36
+ // · write warning message
37
+ error(message, modulo = null) {
38
+ console.error("%c"+this.#buildMessage(message, modulo, "error"), this.#stylesForBrowser("error"))
39
+ }
40
+
41
+ // · write warning message
42
+ fatal(message, modulo = null) {
43
+ console.error("%c"+this.#buildMessage(message, modulo, "error"), this.#stylesForBrowser("fatal"))
44
+ }
45
+
46
+ // ·
47
+ hr(size=10) {
48
+ console.log('-·- '.repeat(size))
49
+ }
50
+
51
+ // ·
52
+ br(size=1) {
53
+ console.log('')
54
+ }
55
+
56
+ message(title, messages, more_information=null) {
57
+
58
+ console.log("%c"+title, "color:#3689e6;font-size:35px;font-weight:600;line-height:1;")
59
+
60
+ if (typeof messages === "string") messages = [ messages ]
61
+
62
+ console.log("%c"+messages.join("\n"), "background-color:#ffffff;color:#1a1a1a;font-size:18px;font-weight:400;line-height:1.1;")
63
+
64
+ if (more_information) {
65
+ console.log("%c"+more_information, "background-color:#ffffff;color:#1a1a1a;font-size:14px;font-weight:400;line-height:2;")
66
+ }
67
+
68
+ }
69
+
70
+ lesli_message_warning(title="LESLI", support="For mor information contact your system administrator") {
71
+ this.message(title, [
72
+ "This is a browser feature intended for developers.",
73
+ "For security reasons, DO NOT copy or paste any information, text, or code here."
74
+ ], support)
75
+ }
76
+
77
+ // ·
78
+ pp (data, level = 1) {
79
+
80
+ let isArray = Array.isArray(data);
81
+
82
+ let comma = ","
83
+ let string = ""
84
+ let padding_key = ""
85
+ let padding_prop = ""
86
+ let newline = "\n"
87
+
88
+ for(let i=0;i<(4*level);i++) {
89
+ padding_prop += " "
90
+ }
91
+
92
+ if (level > 1) {
93
+ padding_key = padding_prop.slice(0, padding_prop.length - 4)
94
+ }
95
+
96
+ if (typeof data == "object" && !Array.isArray(data)) {
97
+
98
+ string += padding_key + "{" + newline
99
+
100
+ for(let property in data) {
101
+
102
+ if (typeof data[property] == "object") {
103
+ string += padding_prop + property + ": " + this.print_r(data[property], level+1) + comma + newline
104
+ } else {
105
+ string += padding_prop + property + ": " + data[property] + comma + newline
106
+ }
107
+
108
+ }
109
+
110
+ string += padding_key + "}"
111
+
112
+ }
113
+
114
+ if (typeof data == "object" && Array.isArray(data)) {
115
+
116
+ string += "[" + newline
117
+
118
+ for(let property in data) {
119
+
120
+ if (typeof data[property] == "object") {
121
+ string += this.print_r(data[property], level+1) + comma + newline
122
+ } else {
123
+ string += padding_prop + data[property] + newline
124
+ }
125
+
126
+ }
127
+
128
+ string += padding_key + "]"
129
+
130
+ }
131
+
132
+ // trying to remove last comma if is the end of object or array
133
+ //string = string.replace(/,\n/g, "0")
134
+
135
+ return string
136
+
137
+ }
138
+
139
+ #buildMessage(message, module, level) {
140
+
141
+ // desire output format
142
+ // [2010-01-17 11:43:37] [ERROR] (cheese module) - Cheese is too ripe!
143
+ // [2010-01-17 11:43:37] [FATAL] (cheese module) - Cheese was breeding ground for listeria.
144
+ let newMessage = `[${this.#buildDate()}] [${level.toUpperCase()}]`
145
+
146
+ if (module) {
147
+ newMessage += ` (${module})`
148
+ }
149
+
150
+ newMessage = newMessage.concat(" - ").concat(message)
151
+
152
+ return newMessage
153
+
154
+ }
155
+
156
+ #stylesForBrowser(type) {
157
+
158
+ let lineheight="1.5;"
159
+ let fontsize="14px;"
160
+ let padding="2px;"
161
+
162
+ let info = "background-color:#3498db;color:#ffffff;"
163
+ let warn = "background-color:#f1c40f;color:#000000;"
164
+ let error = "background-color:#e74c3c;color:#ffffff;"
165
+ let fatal = "background-color:#c0392b;color:#fff394;"
166
+ let success = "background-color:##48c774;color:#000000;"
167
+
168
+ let style = ""
169
+
170
+ switch (type) {
171
+ case "info": style = info; break;
172
+ case "warn": style = warn; break;
173
+ case "error": style = error; break;
174
+ case "fatal": style = fatal; break;
175
+ case "success": style = success; break;
176
+ }
177
+
178
+ style += "padding:" + padding
179
+ style += "font-size:" + fontsize
180
+ style += "line-height:" + lineheight
181
+
182
+ return style
183
+
184
+ }
185
+
186
+ // ·
187
+ #buildDate() {
188
+
189
+ return dayjs().format("MM/DD HH:mm").toString()
190
+
191
+ }
192
+
193
+ }
194
+
195
+ // ·
196
+ export function useLesliDebug() {
197
+ return new LesliDebug()
198
+ }
@@ -0,0 +1,47 @@
1
+ /*
2
+
3
+ Lesli
4
+
5
+ Copyright (c) 2023, Lesli Technologies, S. A.
6
+
7
+ This program is free software: you can redistribute it and/or modify
8
+ it under the terms of the GNU General Public License as published by
9
+ the Free Software Foundation, either version 3 of the License, or
10
+ (at your option) any later version.
11
+
12
+ This program is distributed in the hope that it will be useful,
13
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ GNU General Public License for more details.
16
+
17
+ You should have received a copy of the GNU General Public License
18
+ along with this program. If not, see http://www.gnu.org/licenses/.
19
+
20
+ Lesli · Ruby on Rails SaaS Development Framework.
21
+
22
+ Made with ♥ by https://www.lesli.tech
23
+ Building a better future, one line of code at a time.
24
+
25
+ @contact hello@lesli.tech
26
+ @website https://www.lesli.tech
27
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
28
+
29
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
30
+ // ·
31
+ */
32
+
33
+
34
+ // · Font family for titles
35
+ @font-face {
36
+ font-family: "Domine";
37
+ src: url("lesli_assets/Domine/Domine-Variable.ttf") format("truetype");
38
+ font-display: swap;
39
+ }
40
+
41
+
42
+ // · Font family for the body
43
+ @font-face {
44
+ font-family: "OpenSans";
45
+ src: url("lesli_assets/OpenSans/OpenSans-Variable.ttf") format("truetype");
46
+ font-display: swap;
47
+ }
@@ -0,0 +1,82 @@
1
+ /*
2
+
3
+ Lesli
4
+
5
+ Copyright (c) 2023, Lesli Technologies, S. A.
6
+
7
+ This program is free software: you can redistribute it and/or modify
8
+ it under the terms of the GNU General Public License as published by
9
+ the Free Software Foundation, either version 3 of the License, or
10
+ (at your option) any later version.
11
+
12
+ This program is distributed in the hope that it will be useful,
13
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ GNU General Public License for more details.
16
+
17
+ You should have received a copy of the GNU General Public License
18
+ along with this program. If not, see http://www.gnu.org/licenses/.
19
+
20
+ Lesli · Ruby on Rails SaaS Development Framework.
21
+
22
+ Made with ♥ by https://www.lesli.tech
23
+ Building a better future, one line of code at a time.
24
+
25
+ @contact hello@lesli.tech
26
+ @website https://www.lesli.tech
27
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
28
+
29
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
30
+ // ·
31
+ */
32
+
33
+
34
+ // · MaterialDesignIcons.com
35
+ @font-face {
36
+ font-family: 'Material Icons';
37
+ font-style: normal;
38
+ font-weight: 400;
39
+ src: url("lesli/MaterialDesign/icons.woff2") format('woff2');
40
+ }
41
+
42
+
43
+ // ·
44
+ .material-icons {
45
+ font-family: 'Material Icons';
46
+ font-weight: normal;
47
+ font-style: normal;
48
+ font-size: 20px; /* Preferred icon size */
49
+ display: inline-block;
50
+ line-height: 1;
51
+ text-transform: none;
52
+ letter-spacing: normal;
53
+ word-wrap: normal;
54
+ white-space: nowrap;
55
+ direction: ltr;
56
+
57
+ /* Support for all WebKit browsers. */
58
+ -webkit-font-smoothing: antialiased;
59
+ /* Support for Safari and Chrome. */
60
+ text-rendering: optimizeLegibility;
61
+
62
+ /* Support for Firefox. */
63
+ -moz-osx-font-smoothing: grayscale;
64
+
65
+ /* Support for IE. */
66
+ font-feature-settings: 'liga';
67
+ }
68
+
69
+
70
+ /* Rules for sizing the icon. */
71
+ .material-icons.md-18 { font-size: 18px; }
72
+ .material-icons.md-24 { font-size: 24px; }
73
+ .material-icons.md-36 { font-size: 36px; }
74
+ .material-icons.md-48 { font-size: 48px; }
75
+
76
+ /* Rules for using icons as black on a light background. */
77
+ .material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
78
+ .material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }
79
+
80
+ /* Rules for using icons as white on a dark background. */
81
+ .material-icons.md-light { color: rgba(255, 255, 255, 1); }
82
+ .material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }