3 ESLINT ?
= $(if
$(shell command
-v pve-eslint
), pve-eslint
, eslint
)
5 SUBDIRS
= css images proxmox-dark
7 # bundle it for now from the libjs-marked debian package to avoid touching our proxies file mapper,
8 # we could also just ship a link to the packages file and load from same path as the widget-toolkit
9 MARKEDJS
=/usr
/share
/javascript
/marked
/marked.js
18 data
/reader
/JsonObject.js \
19 data
/ProxmoxProxy.js \
24 data
/TimezoneStore.js \
25 data
/model
/NotificationConfig.js \
27 data
/model
/Certificates.js \
29 form
/BandwidthSelector.js \
32 form
/IntegerField.js \
35 form
/DateTimeField.js \
38 form
/LanguageSelector.js \
40 form
/RRDTypeSelector.js \
41 form
/BondModeSelector.js \
42 form
/NetworkSelector.js \
43 form
/RealmComboBox.js \
44 form
/PruneKeepField.js \
45 form
/RoleSelector.js \
46 form
/DiskSelector.js \
47 form
/MultiDiskSelector.js \
48 form
/TaskTypeSelector.js \
50 form
/UserSelector.js \
51 form
/ThemeSelector.js \
54 button
/HelpButton.js \
56 grid
/PendingObjectGrid.js \
63 panel
/NodeInfoRepoStatus.js \
64 panel
/NotificationConfigView.js \
65 panel
/JournalView.js \
66 panel
/PermissionView.js \
67 panel
/PruneKeepPanel.js \
69 panel
/GaugeWidget.js \
70 panel
/GotifyEditPanel.js \
71 panel
/Certificates.js \
72 panel
/ACMEAccount.js \
74 panel
/ACMEDomains.js \
75 panel
/EmailRecipientPanel.js \
76 panel
/SendmailEditPanel.js \
77 panel
/SmtpEditPanel.js \
82 window
/PasswordEdit.js \
83 window
/SafeDestroy.js \
84 window
/PackageVersions.js \
85 window
/TaskViewer.js \
86 window
/LanguageEdit.js \
89 window
/Certificates.js \
90 window
/ACMEAccount.js \
91 window
/ACMEPluginEdit.js \
92 window
/ACMEDomains.js \
93 window
/EndpointEditBase.js \
94 window
/NotificationMatcherEdit.js \
95 window
/FileBrowser.js \
96 window
/AuthEditBase.js \
97 window
/AuthEditOpenId.js \
98 window
/AuthEditLDAP.js \
99 window
/AuthEditAD.js \
100 window
/TfaWindow.js \
101 window
/AddTfaRecovery.js \
103 window
/AddWebauthn.js \
104 window
/AddYubico.js \
106 window
/NotesEdit.js \
107 window
/ThemeEdit.js \
108 window
/SyncWindow.js \
110 node
/APTRepositories.js \
111 node
/NetworkEdit.js \
112 node
/NetworkView.js \
117 node
/ServiceView.js \
122 set
-e
&& for i in
$(SUBDIRS
); do
$(MAKE
) -C
$$i; done
124 .lint-incremental
: $(JSSRC
)
130 $(ESLINT
) --strict api-viewer
/APIViewer.js
132 $(ESLINT
) --strict
$(JSSRC
)
133 touch
".lint-incremental"
135 BUILD_TIME
=$(or
$(SOURCE_DATE_EPOCH
),$(shell date
'+%s.%N'))
136 BUILD_VERSION
=$(or
$(DEB_VERSION
),$(shell git rev-parse HEAD
),unknown version
)
137 proxmoxlib.js
: .lint-incremental
$(JSSRC
)
138 # add the version as comment in the file
139 echo
"// v$(BUILD_VERSION)-t$(BUILD_TIME)" > $@.tmp
140 cat
$(JSSRC
) $(MARKEDJS
) >> $@.tmp
143 proxmoxlib.min.js
: proxmoxlib.js
144 uglifyjs
$< -c
-m
-o
$@.tmp
147 install: proxmoxlib.js proxmoxlib.min.js
148 install -d
-m
755 $(WWWBASEDIR
)
149 install -m
0644 proxmoxlib.js proxmoxlib.min.js
$(WWWBASEDIR
)
150 set
-e
&& for i in
$(SUBDIRS
); do
$(MAKE
) -C
$$i $@
; done
154 $(MAKE
) -C proxmox-dark
$@
155 rm -f proxmoxlib.js
* proxmoxlib.min.js
* .lint-incremental